Voltar às atualizações
UpdatedAug 7, 2026

shellcode — Updated!

Uma coleção das minhas amostras de shellcode.

Compartilhar

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

MIPS

Categorias