MySQL: SQL Injection — GLSA 200606-13

MySQL is vulnerable to an SQL Injection flaw in the multi-byte encoding process.

Affected packages

dev-db/mysql on all architectures
Affected versions < 5.0.22
Unaffected versions >= 5.0.22
revision >= 4.1.20
revision >= 4.1.21
revision >= 4.1.22
< 4.1

Background

MySQL is a popular multi-threaded, multi-user SQL server.

Description

MySQL is vulnerable to an injection flaw in mysql_real_escape() when used with multi-byte characters.

Impact

Due to a flaw in the multi-byte character process, an attacker is still able to inject arbitary SQL statements into the MySQL server for execution.

Workaround

There are a few workarounds available: NO_BACKSLASH_ESCAPES mode as a workaround for a bug in mysql_real_escape_string(): SET sql_mode='NO_BACKSLASH_ESCAPES'; SET GLOBAL sql_mode='NO_BACKSLASH_ESCAPES'; and server command line options: --sql-mode=NO_BACKSLASH_ESCAPES.

Resolution

All MySQL users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-db/mysql-4.1.20"

References

Release date
June 11, 2006

Latest revision
December 13, 2006: 04

Severity
normal

Exploitable
remote

Bugzilla entries