]> 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:42:00 +0000 (17:42 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 27 Jan 2011 22:43:45 +0000 (17:43 -0500)
commite11349fdbae7295b91699a70a791c093fc6d254e
treed9f7ead229ec7cd2f0915396af1733ca907f2057
parent948a64d2b9d75e20a247fd7e3f11fd2a4120319b
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