OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
Re: [Full-disclosure] PHP 5 ecalloc memory manager unserialize() array int overflow ia 32 bits poc

From: Josh Bressers (joshbress.net)
Date: Tue Oct 17 2006 - 19:28:20 CDT


>
> <?
>
> 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/