]> granicus.if.org Git - postgresql/commit
Prevent buffer overrun while parsing an integer in a "query_int" value.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 27 Jan 2011 22:41:56 +0000 (17:41 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 27 Jan 2011 22:43:34 +0000 (17:43 -0500)
commit23f2e93afff29520cb5c03e30f1928010af81938
tree7d01e4b53d38d5add7749cf1357efc39300c319b
parent9ca60201119fdc41b05beb7063ee5f8d359d099b
Prevent buffer overrun while parsing an integer in a "query_int" value.

contrib/intarray's gettoken() uses a fixed-size buffer to collect an
integer's digits, and did not guard against overrunning the buffer.
This is at least a backend crash risk, and in principle might allow
arbitrary code execution.  The code didn't check for overflow of the
integer value either, which while not presenting a crash risk was still
bad.

Thanks to Apple Inc's security team for reporting this issue and supplying
the fix.

Security: CVE-2010-4015
contrib/intarray/_int_bool.c