Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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
go-shellcode — Un dépôt de chargeurs de shellcode Windows et d'utilitaires annexes. Les applications chargent et exécutent du shellcode en utilisant divers appels API ou techniques. | Kitploit
Outils/GitHubGitHub/ne0nd0g/go-shellcode
Génération de PayloadsExploitationShellcodePost-ExploitationTests d'IntrusionRed TeamingDéveloppement de Charges Utiles
GitHubne0nd0g/go-shellcode

go-shellcode

Un dépôt de chargeurs de shellcode Windows et d'utilitaires annexes. Les applications chargent et exécutent du shellcode en utilisant divers appels API ou techniques.

Voir le dépôt
1.2k23918il y a 4 ansVé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

go-shellcode

go-shellcode est un dépôt de chargeurs de Shellcode Windows et d'utilitaires associés. Les applications chargent et exécutent du Shellcode en utilisant divers appels API ou techniques.

Les chargeurs de Shellcode disponibles incluent :

  • CreateFiber
  • CreateProcess
  • CreateProcessWithPipe
  • CreateRemoteThread
  • CreateRemoteThreadNative
  • CreateThread
  • CreateThreadNative
  • EarlyBird
  • EtwpCreateEtwThread
  • NtQueueApcThreadEx (local)
  • RtlCreateUserThread
  • Syscall
  • Shellcode Utils
  • UuidFromStringA

CreateFiber

Cette application exploite la fonction Windows CreateFiber de la Kernel32.dll pour exécuter du shellcode dans le processus de cette application. Cela est utile lorsque vous souhaitez éviter l'injection de processus distant et éviter d'appeler CreateThread. Cette application N'UTILISE PAS les fonctions du package golang.org/x/sys/windows. La différence la plus significative est que cette application charge elle-même toutes les DLL et procédures nécessaires et utilise la fonction Call() de la procédure.

REMARQUE : Je n'ai pas trouvé le moyen de faire sortir le processus et vous devrez le terminer manuellement.

L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateFiber.exe .\cmd\CreateFiber\main.go

CreateProcess

Cette application exploite la fonction Windows CreateProcess de Kernel32.dll. Le processus est créé en état suspendu, le AddressOfEntryPoint dans la structure IMAGE_OPTIONAL_HEADER est mis à jour pour exécuter le shellcode dans le processus enfant, puis le processus est repris. Il s'agit d'un type de process hollowing mais le PE existant N'EST PAS désaffecté et le ThreadContext N'EST PAS mis à jour. L'architecture du shellcode fourni (c'est-à-dire x86 ou x64) doit correspondre à l'architecture du processus enfant.

L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateProcess.exe .\cmd\CreateProcess\main.go

CreateProcessWithPipe

Cette application exploite la fonction Windows CreateProcess de Kernel32.dll. Le processus est créé en état suspendu, le AddressOfEntryPoint dans la structure IMAGE_OPTIONAL_HEADER est mis à jour pour exécuter le shellcode dans le processus enfant, puis le processus est repris. Il s'agit d'un type de process hollowing mais le PE existant N'EST PAS désaffecté et le ThreadContext N'EST PAS mis à jour. L'architecture du shellcode fourni (c'est-à-dire x86 ou x64) doit correspondre à l'architecture du processus enfant.

Cette application diffère de CreateProcess car elle collecte toutes les données écrites sur STDOUT ou STDERR dans le processus enfant et les renvoie au processus parent. Les données sont collectées en utilisant la fonction CreatePipe pour créer un pipe anonyme via lequel le processus parent et le processus enfant communiquent. Cela est utile lors de l'utilisation d'outils comme Donut pour exécuter un assembly .NET dans un processus enfant sous forme de shellcode et pour récupérer la sortie du programme exécuté. La commande suivante peut être utilisée pour générer un shellcode indépendant de la position afin d'exécuter Seatbelt avec Donut v0.9.3 :

.\donut.exe -o donut_v0.9.3_Seatbelt.bin -x 2 -c Seatbelt.Program -m Main -p "ARPTable" Seatbelt.exe

L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateProcessWithPipe.exe .\cmd\CreateProcessWithPipe\main.go

CreateRemoteThread

Cette application exploite la fonction Windows CreateRemoteThread de Kernel32.dll pour exécuter du shellcode dans un processus distant. L'application nécessite que le processus cible dans lequel injecter soit déjà en cours d'exécution. L'identifiant du processus (PID) cible peut être fourni à l'exécution pour les tests en utilisant le drapeau -pid en ligne de commande. Pour une utilisation opérationnelle, codez en dur le PID dans la ligne de code suivante en remplaçant le 0 par votre PID cible :

pid := flag.Int("pid", 0, "Process ID to inject shellcode into")

Cette application utilise les fonctions du package golang.org/x/sys/windows, lorsque c'est possible, comme la windows.OpenProcess(). L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateRemoteThread.exe .\cmd\CreateRemoteThread\main.go

CreateRemoteThreadNative

Cette application exploite la fonction Windows CreateRemoteThread de Kernel32.dll pour exécuter du shellcode dans un processus distant. L'application nécessite que le processus cible dans lequel injecter soit déjà en cours d'exécution. L'identifiant du processus (PID) cible peut être fourni à l'exécution pour les tests en utilisant le drapeau -pid en ligne de commande. Pour une utilisation opérationnelle, codez en dur le PID dans la ligne de code suivante en remplaçant le 0 par votre PID cible :

pid := flag.Int("pid", 0, "Process ID to inject shellcode into")

Cette application N'UTILISE PAS les fonctions du package golang.org/x/sys/windows. La différence la plus significative est que cette application charge elle-même toutes les DLL et procédures nécessaires et utilise la fonction Call() de la procédure. L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateRemoteThreadNative.exe .\cmd\CreateRemoteThreadNative\main.go

CreateThread

Cette application exploite la fonction Windows CreateThread de Kernel32.dll pour exécuter du shellcode dans le processus de cette application. Cela est utile lorsque vous souhaitez éviter l'injection de processus distant. Cette application utilise les fonctions du package golang.org/x/sys/windows, lorsque c'est possible, comme la windows.VirtualAlloc(). L'application peut être compilée avec la commande suivante sur un hôte Windows depuis le répertoire racine du projet :

set GOOS=windows GOARCH=amd64;go build -o CreateThread.exe .\cmd\CreateThread\main.go

CreateThreadNative

Télécharger l’outil