Remote Buffer Overflow Vulnerability in Zeroo HTTP Server
21 Nov. 2002
Summary
Zeroo is a simple, small, portable, fast HTTP server. A vulnerability in the product allows remote attackers to cause it to overflow an internal buffer, causing it to execute arbitrary code.
Credit:
The information has been provided by dong-h0un U.
Program received signal SIGSEGV, Segmentation fault.
0x80497bf in HttpGetRequest ()
(gdb) where
#0 0x80497bf in HttpGetRequest ()
#1 0x78787878 in ?? ()
Cannot access memory at address 0x78787878.
(gdb) i r ebp
ebp 0xbffffa00 0xbffffa00
(gdb) i r esp
esp 0xbffff2a8 0xbffff2a8
(gdb) x $esp
0xbffff2a8: 0x00000000
(gdb)
This appears as if ESP is not affected. However, see the next case:
Program received signal SIGSEGV, Segmentation fault.
0xaaaaaaaa in ?? ()
(gdb) where
#0 0xaaaaaaaa in ?? ()
Cannot access memory at address 0xaaaaaaaa.
(gdb) i r ebp
ebp 0xaaaaaaaa 0xaaaaaaaa
(gdb) i r esp
esp 0xbffff2a0 0xbffff2a0
(gdb) x $esp
0xbffff2a0: 0xaaaaaaaa
(gdb)
If find where 'retloc, &shellcode' is, and you can exploit it without a problem.