First published: Fri Nov 03 2017(Updated: )
It was discovered that the MySQL's sha256_password authentication plugin did not restrict the length password received from authenticating client before passing it to the my_crypt_genhash() function. This function implements SHA256 crypt password hashing algorithm that can also be used for hashing passwords in /etc/shadow on Linux systems. The algorithm is computationally intensive, and an excessively long passwords cause mysqld thread handling specific connection to consume all available CPU time. Additionally, the algorithm implementation in MySQL uses alloca() for memory allocation, which does not protect against stack overflow, possibly leading to memory corruption, process crash, and potentially code execution. Note that this issue affects deployments where non-default sha256_password authentication is configured for some or all database users.
Credit: secalert_us@oracle.com secalert_us@oracle.com
Affected Software | Affected Version | How to fix |
---|---|---|
Oracle MySQL | >=5.6.0<=5.6.38 | |
Oracle MySQL | >=5.7.0<=5.7.20 | |
redhat/mysql | <5.6.39 | 5.6.39 |
redhat/mysql | <5.7.21 | 5.7.21 |
debian/mysql-5.5 | ||
debian/mysql-5.7 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.