Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.4.6
-
None
Description
The permissions of auth_pam_tool_dir and auth_pam_tool are wrong in MariaDB 10.4. These are used by version 2 of the pam plugin.
If you run mysqld with strace, then you can see the failure. For example, start mysqld:
mkdir strace
|
sudo strace -o ./strace/mysqld_strace.log -ff /usr/sbin/mysqld --user=mysql --datadir=/var/lib/mysql &
|
And then try to authenticate as an account that uses pam v2 (while using the workaround for MDEV-19807):
$ mysql -u alice --plugin-dir=/usr/lib64/mysql/plugin
|
ERROR 1045 (28000): Access denied for user 'alice'@'localhost' (using password: NO)
|
The strace output shows why this failed:
./strace/mysqld_strace.log.4451:execve("/usr/lib64/mysql/plugin/auth_pam_tool_dir/auth_pam_tool", ["/usr/lib64/mysql/plugin/auth_pam"...], [/* 17 vars */]) = -1 EACCES (Permission denied)
|
The problem seems to be with the permissions of the /usr/lib64/mysql/plugin/auth_pam_tool_dir/ directory:
$ sudo ls -ld /usr/lib64/mysql/plugin/auth_pam_tool_dir/
|
drwx------. 2 root root 27 Jun 22 02:43 /usr/lib64/mysql/plugin/auth_pam_tool_dir/
|
You can workaround this by executing the following:
sudo chmod 0755 /usr/lib64/mysql/plugin/auth_pam_tool_dir/
|
It looks like permissions of auth_pam_tool are also wrong:
$ sudo ls -l /usr/lib64/mysql/plugin/auth_pam_tool_dir/auth_pam_tool
|
-rwxr-xr-x. 1 root root 11248 Jun 17 23:57 /usr/lib64/mysql/plugin/auth_pam_tool_dir/auth_pam_tool
|
To workaround this, you need to add the setuid bit:
sudo chmod 4755 /usr/lib64/mysql/plugin/auth_pam_tool_dir/auth_pam_tool
|
Attachments
Issue Links
- causes
-
MDEV-20205 mysql_install_db shouldn't execute chown
- Closed
- is caused by
-
MDEV-7032 new pam plugin with a suid wrapper
- Closed
-
MDEV-15473 Isolate/sandbox PAM modules, so that they can't crash the server
- Closed
- relates to
-
MDEV-19850 per-plugin install/uninstall scriptlets
- Stalled
-
MDEV-19877 pam v2: auth_pam_tool input format is not user friendly for debugging
- Open
-
MDEV-19878 pam v2: pam password authentication doesn't work at all
- Closed
-
MDEV-19879 server can send empty error message to client with pam_use_cleartext_plugin
- Closed
-
MDEV-19880 pam v1: pam password authentication doesn't work at all in MariaDB 10.4
- Closed
-
MDEV-19881 pam plugin from MariaDB 10.3 doesn't work with MariaDB 10.4
- Open
-
MDEV-19807 MariaDB client plugin path is wrong
- Closed
-
MDEV-19882 pam v2: auth_pam_tool truncates passwords that are not null-terminated
- Closed
-
MDEV-19898 PAM plugin testing
- Stalled
-
MDEV-22459 pam v2 should log an error if auth_pam_tool exec fails
- Closed
-
MDEV-22482 pam v2: mysql_upgrade doesn't fix the ownership/privileges of auth_pam_tool
- Open