
Verificador comportamental não destrutivo para o bypass de autenticação SSH do MikroTik RouterOS (CVE-2026-67279 / MikroTrick). Mede apenas a reação do servidor — sem payload de exploit.
Verificador comportamental não destrutivo para o bypass de autenticação SSH do MikroTik RouterOS (CVE-2026-67279) — também conhecido como a cadeia MikroTrick.
sondar. medir. decidir. sem payload.
Uma pequena ferramenta que examina o comportamento de um dispositivo RouterOS que você possui para verificar, na prática, se a build instalada sofre de um bypass de estado de autenticação no SSH (a primeira fase do MikroTrick) antes de você atualizar.
--console (somente leitura).docs/GUIDE_AR.md.Copie o conteúdo de install_termux.sh e cole no Termux, depois:
# أولًا: تأكد أن الأداة تعمل — بلا شبكة وبلا أي جهاز
python mtx.py --selftest # -> 3/3
# ثانيًا: افحص جهازك
python mtx.py <عنوان-الجهاز> --port 22
No Termux, geralmente o comando é
pythone nãopython3.
Se um cliente solicitar uma renegociação de chave SSH (rekey) antes da autenticação, uma build do RouterOS sem patch prossegue para o estágio de protocolo de conexão mesmo assim e aceita abrir um canal de sessão sem login. A ferramenta mede exatamente isso, e nada mais:
| Leitura | Dispositivo com patch | Dispositivo vulnerável | SSH normal (ex.: OpenSSH) |
|---|---|---|---|
| Rekey pré-autenticação | falha, conexão encerrada | bem-sucedido | bem-sucedido |
| Canal de sessão aberto pré-autenticação | — (link já derrubado) | aceito | recusado |
| Veredicto | Significado |
|---|---|
VULNERABLE | Canal de sessão pré-autenticação aceito — comportamento do CVE-2026-67279. |
PATCHED_SIGNATURE | Rekey pré-autenticação recusado e conexão encerrada — assinatura de build com patch. |
NOT_CONFIRMED | Rekey permitido, mas aplicação de autenticação intacta — exploração não comprovada. |
UNREACHABLE | Porta SSH inacessível. |
INCONCLUSIVE | Leitura ambígua; revise os detalhes brutos. |
O veredicto é comportamental — o RouterOS nunca revela sua versão no banner SSH, então compare com um dispositivo de controle com patch para provar que a ferramenta discrimina (consulte o guia, passo 4).
git clone https://github.com/<you>/mikrotrick-verifier.git
cd mikrotrick-verifier
python -m pip install -r requirements.txt
# 1) prove the tool works first -- offline, no device, no network
python mtx.py --selftest # -> 3/3
# 2) offline logic self-test (same logic, full harness)
python tests/selftest_inproc.py # -> 3/3
# 3) scan your own / authorized device
python mtx.py <host> --port 22 --timeout 8
python mtx.py <host> --json report.json
--console seja passado explicitamente; mesmo nesse caso
envia um comando apenas de leitura (predefinição /system resource print).Utilize apenas em dispositivos que possui ou para os quais tem autorização explícita por escrito para testar.
/user print, /system scheduler print, /system script print, SOCKS/túneis,
e ficheiros desconhecidos no armazenamento.ops; registos login failure for user -2 ... via ssh e
user added by ssh:-2@<ip>; IPs de origem 82.192.72.4, 103.102.31.18.CVE-2026-67279 afeta o RouterOS 6.x (6.0.0 – < 6.49.21) e 7.x. A tomada de controlo total de administrador só foi reproduzida em 7.x (requer o complemento CVE-2026-86060); em 6.x o bypass permite a manipulação do espaço de nomes de ficheiros. A 6.48.6 está no âmbito (a par de CVE-2023-30799 / CVE-2023-32154).
mikrotrick-verifier/
├── mtx.py # single-file, paste-in-place verifier (Termux-friendly)
│ # --selftest proves it works offline; --json / --console
├── install_termux.sh # one-paste installer for Termux
├── tools/
│ ├── mikrotrick_check.py # full-featured verifier (bundled checks, JSON reports)
│ └── mock_routeros.py # offline SSH mock (vulnerable / patched / normal)
├── tests/
│ ├── selftest_inproc.py # offline logic self-test -> 3/3
│ └── test_mtx_cli.py # end-to-end CLI test -> 3/3
├── docs/
│ └── GUIDE_AR.md # full Arabic guide
├── requirements.txt
└── LICENSE
MIT — consulte LICENSE.