ext/mysqlnd/mysqlnd_wireprotocol.c in PHP before 5.6.26 and 7.x before 7.0.11 does not verify that a BIT field has the UNSIGNED_FLAG flag, which allows remote MySQL servers to cause a denial of service (heap-based buffer overflow) or possibly have unspecified other impact via crafted field metadata.
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Link | Tags |
---|---|
https://github.com/php/php-src/commit/28f80baf3c53e267c9ce46a2a0fadbb981585132?w=1 | issue tracking patch |
http://www.php.net/ChangeLog-7.php | release notes |
https://security.gentoo.org/glsa/201611-22 | vendor advisory |
http://www.securitytracker.com/id/1036836 | vdb entry |
https://bugs.php.net/bug.php?id=72293 | issue tracking exploit |
http://www.openwall.com/lists/oss-security/2016/09/15/10 | mailing list |
https://access.redhat.com/errata/RHSA-2018:1296 | vendor advisory |
http://www.php.net/ChangeLog-5.php | release notes |
https://www.tenable.com/security/tns-2016-19 | |
http://www.securityfocus.com/bid/93005 | vdb entry |