CVE Vulnerabilities

CVE-2008-7247

Improper Link Resolution Before File Access ('Link Following')

Published: Nov 30, 2009 | Modified: Apr 09, 2025
CVSS 3.x
N/A
Source:
NVD
CVSS 2.x
6 MEDIUM
AV:N/AC:M/Au:S/C:P/I:P/A:P
RedHat/V2
4 LOW
AV:A/AC:H/Au:S/C:P/I:P/A:P
RedHat/V3
Ubuntu
LOW
root.io logo minimus.io logo echo.ai logo

sql/sql_table.cc in MySQL 5.0.x through 5.0.88, 5.1.x through 5.1.41, and 6.0 before 6.0.9-alpha, when the data home directory contains a symlink to a different filesystem, allows remote authenticated users to bypass intended access restrictions by calling CREATE TABLE with a (1) DATA DIRECTORY or (2) INDEX DIRECTORY argument referring to a subdirectory that requires following this symlink.

Weakness

The product attempts to access a file based on the filename, but it does not properly prevent that filename from identifying a link or shortcut that resolves to an unintended resource.

Affected Software

NameVendorStart VersionEnd Version
MysqlMysql5.0.0 (including)5.0.0 (including)
MysqlMysql5.0.1 (including)5.0.1 (including)
MysqlMysql5.0.2 (including)5.0.2 (including)
MysqlMysql5.0.3 (including)5.0.3 (including)
MysqlMysql5.0.4 (including)5.0.4 (including)
MysqlMysql5.0.5 (including)5.0.5 (including)
MysqlMysql5.0.5.0.21 (including)5.0.5.0.21 (including)
MysqlMysql5.0.10 (including)5.0.10 (including)
MysqlMysql5.0.15 (including)5.0.15 (including)
MysqlMysql5.0.16 (including)5.0.16 (including)
MysqlMysql5.0.17 (including)5.0.17 (including)
MysqlMysql5.0.20 (including)5.0.20 (including)
MysqlMysql5.0.22.1.0.1 (including)5.0.22.1.0.1 (including)
MysqlMysql5.0.24 (including)5.0.24 (including)
MysqlMysql5.0.30 (including)5.0.30 (including)
MysqlMysql5.0.36 (including)5.0.36 (including)
MysqlMysql5.0.44 (including)5.0.44 (including)
MysqlMysql5.0.54 (including)5.0.54 (including)
MysqlMysql5.0.56 (including)5.0.56 (including)
MysqlMysql5.0.60 (including)5.0.60 (including)
MysqlMysql5.0.66 (including)5.0.66 (including)
MysqlMysql5.0.82 (including)5.0.82 (including)
MysqlMysql5.1.5 (including)5.1.5 (including)
MysqlMysql5.1.23 (including)5.1.23 (including)
MysqlMysql5.1.32 (including)5.1.32 (including)
MysqlMysql6.0.9 (including)6.0.9 (including)
MysqlOracle5.0.0-alpha (including)5.0.0-alpha (including)
MysqlOracle5.0.3-beta (including)5.0.3-beta (including)
MysqlOracle5.0.6 (including)5.0.6 (including)
MysqlOracle5.0.7 (including)5.0.7 (including)
MysqlOracle5.0.8 (including)5.0.8 (including)
MysqlOracle5.0.11 (including)5.0.11 (including)
MysqlOracle5.0.12 (including)5.0.12 (including)
MysqlOracle5.0.13 (including)5.0.13 (including)
MysqlOracle5.0.14 (including)5.0.14 (including)
MysqlOracle5.0.18 (including)5.0.18 (including)
MysqlOracle5.0.19 (including)5.0.19 (including)
MysqlOracle5.0.21 (including)5.0.21 (including)
MysqlOracle5.0.22 (including)5.0.22 (including)
MysqlOracle5.0.23 (including)5.0.23 (including)
MysqlOracle5.0.25 (including)5.0.25 (including)
MysqlOracle5.0.26 (including)5.0.26 (including)
MysqlOracle5.0.27 (including)5.0.27 (including)
MysqlOracle5.0.30-sp1 (including)5.0.30-sp1 (including)
MysqlOracle5.0.32 (including)5.0.32 (including)
MysqlOracle5.0.33 (including)5.0.33 (including)
MysqlOracle5.0.37 (including)5.0.37 (including)
MysqlOracle5.0.38 (including)5.0.38 (including)
MysqlOracle5.0.41 (including)5.0.41 (including)
MysqlOracle5.0.42 (including)5.0.42 (including)
MysqlOracle5.0.45 (including)5.0.45 (including)
MysqlOracle5.0.50 (including)5.0.50 (including)
MysqlOracle5.0.51 (including)5.0.51 (including)
MysqlOracle5.0.52 (including)5.0.52 (including)
MysqlOracle5.0.75 (including)5.0.75 (including)
MysqlOracle5.0.77 (including)5.0.77 (including)
MysqlOracle5.0.81 (including)5.0.81 (including)
MysqlOracle5.0.83 (including)5.0.83 (including)
MysqlOracle5.1 (including)5.1 (including)
MysqlOracle5.1.1 (including)5.1.1 (including)
MysqlOracle5.1.2 (including)5.1.2 (including)
MysqlOracle5.1.3 (including)5.1.3 (including)
MysqlOracle5.1.4 (including)5.1.4 (including)
MysqlOracle5.1.6 (including)5.1.6 (including)
MysqlOracle5.1.7 (including)5.1.7 (including)
MysqlOracle5.1.8 (including)5.1.8 (including)
MysqlOracle5.1.9 (including)5.1.9 (including)
MysqlOracle5.1.10 (including)5.1.10 (including)
MysqlOracle5.1.11 (including)5.1.11 (including)
MysqlOracle5.1.12 (including)5.1.12 (including)
MysqlOracle5.1.13 (including)5.1.13 (including)
MysqlOracle5.1.14 (including)5.1.14 (including)
MysqlOracle5.1.15 (including)5.1.15 (including)
MysqlOracle5.1.16 (including)5.1.16 (including)
MysqlOracle5.1.17 (including)5.1.17 (including)
MysqlOracle5.1.18 (including)5.1.18 (including)
MysqlOracle5.1.19 (including)5.1.19 (including)
MysqlOracle5.1.20 (including)5.1.20 (including)
MysqlOracle5.1.21 (including)5.1.21 (including)
MysqlOracle5.1.22 (including)5.1.22 (including)
MysqlOracle5.1.30 (including)5.1.30 (including)
MysqlOracle6.0.0 (including)6.0.0 (including)
MysqlOracle6.0.1 (including)6.0.1 (including)
MysqlOracle6.0.2 (including)6.0.2 (including)
MysqlOracle6.0.3 (including)6.0.3 (including)
MysqlOracle6.0.4 (including)6.0.4 (including)
Mysql-5.1Ubuntudevel*
Mysql-5.1Ubuntumaverick*
Mysql-dfsgUbuntudapper*
Mysql-dfsg-4.1Ubuntudapper*
Mysql-dfsg-5.1Ubuntujaunty*
Mysql-dfsg-5.1Ubuntukarmic*
Mysql-dfsg-5.1Ubuntulucid*

Potential Mitigations

  • Follow the principle of least privilege when assigning access rights to entities in a software system.
  • Denying access to a file can prevent an attacker from replacing that file with a link to a sensitive file. Ensure good compartmentalization in the system to provide protected areas that can be trusted.

References