PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 does not properly handle errors while reading a protocol message, which allows remote attackers to conduct SQL injection attacks via crafted binary data in a parameter and causing an error, which triggers the loss of synchronization and part of the protocol message to be treated as a new message, as demonstrated by causing a timeout or query cancellation.
The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
Link | Tags |
---|---|
http://www.postgresql.org/docs/9.4/static/release-9-4-1.html | release notes vendor advisory |
http://www.postgresql.org/docs/current/static/release-9-0-19.html | release notes vendor advisory |
http://www.postgresql.org/docs/current/static/release-9-1-15.html | release notes vendor advisory |
http://www.postgresql.org/docs/current/static/release-9-2-10.html | release notes vendor advisory |
http://www.postgresql.org/docs/current/static/release-9-3-6.html | release notes vendor advisory |
http://www.postgresql.org/about/news/1569/ | vendor advisory |
http://www.debian.org/security/2015/dsa-3155 | third party advisory |