Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
malasada — Chargeur de shellcode depuis une bibliothèque partagée Linux | Kitploit
Outils/GitHubGitHub/sliverarmory/malasada
ExploitationShellcodePost-ExploitationTests d'IntrusionRed TeamingGénération de ShellcodeDéveloppement de Charges UtilesExploitation de Binaires
GitHubsliverarmory/malasada

malasada

Chargeur de shellcode depuis une bibliothèque partagée Linux

Voir le dépôt
10111il y a 6 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

malasada

Donut pour Linux, convertit un objet partagé ELF Linux (.so) en un blob .bin indépendant de la position qui peut être exécuté directement depuis la mémoire (par exemple, en le copiant dans une région mmap'ée et en y sautant comme un pointeur de fonction).

Ce projet évite intentionnellement memfd (memfd_create, execveat sur memfd, etc).

Plateformes prises en charge

  • Linux amd64
  • Linux arm64
  • Linux 386

Compilation

Prérequis :

  • Go 1.25+
  • Zig 0.15+ (requis pour go generate et pour les tests)

Compiler la CLI :

root@kitploit:~
make

Démarrage rapide (Local)

Compilez un .so hello-world, convertissez-le en .bin et exécutez-le avec le runner inclus :

root@kitploit:~
# Build payload .so
go build -buildmode=c-shared -o /tmp/hello.so ./testdata/hello

# Convert .so -> .bin (call the exported symbol "Hello")
./malasada --call-export Hello -o /tmp/hello.bin /tmp/hello.so

# Optional: compress the embedded payload (stage0 will depack before loading)
./malasada --compress --call-export Hello -o /tmp/hello.compressed.bin /tmp/hello.so

# Build the runner (PIC shellcode executor) with zig cc
zig cc -O2 -o /tmp/runner ./testdata/runner/runner.c

# Run it (stage0 hands off to ld-linux; runner will not return)
/tmp/runner /tmp/hello.bin

Le résultat attendu contient :

root@kitploit:~
hello from go

go generate (Précompilation et intégration de stage0)

Le dépôt intègre des blobs stage0 précompilés :

  • internal/stage0/stage0_linux_amd64.bin
  • internal/stage0/stage0_linux_arm64.bin
  • internal/stage0/stage0_linux_386.bin

Si vous modifiez internal/stage0/stage0.c ou internal/stage0/linker.ld, régénérez-les :

root@kitploit:~
go generate ./...

La CLI utilise toujours les blobs stage0 intégrés (pas besoin de Zig à l'exécution). Pour changer stage0, modifiez internal/stage0/stage0.c et relancez :

root@kitploit:~
go generate ./...

Environnement de test Docker

testdata/Dockerfile compile la CLI, compile le .so hello, le convertit en .bin, compile le runner avec Zig et exécute le test de bout en bout dans un conteneur Linux.

Exemples :

root@kitploit:~
docker buildx build --platform linux/amd64 -f testdata/Dockerfile .
docker buildx build --platform linux/arm64 -f testdata/Dockerfile .
docker buildx build --platform linux/386 -f testdata/Dockerfile .

# Ou via le Makefile :
make docker-test-386
Télécharger l’outil