
ActualizadaAug 7, 2026
shellcode — Actualizado!
Una colección de mis muestras de shellcode.
shellcode
“Una vulnerabilidad proporciona un lenguaje ensamblador para una computadora que nunca ha sido programada antes, y que no fue diseñada pensando en la programabilidad.”
-- Halvar Flake
Una colección de muestras de shellcode nuevas y antiguas.

Artículo
Shellcode
x86
- setuid-linux.c. Shellcode antiguo setuid/execve para Linux/x86 (30 bytes).
- portbind-linux.c. Shellcode antiguo setuid/portbind para Linux/x86 (96 bytes).
- reusage-linux.c. Shellcode antiguo execve para Linux/x86 que reutiliza "/bin/sh" en .rodata (16 bytes).
- gets-linux.c. Shellcode antiguo stdin-reopen/execve para Linux/x86, útil contra desbordamientos de búfer de gets().
- raptorcode.c. Shellcode antiguo para Linux/x86 que escribe un mensaje en la tty actual.
- setuid-bsd.c. Shellcode antiguo setuid/execve para BSD/x86 (30 bytes).
- portbind-bsd.c. Shellcode antiguo setuid/portbind para BSD/x86 (94 bytes).
- leetcode.c. Shellcode antiguo setuid/execve para BSD/x86, con un mensaje ASCII incrustado en el código.
x86_64
- read-no-H.s. Shellcode sendfile para Linux/x86_64 sin bytes 0x48.
- exec-no-H.s. Shellcode exec para Linux/x86_64 sin bytes 0x48.
- read-no-syscall.s. Shellcode sendfile para Linux/x86_64 sin bytes 0x0f05.
- read-write.s. Shellcode de lectura/escritura de archivos para Linux/x86_64.
- chmod-tiny.s. Shellcode chmod 4 de 12 bytes para Linux/x86_64.
- exec-tiny.s. Shellcode exec de 12 bytes para Linux/x86_64.
SPARC
- sparc_solaris_exec.c. Shellcode setuid/execve para Solaris/SPARC (60 bytes).
- sparc_solaris_chmod.c. Shellcode setuid/chmod/exit para Solaris/SPARC (64 bytes).
- sparc_solaris_chmod2.c. Shellcode chmod muy pequeño para Solaris/SPARC (36 bytes).
MIPS
- mips_n32_msb_linux_revsh.c. Shellcode básico de reverse shell para MIPS N32 MSB Linux.