Mi maestro me dio algo de ejercicio sobre B.O para entender cómo funciona el desbordamiento de búfer, y "cómo" escribe algún exploit para demostrarlo. Me dio algunos programas en C, no puedo resolver el último. Para el último, el objetivo es explotar el desbordamiento de búfer, habilitar rdp y agregar una cuenta de administrador a la máquina víctima.
Configuración:
Máquina víctima con Windows XP SP3, ejecutando programa vulnerable del lado del servidor.
Máquina de ataque mi kali linux box.
Aquí el código: código Lo compilé y lo lancé en el cuadro xp sp3. De vuelta a kali, también escribí un script en python para buscar el desbordamiento del búfer con la ayuda del depurador de inmunidad:
Gracias a pattern_create.rb y pattern_offset.rb vi que necesito 185 caracteres antes de sobrescribir el EIP. También vi que la cadena generada por pattern_create se compara con el registro ESP. Así que abra kernel32.dll para la dirección de CALL ESP y póngala a mi favor, aquí está el código con los cambios:
buff="\ x41" * 185 #junk charaters
buff +="\ x67 \ x86 \ x86 \ x7c" # la dirección de CALL ESP
buff + = needshellcodeHERE!
Ahora necesito el código shell, pero desafortunadamente, no entiendo cómo puedo crear un código shell que habilite RDP y agregue una cuenta de usuario con privilegios máximos.
¿Alguien puede ayudarme?