Fallo de segmentación de Shellcode.

0

Estoy intentando ejecutar shellcode execve (/ bin / sh) desde exploit-db en el programa de prueba, y estoy obteniendo SIGSEGV. Lo he compilado con

gcc -z execstack -fno-stack-protector shell.c -o shell El programa de pruebas:

#include<stdio.h>
#include<string.h>

const char sc[] = "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\xb0\x0b\xcd\x80";

void main()
{
     printf("Shellcode Length: %d\n", strlen(sc));
     ((void(*)(void))sc)();
}

Aquí uname -a:

Linux kali 4.18.0-kali2-amd64 #1 SMP Debian 4.18.10-2kali1 (2018-10-09) x86_64 GNU/Linux

Y el dmesg:

[  979.933313] shell[1847]: segfault at d9ed1d08 ip 000055e62f4c6027 sp 00007ffcd9ed1c90 error 6 in shell[55e62f4c4000+3000]
[  979.933318] Code: 00 00 00 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 31 c0 50 68 2f 2f 73 68 68 2f 62 69 6e 89 e3 50 53 89 e1 b0 0b cd 80 <00> 53 68 65 6c 6c 63 6f 64 65 20 4c 65 6e 67 74 68 3a 20 25 64 0a 

Parece que se está ejecutando la dirección correcta, pero algo la está bloqueando. ¿Cuáles son las posibles causas de ello?

    
pregunta xoreaxeax 08.12.2018 - 12:10
fuente

0 respuestas

Lea otras preguntas en las etiquetas