
UpdatedAug 7, 2026
shellcode — Updated!
Uma coleção das minhas amostras de shellcode.
shellcode
“Uma vulnerabilidade fornece uma linguagem assembly para um computador que nunca foi programado antes, e que não foi projetado tendo a programabilidade em mente.”
-- Halvar Flake
Uma coleção de amostras de shellcode novas e antigas.

Artigo
Shellcode
x86
- setuid-linux.c. Shellcode antigo de setuid/execve para Linux/x86 (30 bytes).
- portbind-linux.c. Shellcode antigo de setuid/portbind para Linux/x86 (96 bytes).
- reusage-linux.c. Shellcode antigo de execve para Linux/x86 que reutiliza "/bin/sh" em .rodata (16 bytes).
- gets-linux.c. Shellcode antigo de stdin-reopen/execve para Linux/x86, útil contra estouros de buffer de gets().
- raptorcode.c. Shellcode antigo para Linux/x86 que escreve uma mensagem no tty atual.
- setuid-bsd.c. Shellcode antigo de setuid/execve para BSD/x86 (30 bytes).
- portbind-bsd.c. Shellcode antigo de setuid/portbind para BSD/x86 (94 bytes).
- leetcode.c. Shellcode antigo de setuid/execve para BSD/x86, com uma mensagem ASCII embutida no código.
x86_64
- read-no-H.s. Shellcode de sendfile para Linux/x86_64 sem bytes 0x48.
- exec-no-H.s. Shellcode de exec para Linux/x86_64 sem bytes 0x48.
- read-no-syscall.s. Shellcode de sendfile para Linux/x86_64 sem bytes 0x0f05.
- read-write.s. Shellcode de leitura/escrita de arquivo para Linux/x86_64.
- chmod-tiny.s. Shellcode de chmod 4 para Linux/x86_64 com 12 bytes.
- exec-tiny.s. Shellcode de exec para Linux/x86_64 com 12 bytes.
SPARC
- sparc_solaris_exec.c. Shellcode de setuid/execve para Solaris/SPARC (60 bytes).
- sparc_solaris_chmod.c. Shellcode de setuid/chmod/exit para Solaris/SPARC (64 bytes).
- sparc_solaris_chmod2.c. Shellcode de chmod muito pequeno para Solaris/SPARC (36 bytes).
MIPS
- mips_n32_msb_linux_revsh.c. Shellcode básico de reverse shell para Linux MIPS N32 MSB.