
UpdatedAug 7, 2026
shellcode — Mis à jour !
Une collection de mes échantillons de shellcode.
shellcode
« Une vulnérabilité fournit un langage d'assemblage pour un ordinateur qui n'a jamais été programmé auparavant, et qui n'a pas été conçu dans une optique de programmabilité. »
-- Halvar Flake
Une collection d'échantillons de shellcode, anciens et récents.

Article
Shellcode
x86
- setuid-linux.c. Ancien shellcode setuid/execve pour Linux/x86 (30 octets).
- portbind-linux.c. Ancien shellcode setuid/portbind pour Linux/x86 (96 octets).
- reusage-linux.c. Ancien shellcode execve pour Linux/x86 qui réutilise "/bin/sh" dans .rodata (16 octets).
- gets-linux.c. Ancien shellcode stdin-reopen/execve pour Linux/x86, utile contre les débordements de tampon gets().
- raptorcode.c. Ancien shellcode pour Linux/x86 qui écrit un message sur le tty courant.
- setuid-bsd.c. Ancien shellcode setuid/execve pour BSD/x86 (30 octets).
- portbind-bsd.c. Ancien shellcode setuid/portbind pour BSD/x86 (94 octets).
- leetcode.c. Ancien shellcode setuid/execve pour BSD/x86, avec un message ASCII dissimulé dans le code.
x86_64
- read-no-H.s. Shellcode sendfile Linux/x86_64 sans octets 0x48.
- exec-no-H.s. Shellcode exec Linux/x86_64 sans octets 0x48.
- read-no-syscall.s. Shellcode sendfile Linux/x86_64 sans octets 0x0f05.
- read-write.s. Shellcode de lecture/écriture de fichier Linux/x86_64.
- chmod-tiny.s. Shellcode chmod 4 Linux/x86_64 de 12 octets.
- exec-tiny.s. Shellcode exec Linux/x86_64 de 12 octets.
SPARC
- sparc_solaris_exec.c. Shellcode setuid/execve Solaris/SPARC (60 octets).
- sparc_solaris_chmod.c. Shellcode setuid/chmod/exit Solaris/SPARC (64 octets).
- sparc_solaris_chmod2.c. Shellcode chmod Solaris/SPARC très petit (36 octets).
MIPS
- mips_n32_msb_linux_revsh.c. Shellcode reverse shell MIPS N32 MSB Linux de base.