Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Swego — Canivete suíço de servidor web em Golang. Mantenha simples como o python SimpleHTTPServer, mas com muitos recursos. | Kitploit
Ferramentas/GitHubGitHub/nodauf/swego
Geração de PayloadsSegurança WebTestes de PenetraçãoUtilitários e FrameworksRed Teaming
GitHubnodauf/swego

Swego

Canivete suíço de servidor web em Golang. Mantenha simples como o python SimpleHTTPServer, mas com muitos recursos.

Ver Repositório
19832há 1 anoRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Swego

Canivete suíço de servidor web em Golang. Mantenha simples como o python SimpleHTTPServer, mas com muitos recursos

Swego screenshot

Uso

Executar o binário

Se não quiser compilar, os binários estão disponíveis em https://github.com/nodauf/Swego/releases

Caso contrário, o build-essential deve estar instalado e o GOPATH configurado:

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

Uso

subcomando 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

subcomando 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

Servidor web sobre HTTP

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

Servidor web sobre 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 ...

Servidor web usando diretório privado e diretório raiz

Pasta privada no mesmo diretório

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

Caminho diferente para diretório raiz e privado

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 ...

Binário embutido (somente no Windows)

Listar os binários embutidos:

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

Executar binário com argumentos:

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

Executar o binário desta forma pode ajudar a contornar proteções de AV. Às vezes, os argumentos enviados ao binário podem ser capturados pelo AV, se possível, utilize a CLI interativa do binário (como o mimikatz) ou recompile o binário para alterar o nome dos argumentos.

Funcionalidades

  • HTTPS (gerar certificado/chave automaticamente se nenhum certificado/chave for especificado)
  • Listagem de diretórios
  • Definir uma pasta privada com autenticação básica
  • Enviar vários arquivos
  • Baixar arquivo como um zip criptografado (senha: infected)
  • Baixar pasta com um zip
  • Arquivos embutidos
  • Executar binário embutido escrito em C# (somente disponível no Windows)
  • Criar uma pasta a partir do navegador
  • Capacidade de executar binário embutido
  • Funcionalidade de pesquisa e substituição (para preencher o endereço IP em um reverse shell, por exemplo)
  • Gerar one-liners para baixar e executar um arquivo embutido
  • Arquivo de configuração exemplos .Swego.yaml
  • Gerar automaticamente certificado aleatório para TLS

A fazer

  • Webdav (com captura de hash Net-NTLM)
  • Arquivo de log
  • Menu JS/CSS para fornecer linha de comando em powershell, alguns lolbins, curl, wget para baixar e executar
  • Usar regex para pesquisa e substituição
  • Usar sistema de arquivos virtual para gerenciar arquivos embutidos
Baixar ferramenta