phpMyAdmin: Insecure SQL script installation — GLSA 200504-30

phpMyAdmin leaves the SQL install script with insecure permissions, potentially leading to a database compromise.

Affected packages

dev-db/phpmyadmin on all architectures
Affected versions < 2.6.2-r1
Unaffected versions >= 2.6.2-r1

Background

phpMyAdmin is a tool written in PHP intended to handle the administration of MySQL databases from a web-browser. phpMyAdmin uses a pma MySQL user to control the linked-tables infrastructure. The SQL install script sets the initial password for the pma user.

Description

The phpMyAdmin installation process leaves the SQL install script with insecure permissions.

Impact

A local attacker could exploit this vulnerability to obtain the initial phpMyAdmin password and from there obtain information about databases accessible by phpMyAdmin.

Workaround

Change the password for the phpMyAdmin MySQL user (pma):

mysql -u root -p SET PASSWORD FOR 'pma'@'localhost' = PASSWORD('MyNewPassword');

Update your phpMyAdmin config.inc.php:

$cfg['Servers'][$i]['controlpass'] = 'MyNewPassword';

Resolution

All phpMyAdmin users should change password for the pma user as described above and upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-db/phpmyadmin-2.6.2-r1"

References

Release date
April 30, 2005

Latest revision
May 22, 2006: 02

Severity
normal

Exploitable
local

Bugzilla entries