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
Swego — Couteau suisse du serveur Web en Golang. Restez simple comme le SimpleHTTPServer de Python mais avec de nombreuses fonctionnalités. | Kitploit
Outils/GitHubGitHub/nodauf/swego
Génération de PayloadsSécurité WebTests d'IntrusionUtilitaires et FrameworksRed Teaming
GitHubnodauf/swego

Swego

Couteau suisse du serveur Web en Golang. Restez simple comme le SimpleHTTPServer de Python mais avec de nombreuses fonctionnalités.

Voir le dépôt
19832il y a 1 anVé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

Swego

Couteau suisse de serveur web en Golang. Restez simple comme le SimpleHTTPServer de Python mais avec de nombreuses fonctionnalités.

Swego screenshot

Utilisation

Exécuter le binaire

Si vous ne voulez pas le compiler, des binaires sont disponibles sur https://github.com/nodauf/Swego/releases

Sinon, build-essential doit être installé et GOPATH configuré :

root@kitploit:~
git clone https://github.com/nodauf/Swego.git
cd Swego/src
make compileLinux # Ou make compileWindows

Utilisation

sous-commande web :

root@kitploit:~
$ ./webserver web --help
Start the webserver (default subcommand)

Usage:
  Swego web [flags]

Flags:
  -b, --bind int                  Bind Port (default 8080)
  -c, --certificate string        HTTPS certificate : openssl req -new -x509 -sha256 -key server.key -out server.crt -days 365
  -d, --disableListing            Disable directory listing
  -g, --gzip                      Enables gzip/zlib compression (default true)
      --ip string                 Binding IP (default "0.0.0.0")
  -k, --key string                HTTPS Key : openssl genrsa -out server.key 2048
  -o, --oneliners                 Generate oneliners to download files
  -p, --password string           Password for basic auth (default "notsecure")
      --private string            Private folder with basic auth (default "/home/florian/dev/SimpleHTTPServer-golang/src/private")
      --promptPassword            Prompt for for basic auth's password
  -r, --root string               Root folder (default "/home/florian/dev/SimpleHTTPServer-golang/src")
  -s, --searchAndReplace string   Search and replace string in embedded text files
      --tls                       Enables HTTPS
  -u, --username string           Username for basic auth (default "admin")

Global Flags:
      --config string   config file (default is $HOME/.Swego.yaml)
  -h, --help            Help message

sous-commande run :

root@kitploit:~
$ ./webserver web --help
Run an embedded binary

Usage:
  Swego run [flags]

Flags:
  -a, --args string     Arguments for the binary
  -b, --binary string   Binary to execute
  -l, --list            List embedded binaries

Global Flags:
      --config string   config file (default is $HOME/.Swego.yaml)
  -h, --help            Help message

Serveur web en HTTP

root@kitploit:~
$ ./webserver
Sharing /tmp/ on 8080 ...
Sharing /tmp/private on 8080 ...

Serveur web en HTTPS

root@kitploit:~
$ openssl genrsa -out server.key 2048
Generating RSA private key, 2048 bit long modulus (2 primes)
..........................................+++++
.................................................................................................................+++++
e is 65537 (0x010001)

$ openssl req -new -x509 -sha256 -key server.key -out server.crt -days 365
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:

$ ./webserver web --tls --key server.key --certificate server.crt
Sharing /tmp/ on 8080 ...
Sharing /tmp/private on 8080 ...

Serveur web utilisant un répertoire privé et un répertoire racine

Dossier privé dans le même répertoire

root@kitploit:~
$ ./webserver-linux-amd64 web --private ThePrivateFolder --username nodauf --password nodauf
Sharing /tmp/ on 8080 ...
Sharing /tmp/ThePrivateFolder on 8080 ...

Chemin différent pour le répertoire racine et le répertoire privé

root@kitploit:~
$ ./webserver-linux-amd64 web --private /tmp/private --root /home/nodauf --username nodauf --password nodauf
Sharing /home/nodauf on 8080 ...
Sharing /tmp/private on 8080 ...

Binaire embarqué (Windows uniquement)

Lister les binaires embarqués :

root@kitploit:~
C:\Users\Nodauf>.\webserver.exe run  
Usage:
  Swego run [flags]

Flags:
  -a, --args string     Arguments for the binary
  -b, --binary string   Binary to execute
  -l, --list            List embedded binaries

Global Flags:
      --config string   config file (default is $HOME/.Swego.yaml)
  -h, --help            Help message

Exécuter un binaire avec des arguments :

root@kitploit:~
C:\Users\Nodauf>.\webserver.exe run --binary mimikatz.exe --args "privilege::debug sekurlsa::logonpasswords"
....

Exécuter un binaire de cette manière peut aider à contourner les protections antivirus. Parfois, les arguments envoyés au binaire peuvent être interceptés par l'AV, si possible, utilisez l'interface CLI interactive du binaire (comme mimikatz) ou recompilez le binaire pour changer le nom des arguments.

Fonctionnalités

  • HTTPS (génération automatique du certificat / clé si aucun certificat / clé spécifié)
  • Liste des répertoires
  • Définir un dossier privé avec authentification de base
  • Télécharger plusieurs fichiers
  • Télécharger un fichier sous forme de zip chiffré (mot de passe : infected)
  • Télécharger un dossier en zip
  • Fichiers embarqués
  • Exécuter un binaire embarqué écrit en C# (disponible uniquement sur Windows)
  • Créer un dossier depuis le navigateur
  • Capacité à exécuter un binaire embarqué
  • Fonctionnalité de recherche et de remplacement (pour remplir l'adresse IP dans un reverse shell par exemple)
  • Générer des one-liners pour télécharger et exécuter un fichier embarqué
  • Fichier de configuration exemples .Swego.yaml
  • Génération automatique d'un certificat aléatoire pour TLS

À faire

  • Webdav (avec capture du hash Net-NTLM)
  • Fichier de log
  • Menu JS/CSS pour donner une ligne de commande en powershell, quelques lolbins, curl, wget pour télécharger et exécuter
  • Utiliser les regex pour la recherche et le remplacement
  • Utiliser un système de fichiers virtuel pour gérer les fichiers embarqués
Télécharger l’outil