[공격] 분석 — CVE-2026-6102
CVE-2026-6102 in the MSI Center NTIOLib_X64.sys driver enables a low‑privileged local user to perform an unchecked IOCTL Write‑What‑Where, granting SYSTEM‑level code execution – immediate patching and strict ACL hardening of the device object are required.
📋 요약
- 심각도 high · CVSS 7.8 · EPSS 0.00086 · 악용난이도 hard
🔍 공격 기법
- 정찰:
sc query ntio혹은 WinObj 등으로NTIOLib_X64서비스·드라이버와 그 디바이스 심볼릭 링크(\\.\NTIOLib_X64) 존재 여부를 확인한다. CVSS 벡터 AV:L/PR:L/UI:N 에 부합하는 로컬 탐색 단계이다. - 초기 접근: 일반 사용자 권한(또는 제한된 서비스 계정)으로 실행되는 악성 프로세스가
CreateFile("\\\\.\\NTIOLib_X64", …)를 호출해 디바이스 핸들을 획득한다. 드라이버가 로드돼 있어야 하며, ACL이 충분히 관대하면 접근이 가능하다. - 트리거 조건: 드라이버가 구현한 IOCTL 0x9B0C0004(또는 유사 코드) 에 입력 검증이 전혀 없으며, 사용자 제공 버퍼를 그대로 커널 주소에 복사한다. 공격자는
- 목표 커널 주소(예: 현재 프로세스
_EPROCESS.Token필드) - 원하는 토큰 값(SYSTEM Token)
을 포함한 구조체를 전송한다. 내부memcpy‑류 함수가 Write‑What‑Where 를 수행해 토큰을 덮어쓴다.
- 목표 커널 주소(예: 현재 프로세스
- 권한 획득: 토큰이 SYSTEM 으로 교체되면 프로세스는 즉시 SYSTEM 권한을 보유하게 된다. 이후
CreateProcessAsUser로 SYSTEM 쉘을 띄우거나, 커널 메모리 내에 셸코드를 실행한다. - 지속·영향: SYSTEM 권한으로 레지스트리·서비스·크리덴셜(LSASS) 등을 자유롭게 조작할 수 있다. 공격자는 백도어 설치, 도메인 관리자 해시 탈취 등 전사적 침투를 진행한다.
전제 조건:
- 드라이버가 로드된 상태이며, 디바이스 객체에 일반 사용자에게
GENERIC_WRITE권한이 부여돼 있어야 한다(ACL 미설정). - 공격자는 이미 저권한 코드 실행 능력을 확보해야 하며(예: 피싱·스크립트), 이는 CVSS PR:L 조건을 만족한다.
악용 가능성: CVSS 벡터 AV:L/AC:L/PR:L/UI:N은 공격자가 이미 로컬에 존재하고, 낮은 권한(일반 사용자)만으로도 복잡도가 낮은 방법으로 실행할 수 있음을 의미하지만, 시스템 내부에서 NTIOLib_X64.sys 드라이버의 IOCTL 인터페이스에 접근해야 하는 전제조건이 포함됩니다. EPSS 0.00086이라는 실측값과 KEV에 미등재된 점은 현재 공개적으로 악용되는 사례가 거의 없으며, 이론적인 심각도와는 별개로 실제 위협이 제한적임을 보여줍니다. 공격자는 먼저 로컬에서 저권한 프로세스를 실행한 뒤, 해당 프로세스로부터 드라이버에 특수히 조작된 IOCTL 명령을 전달해 “origin validation” 검증을 회피해야 합니다. NTIOLib_X64.sys는 MSI Center 설치 시 시스템 서비스와 연동되는 커널 모드 드라이버이며, 노출된 엔드포인트는 주로 \\.\NTIOLib_X64 같은 디바이스 객체와 해당 IOCTL 코드(예: IOCTL_NTIO_SET_COMMAND)입니다. 이 IOCTL은 입력 파라미터의 출처를 충분히 검증하지 않으므로, 공격자는 임의의 구조체를 삽입해 권한 상승을 시도할 수 있지만, 드라이버가 로컬에서만 호출 가능하고, 일반 사용자 계정에서도 접근이 제한될 수 있는 ACL 때문에 실제 이용 난이도는 “hard”로 평가됩니다. 따라서 이 취약점은 로
💥 영향 분석
- SYSTEM 토큰 탈취 → 모든 파일, 레지스트리, 네트워크 자원에 무제한 접근.
- 시스템 서비스·드라이버 수정, LSASS 메모리 덤프 등으로 도메인 인증 정보 유출 가능.
- 지속적 루트킷·백도어 설치가 쉬워져 장기적인 침해가 발생한다.
🔗 관련 취약점·체이닝
- 유형: 입력 검증 부재에 의한 커널 메모리 쓰기(Write‑What‑Where) → 권한 상승 (CWE‑? 정확한 번호는 확인되지 않음).
- 가능 체인:
- 로컬 LPE(CVE-2026-6102) → 토큰 탈취
- 탈취된 SYSTEM 권한으로 기존 로컬 권한 상승 취약점(예: 서비스 권한 오버플로우) 혹은 크리덴셜 덤프 툴을 이용해 도메인 관리자 해시 획득
- 확보한 도메인 권한으로 원격 침투·RCE 수행.
- 추정: 동일 시스템에 다른 로컬 드라이버 취약점이 존재한다면, 먼저 악성 드라이버를 로드해
NTIOLib_X64.sys의 ACL을 우회하거나 서비스 중단 후 IOCTL 공격을 보다 쉽게 수행할 수 있다.
🔎 탐지
- Sysmon Event ID 13(Driver Load)와 Event ID 7/8(Process Access)에서 비‑SYSTEM 계정이
\\.\NTIOLib_X64디바이스를 열 때 경고. - Kernel ETW 또는 Process Monitor 에서 IOCTL 코드 0x9B0C0004 호출을 캡처하고, 입력 버퍼 크기가 비정상적으로 큰 경우 알림.
- ACL 변경 이벤트(
sc sdshow ntio결과 변동) 혹은DeviceObject에 대한GENERIC_WRITE권한 부여 로그를 모니터링한다.
🛡️ 완화 방안
- 패치 적용 – MSI 공급업체가 제공하는 최신 업데이트를 즉시 배포한다(우선순위 scheduled, 이번 주 내).
- 디바이스 ACL 하드닝 –
sc sdset NTIOLib_X64 D:(A;;GRGX;;;SY)(A;;GA;;;BA)등으로 일반 사용자에게GENERIC_WRITE를 차단한다. - 드라이버 로드 제한 – Windows Defender Application Control(WDAC)·AppLocker 정책을 이용해
NTIOLib_X64.sys의 로드를 허용된 신뢰 체인에만 한정한다. - 실시간 모니터링 – Sysmon, ETW, SIEM 에 위 탐지 규칙을 적용하고, 비정상적인 토큰 변조 시도 발생 시 즉시 알림하도록 설정한다.
우선순위 논리: 교차검증(다중 소스 일관성 신뢰도 1.0)·CVSS 7.8·non‑KEV·EPSS 0.00086·exploit hard 로 판단해 “scheduled (이번 주 내)” 로 지정되었으며, 높은 영향과 낮은 실제 악용 확률이 결합돼 빠른 패치와 ACL 강화가 핵심 대응이다.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.8 · non-KEV · EPSS=0.00086 · exploit=hard · in_scope=None