Shell Coding
En la mayoría de los casos, los programas que queremos explotar no tendrán funciones del estilo “ganar” o “obtener shell” por casualidad. Sin embargo, aprovechando los conceptos que hemos aprendido sobre corrupción de memoria, ¡podemos simplemente proporcionar nuestro propio código y ejecutarlo en su lugar!
Este nivel te introducirá al concepto de shellcode. El shellcode típicamente se refiere a pequeños fragmentos de ensamblador escritos a mano cuyo propósito principal es ejecutar una shell a través de un exploit basado en corrupción de memoria.