RoguePlanet 제로데이: 패치된 Windows에서 SYSTEM 권한을 노리는 Defender TOCTOU 공격
RoguePlanet CVE-2026-47281의 Defender TOCTOU 경쟁 조건, Nightmare Eclipse 공격 체인, Windows 완화 전략을 정리한다.
2026-08-14 · 최초 발행 2026-08-02
패치된 Windows에서도 남은 Defender 권한 상승 경로
2026년 6월 10일 Microsoft가 200개 취약점을 수정한 Patch Tuesday를 배포한 날, GitHub에는 RoguePlanet(CVE-2026-47281)의 PoC 소스 코드와 컴파일 바이너리가 공개됐다. 이후 48시간 이내에 여러 독립 연구자가 완전히 패치된 Windows 10/11 환경에서 SYSTEM 권한 셸을 획득했다고 검증하면서 패치 바이패스 문제가 확정됐다.
RoguePlanet은 Nightmare Eclipse, 또는 Chaotic Eclipse로도 불리는 단독 위협 행위자가 2026년 4월부터 6월까지 공개한 7개 Windows 제로데이 시리즈의 최신 사례다. Microsoft Defender와 Visual Studio Code가 맞물리는 구간의 TOCTOU(Time-of-Check to Time-of-Use) 경쟁 조건을 이용하며, CVSS 9.6 Critical의 로컬 권한 상승(LPE)으로 분류된다.
검증한 경로와 실제 쓰기가 분리된 문제
취약점의 표적은 Microsoft Defender 프로세스인 MsMpEng.exe 내부 파일 처리 파이프라인이다. Defender가 파일 경로를 신뢰할 수 있다고 확인한 뒤 실제 쓰기를 수행하기 전까지, 검증과 사용이 원자적으로 묶이지 않은 구간이 존재한다. RoguePlanet은 CWE-20(부적절한 입력 검증)과 TOCTOU 경쟁 조건이 결합된 형태다.
공격자는 이 경쟁 조건 창에 NTFS 리파스 포인트인 junction, mount point, symlink를 삽입한다. 그러면 Defender의 SYSTEM 권한 파일 쓰기가 System32처럼 높은 권한이 필요한 경로로 향하도록 바뀔 수 있다. 성공하면 MsMpEng.exe를 부모 프로세스로 하는 SYSTEM 무결성 수준의 cmd.exe가 생성된다.
성공률은 환경마다 크게 다르다. 일부 환경에서는 100%에 가까운 성공률이 보고된 반면, 다른 환경에서는 거의 성공하지 못했다. CPU 속도, 스케줄러 동작, 시스템 부하처럼 경쟁 조건의 타이밍에 영향을 주는 하드웨어 및 실행 환경이 원인이다. Visual Studio Code가 설치된 환경에서 익스플로잇이 활성화되는 특성도 있어, VS Code를 널리 쓰는 개발자 워크스테이션이 우선 표적이 된다.
초기 경로에는 Defender의 SMB 원격 파일 공유 처리 과정에서 .vhd/.vhdx 마운트와 junction 공격을 묶은 RCE 경로도 포함돼 있었다. Microsoft는 2026년 5월 중순 mpengine!SysIO* API를 silent patch해 R2L/R2R symlink 평가를 차단했고, 원격 경로는 막았다. 다만 로컬 LPE 경로는 2026년 6월 10일 PoC 공개 시점까지 전용 패치 없이 남아 있었다.
Nightmare Eclipse가 묶어 공개한 공격 흐름
Nightmare Eclipse의 공개물은 개별 취약점 목록보다, SYSTEM 권한 지속성을 목표로 설계된 공격 체인으로 봐야 한다. 2026년 4월부터 6월까지 7개 Windows 제로데이가 4단계로 이어졌다.
초기 권한 상승에는 BlueHammer, RedSun, MiniPlasma 중 환경에 맞는 경로를 선택한다. BlueHammer(CVE-2026-33825)는 RoguePlanet과 유사하게 junction으로 System32 쓰기를 유도하며, 2026년 4월 패치됐다. MiniPlasma는 2020년에 패치된 CVE-2020-17103이 Cloud Files Mini Filter 드라이버에서 회귀한 사례다.
UnDefend는 Defender를 무력화하고 이벤트 로그를 억제해 후속 단계의 EDR/AV 가시성을 낮춘다. CVE가 할당되지 않은 미패치 상태로 남아 탐지 회피 도구로 기능한다.
YellowKey(CVE-2026-45585)는 USB 또는 EFI 미디어의 악성 FsTx 폴더를 이용해, 물리 접근 환경에서 BitLocker 복구 키 없이 WinRE의 무제한 셸에 접근하도록 한다. 마지막 단계에서 GreenPlasma(CVE-2026-45586)와 RoguePlanet은 서로 다른 SYSTEM 권한 상승 및 지속성 경로를 제공한다. 한 경로가 실패하거나 탐지돼도 다른 경로를 사용할 수 있는 구조다.
리파스 포인트가 경쟁 조건에 개입하는 방식
RoguePlanet은 파일 경로 확인과 실제 파일 쓰기 사이의 시간을 노린다. 공격이 성립하는 흐름은 다음과 같다.
성공 여부는 경쟁 조건 창의 크기와 그 시점에 개입하는 정밀도에 달려 있다. 단일 스레드에서는 성공률이 매우 낮지만, 멀티스레드로 junction 삽입을 반복하면 성공률이 크게 높아진다. 고성능 멀티코어 시스템과 단일 코어 또는 저사양 시스템에서 성공률이 비대칭적으로 나타나는 배경이다.
Visual Studio Code의 파일 변경 감시(File Watcher)는 Defender 실시간 보호와 상호작용하며 경쟁 조건 창을 더 안정적으로 열 수 있다. 보안 소프트웨어와 개발 도구의 연동이 별도의 공격 표면이 될 수 있음을 보여준다.
ctfmon.exe와 WinRE를 이용하는 다른 경로
GreenPlasma(CVE-2026-45586)는 텍스트 서비스 프레임워크 모니터인 ctfmon.exe를 노린다. 레지스트리 설정과 오브젝트 매니저 권한을 조작해 임의의 메모리 섹션 객체를 ctfmon.exe 프로세스 공간에 삽입하는 방식이다. ctfmon.exe가 SYSTEM 무결성 수준에서 실행되므로, 하이재킹에 성공하면 비권한 계정에서 SYSTEM으로 직접 상승할 수 있다.
YellowKey(CVE-2026-45585, CVSS 6.8 Medium)는 물리 접근이 가능한 시스템을 대상으로 한다. WinRE 부팅 과정에서 이동식 미디어에 FsTx 폴더를 배치하면 BitLocker 복구 키 없이 암호화된 드라이브의 무제한 셸에 접근할 수 있다. CVSS가 Medium인 이유는 물리 접근이 필요하기 때문이지만, 노트북이나 공공장소의 배치 단말처럼 물리 보안이 약한 환경에서는 Critical에 가까운 위협이 된다.
GreenPlasma와 YellowKey는 2026년 6월 Patch Tuesday의 KB5094126으로 패치됐지만, UnDefend와 RoguePlanet은 미패치 상태로 남았다.
영향 범위와 운영상 위험
RoguePlanet의 대상은 Microsoft Defender가 설치된 Windows 환경이다. Windows 10과 Windows 11에서는 KB5094126 적용을 포함한 완전 패치 환경에서도 SYSTEM 셸 획득이 독립 연구자들에 의해 검증됐다. Windows Server 적용 가능성은 신뢰성 낮음(low confidence)으로 보고됐으나, 적응 변형으로 확장될 가능성은 배제할 수 없다.
CVSS 9.6만으로는 운영 위험을 모두 설명하기 어렵다. 패치가 끝난 시스템에서도 동작하는 특성, 공개 후 48시간 이내 독립 검증이 이뤄진 짧은 무기화 사이클, UnDefend를 조합했을 때 EDR 행위 기반 탐지까지 약화될 수 있는 점이 함께 작용한다.
7개 제로데이로 구성된 캠페인은 개별 취약점의 단순 합보다 큰 위험을 만든다. 대체 LPE, 탐지 회피, 물리 접근, 지속성 경로가 상호 보완되며, UnDefend와 RoguePlanet의 미패치 상태는 방어 측의 지속적 노출로 이어진다.
Patch Tuesday 주기를 노린 공개 시점
공개 시점은 Patch Tuesday와 맞물려 있었다.
BlueHammer는 PoC 공개 뒤 실제 악용 확인까지 약 10일이 걸린 반면, RoguePlanet은 공개 48시간 안에 독립 검증이 끝났다. 캠페인이 진행될수록 보안 커뮤니티의 관심과 익스플로잇 기술 수준이 함께 높아졌음을 시사한다.
YellowKey와 GreenPlasma를 Patch Tuesday 다음 날 동시에 공개한 것은 조직의 패치 시험·배포 지연을 활용하려는 전략으로 분석된다. 기업 환경에서는 패치의 시험과 배포에 통상 2~4주가 걸리므로, 이 간격이 공격 기회가 된다.
Nightmare Eclipse 행위자는 Microsoft MSRC와의 개인적 분쟁에서 비롯된 보복 캠페인이라고 스스로 밝히고 있다. 전직 Microsoft 직원 또는 장기 취약점 연구자로 추정되며, Windows 커널과 Defender 내부 구조에 관한 지식이 연속적인 고품질 익스플로잇 공개를 가능하게 했다는 분석이 나온다.
전용 패치 전까지 적용할 방어 통제
RoguePlanet 전용 패치가 없는 동안에는 다계층 방어가 필요하다. 우선 2026년 6월 Patch Tuesday의 KB5094126을 모든 시스템에 적용해야 한다. 이 패치는 GreenPlasma(CVE-2026-45586), YellowKey(CVE-2026-45585), MiniPlasma, BlueHammer(CVE-2026-33825)를 포함한 200개 취약점을 수정한다. RoguePlanet(CVE-2026-47281)은 별도 패치를 기다리면서 완화 통제를 병행해야 한다.
탐지 규칙은 프로세스 계보를 기준으로 둔다. MsMpEng.exe가 부모 프로세스이고 SYSTEM 무결성의 cmd.exe 또는 powershell.exe가 생성되는 이벤트는 즉시 경보 대상이다. ThreatLocker가 확인한 바에 따르면 WDAC 또는 AppLocker를 강제 모드로 적용한 애플리케이션 허용 목록은 RoguePlanet PoC 바이너리 실행 자체를 막을 수 있다.
중기적으로는 Defender의 mpengine 기반 SysIO 작업 경로를 EDR 정책으로 감시하고, symlink/junction 기반 경로 리다이렉션 이벤트를 차단하는 가상 패치(Virtual Patch)를 고려한다. R2L/R2R symlink가 비활성화됐는지 확인하고, 그룹 정책으로 VHD/VHDX 마운트를 비활성화한다.
YellowKey에는 TPM+PIN BitLocker 보호, 이동식 미디어 제한, 펌웨어 부팅 순서 잠금, BIOS 패스워드 설정, WinRE BootExecute 레지스트리의 autofstx.exe 제거가 대응 수단이다. GreenPlasma에는 ctfmon.exe 상호작용 링펜싱(Ringfencing)과 레지스트리 오브젝트 매니저 권한 변경 이벤트 감시가 필요하다.
초기 코드 실행 자체를 줄이는 최소 권한 원칙과 관리자 계정 분리도 함께 적용해야 한다. 권한 있는 접근 워크스테이션(PAW), 타사 EDR 추가 배치, Visual Studio Code의 June 2026 Patch Tuesday 이후 버전 업데이트가 구조적 방어를 보완한다.
취약점 관리 체계가 받아들여야 할 신호
RoguePlanet은 CVSS만으로 우선순위를 정하는 취약점 관리의 한계를 보여준다. CVSS 9.6은 기술적 심각도를 표현하지만, 패치 적용 환경 바이패스와 연계 캠페인이라는 운영 맥락의 위험은 단일 점수에 담기지 않는다.
공격 트리 관점에서는 SYSTEM 권한 지속성이라는 루트 목표 아래 대체 LPE 경로인 BlueHammer, RedSun, MiniPlasma가 OR 노드로, 탐지 우회와 지속성 경로인 UnDefend 및 GreenPlasma/RoguePlanet이 AND 노드로 결합한 4단계 구조다.
TOCTOU는 동시성 제어와 원자성의 보안적 의미를 드러낸다. 파일 경로를 검증하고 작업을 수행하는 과정은 원자적 단위여야 하며, 이 원칙이 깨질 때 경로 재지정 공격이 가능해진다. 데이터베이스 트랜잭션의 원자성은 보안 코딩에서도 같은 의미를 갖는다.
패치를 모두 적용해도 RoguePlanet 같은 잔여 위험은 남을 수 있다. 따라서 패치 관리와 함께 다계층 방어, 행위 탐지, 엔드포인트와 독립된 네트워크 기반 IDS/IPS를 운용해야 한다. UnDefend가 Defender 이벤트를 억제하는 경우에는 특히 독립적인 탐지 수단이 필요하다.
조직 내부에서 악용되면 SYSTEM 권한으로 개인정보를 대량 탈취할 수 있어 정보통신망법 및 개인정보보호법상 기술적 보호 조치와 신고, 통지, 조사 협조 문제로도 이어질 수 있다.
보안 소프트웨어를 신뢰 경계 밖에서 다시 보기
이 사례는 국가 지원 조직만이 아니라 연계된 제로데이를 개발하고 전략적으로 공개하는 단독 연구자도 위협 모델에 포함해야 한다는 점을 보여준다. 7개 취약점을 엮은 Nightmare Eclipse 캠페인은 그러한 역량의 사례다.
Defender, AV, EDR은 SYSTEM 무결성으로 동작한다. 이들 구성 요소의 취약점은 LPE나 RCE로 곧바로 연결될 수 있으며, BlueHammer에서 RoguePlanet으로 이어진 Defender 기반 취약점 시리즈가 이를 드러낸다.
Patch Tuesday 직전이나 직후 공개되는 취약점은 패치 공백을 키운다. 조직은 Out-of-Band(비정기) 패치 배포 절차와 Patch Tuesday 뒤 긴급 패치 적용 절차를 별도로 마련해야 한다. 전용 패치가 없는 시점에 WDAC/AppLocker 허용 목록과 프로세스 계보 기반 탐지가 완화 수단으로 기능했다는 점도 중요하다.
마지막으로, Nightmare Eclipse가 MSRC와의 공개 합의 위반을 주장하며 보복 캠페인을 전개한 사례는 Coordinated Vulnerability Disclosure 과정에서 연구자와 벤더의 신뢰 기반 협력이 보안 거버넌스의 일부임을 보여준다.
Sources
- BleepingComputer — Microsoft Defender RoguePlanet Zero-Day
- Picus Security — RoguePlanet Anatomy of the Nightmare Eclipse
- Barracuda Blog — Nightmare Eclipse Zero-Days Grudge
- Threat Modeling — Windows Defender RoguePlanet CVE-2026-47281
- ThreatLocker — YellowKey and GreenPlasma Zero-Day Exploits
- The Hacker News — Microsoft Defender RoguePlanet Zero-Day
- SecurityWeek — New Windows Zero-Day Exploit RoguePlanet Released
- CybersecurityNews — Windows Defender 0-Day Exploit RoguePlanet
- CybelAngel — RoguePlanet Microsoft Defender Zero-Day 2026
- BleepingComputer — Microsoft Patches YellowKey GreenPlasma MiniPlasma
- LevelBlue — YellowKey and GreenPlasma Two New Windows Zero-Days
- DailySecurityReview — RoguePlanet Zero-Day SYSTEM on Patched Windows