Holas!! Rojodos o algun alma caritativa del forom a ver si me podeis hechar una mano en una cosilla, estoy siguiendo el articulo que indicas, el caso es que ya tengo hecha la shellcode, y cuando voy a hacer el desbordamiento de la pila en el gdb, pongo: run `cat mishellcode`(en mishellcode es donde esta puesto toda la cadena q provoca el desbordamiento), sale todo perfecto, me saca la shell y digo cojonudididisimo lo consegui. Lo cachondo es que si lo hago fuera del gdb es decir: .\programa_vulnerable `cat mishellcode` me dice : Instrucción ilegal.
Como es posible??? es decir en el gdb me va y sin el gdb no me va I dont undestand!!, no se por pensar, se me ocurre q el compilador, kernel u algo del sistema tenga proteccion contra este tipo de desbordamientos de buffer, pero sinceramente ni idea
Pd: He seguido el articulo, pero ellos lo hacen sobre un programa real q no me apetecia descargar y compilar, y yo lo he hecho sobre un codigo vulnerable, el que ellos llaman stack_1, se q lo he hecho bien pq todo parece muy logico mirandolo por registros y en el gdb sale perfecto.
Gracias de antemano y si me puedes hechar una mano, pq no se que falla. un saludo