针对 MikroTik RouterOS SSH 身份验证绕过(CVE-2026-67279)——即 MikroTrick 攻击链——的非破坏性行为验证器。
探测。测量。判定。无载荷。
一个小工具,用于检查你所拥有的 RouterOS 设备的行为,以实际确认已安装的构建版本在升级之前是否存在 SSH 身份验证状态绕过(MikroTrick 的第一阶段)。
--console 时执行命令(只读)。docs/GUIDE_AR.md。复制 install_termux.sh 的内容并粘贴到 Termux 中,然后:
# أولًا: تأكد أن الأداة تعمل — بلا شبكة وبلا أي جهاز
python mtx.py --selftest # -> 3/3
# ثانيًا: افحص جهازك
python mtx.py <عنوان-الجهاز> --port 22
在 Termux 上,命令通常是
python而不是python3。
如果客户端在身份验证之前请求 SSH 密钥重新协商(rekey),未打补丁的 RouterOS 构建仍会进入连接协议阶段,并接受在未登录的情况下打开会话通道。该工具正是测量这一点,仅此而已:
| 读数 | 已修补设备 | 存在漏洞的设备 | 正常 SSH(例如 OpenSSH) |
|---|---|---|---|
| 认证前 rekey | 失败,连接被断开 | 成功 | 成功 |
| 认证前打开会话通道 | —(链路已断开) | 被接受 | 被拒绝 |
| 判定结果 | 含义 |
|---|---|
VULNERABLE | 认证前会话通道被接受 — CVE-2026-67279 行为。 |
PATCHED_SIGNATURE | 认证前 rekey 被拒绝且连接被断开 — 已修补构建的特征。 |
NOT_CONFIRMED | 允许 rekey 但认证强制仍然完好 — 未证明可利用。 |
UNREACHABLE | SSH 端口不可达。 |
INCONCLUSIVE | 读数不明确;请查看原始详情。 |
该判定结果是行为层面的 — RouterOS 从不在 SSH banner 中透露其版本,因此请与已修补的对照设备进行比较,以证明该工具能够区分(参见指南第 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,否则不在目标上运行任何命令;即便如此,它也只发送只读命令(默认 /system resource print)。仅可在你拥有或已获得明确书面授权进行测试的设备上使用。
/user print、/system scheduler print、/system script print、SOCKS/隧道,
以及存储上的未知文件。ops;日志 login failure for user -2 ... via ssh 和
user added by ssh:-2@<ip>;源 IP 82.192.72.4、103.102.31.18。CVE-2026-67279 影响 RouterOS 6.x(6.0.0 – < 6.49.21) 和 7.x。完整的管理员 接管仅在 7.x 上复现(需要配套的 CVE-2026-86060);在 6.x 上,该绕过可实现对 文件命名空间的操作。6.48.6 在影响范围内(与 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 — 参见 LICENSE。