
MikroTik RouterOS 장치에서 인증 없이 전체 관리자 접근 권한을 획득하기 위해 MikroTrick SSH 체인(CVE-2026-86060, CVE-2026-67279)을 악용하는 자체 포함형 Python PoC.
poc_mikrotrick.py는 CERT Polska가 2026-09-05에 **"MikroTrick"**으로 공개한 SSH 공격 체인에 대한 자체 완결형 익스플로잇으로, 최소 2026-09-02부터 인터넷에 노출된 MikroTik RouterOS 장치를 대상으로 실제 공격에 악용되어 왔다. 단 한 번의 실행으로 무인증 SSH 연결이 완전한 관리자 콘솔로 바뀐다. 자격 증명도, 사용자 상호작용도 필요 없다.
| CVE | 체인에서의 역할 | 결함 |
|---|---|---|
| CVE-2026-86060 (CVSS 9.2) | 권한 상승 | SSH 로그인 헬퍼가 대시로 시작하는 사용자 이름을 파일 디스크립터로 취급하여, 그로부터 대체 신원과 정책 마스크를 읽는다 |
| CVE-2026-67279 (CVSS 6.9) | 인증 우회 | 인증 전에 클라이언트가 요청한 rekey가 서버의 "인증되어야 함" 게이트를 무력화한다 |
| CVE-2026-67277 (CVSS 8.8) | 이 PoC에서는 사용되지 않음 | bandwidth-test(btest) 서비스가 인증 전 메모리 노출과 재시작을 허용한다. 핑거프린팅 및 노출 평가에 관련됨 |
추가로 이름 없는 상태 버그가 필요하다. 거부된 로그인이 서버의 세션 상태에 사용자 이름을 대기 상태로 남긴다. 익스플로잇은 아래 1단계에서 이에 의존한다. MikroTik의 패치(2026-09-03)는 전체 체인을 차단한다.
-2로 비밀번호 인증을 시도한다. 서버는 이를 거부하지만 세션 상태에 대기 상태로 남긴다. 이것이 캠페인의 첫 번째 IoC이다: login failure for user -2.-2로 로그인 헬퍼를 실행한다.ssh:-2@<ip>로 기록되는데, 이것이 캠페인 핑거프린트이다.익스플로잇은 전체 권한의 테스트 계정(hacker / hacker)을 심고, 로그인 명령을 출력한 뒤 종료한다. (익스플로잇된 콘솔 자체는 불안정하다 — 이후의 rekey가 인증 게이트를 다시 활성화하고 채널이 죽는다 — 따라서 일반 SSH 로그인이 지속적인 경로이다.)
python3 poc_mikrotrick.py <host> # plant hacker account, print ssh login
python3 poc_mikrotrick.py <host> "<ros command>" # run one command, exit
요구사항: python3-paramiko. 이 스크립트는 랩 클라이언트이며 비사설 IP 대상을 거부한다.
[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에 "Flagged" 마커 표시 (그 부재가 아무것도 증명하지는 않음)이 중 하나라도 장치에서 나타나면 침해된 것으로 간주하라: 격리하고, 패치하고, 모든 사용자, 스크립트, 스케줄러 작업, 터널을 검토하라.
이것은 소유하고 있거나 테스트 권한을 명시적으로 부여받은 RouterOS 인스턴스에 대해서만 실행하라. 소유하지 않은 장치를 공격하는 것은 범죄이다.