
PoC Python autocontido que explora a cadeia SSH MikroTrick (CVE-2026-86060, CVE-2026-67279) para obter acesso de administrador total não autenticado em dispositivos MikroTik RouterOS.
poc_mikrotrick.py é um exploit autocontido para a cadeia de ataque SSH que
a CERT Polska divulgou como "MikroTrick" em 2026-09-05, explorada em campo
desde pelo menos 2026-09-02 contra dispositivos MikroTik RouterOS expostos à
internet. Uma única execução transforma uma conexão SSH não autenticada em um
console de administrador completo. Sem credenciais, sem interação do usuário.
| CVE | Papel na cadeia | Defeito |
|---|---|---|
| CVE-2026-86060 (CVSS 9.2) | Escalação de privilégios | O auxiliar de login SSH trata um nome de usuário iniciado por hífen como um descritor de arquivo e lê dele uma identidade de substituição e uma máscara de política |
| CVE-2026-67279 (CVSS 6.9) | Bypass de autenticação | Uma renegociação de chave solicitada pelo cliente antes da autenticação remove a barreira "deve estar autenticado" do servidor |
| CVE-2026-67277 (CVSS 8.8) | Não utilizado por este PoC | O serviço de teste de largura de banda (btest) permite divulgação de memória e reinicialização pré-autenticação; relevante para fingerprinting e avaliação de exposição |
Um bug de estado adicional, sem nome, é necessário: um login rejeitado deixa o nome de usuário pendente no estado de sessão do servidor. O exploit depende disso na etapa 1 abaixo. Os patches da MikroTik (2026-09-03) fecham toda a cadeia.
-2. O servidor rejeita, mas o deixa pendente no estado da
sessão. Este é o primeiro IoC da campanha: login failure for user -2.-2
pendente.ssh:-2@<ip>, a impressão digital da campanha.O exploit cria uma conta de teste com privilégios totais (hacker / hacker),
imprime o comando de login e sai. (O console explorado em si é instável — uma
renegociação de chave posterior rearma a barreira de autenticação e o canal
morre — então um login SSH normal é o caminho durável.)
python3 poc_mikrotrick.py <host> # plant hacker account, print ssh login
python3 poc_mikrotrick.py <host> "<ros command>" # run one command, exit
Requisito: python3-paramiko. O script é um cliente de laboratório e recusa
alvos com IP não privado.
[7.24, 7.24.2), [7.0.0, 7.23.4), [6.0.0, 6.49.21)login failure for user -2 via sshuser <name> added by ssh:-2@<ip>ops/system/device-mode/print mostrando o marcador "Flagged" (sua ausência
não prova nada)Se qualquer um destes aparecer em um dispositivo, trate-o como comprometido: isole, aplique o patch e revise todos os usuários, scripts, tarefas do agendador e túneis.
Execute isto apenas contra instâncias RouterOS que você possui ou está explicitamente autorizado a testar. Atacar dispositivos que você não possui é crime.