
CVE-2026-36425 OPSWAT AppRemover (ardrv.sys) 부적절한 접근 제어 보안 권고
요청 시 모든 프로세스를 종료할 수 있는 서명된 OPSWAT 커널 드라이버입니다. 관리자 권한이 필요 없고, 권한 검사도 없으며, 어떤 질문도 하지 않습니다. EDR, 안티바이러스, PPL로 보호된 프로세스를 지정하면 해당 프로세스가 종료됩니다. 세 가지 종료 방법이 모두 커널 모드에서 실행되며, 모든 로컬 사용자의 단일 IOCTL로 트리거됩니다. 16개의 취약한 드라이버 변종이 확인되었으며, 모두 유효하게 서명되었습니다.
⚠️ 이 저장소는 교육 및 연구 목적으로만 제공됩니다. 저자는 제공된 정보나 도구의 오용에 대해 책임을 지지 않습니다.
📝 블로그 게시물: CVE-2026-36425 소개 | OPSWAT EDR Terminator
블로그 게시물에서 우리는 IDA Pro에서 드라이버의 전체 리버스 엔지니어링 과정을 DriverEntry 설정부터 IOCTL 디스패치 체인까지 살펴보고, 드라이버가 내부적으로 사용하는 세 가지 프로세스 종료 방법을 분석합니다. 또한 유명한 EDR 중 하나를 대상으로 서명된 드라이버를 로드하고 커널 모드에서 에이전트를 종료하는 실시간 테스트도 시연합니다.
| 필드 | 세부 정보 |
|---|---|
| CVE | CVE-2026-36425 |
| 공급업체 | OPSWAT, Inc. |
| 제품 | AppRemover 드라이버 (ardrv.sys) |
| 영향을 받는 버전 | v2017.10.02.1551 및 이전 버전 |
| 취약점 유형 | 부적절한 접근 제어 (CWE-284) |
| 영향 | 임의 프로세스 종료, EDR 우회, 서비스 거부 |
| 공격 경로 | 로컬 |
| 필요한 권한 | 낮음 (모든 로컬 사용자) |
| 테스트 환경 | Windows 10 / Windows 11 (x64) |
| 발견자 | Jehad Abudagga (@j3h4ck) |
OPSWAT AppRemover 커널 드라이버(ardrv.sys)는 권한 검증 없이 모든 로컬 사용자가 접근할 수 있는 디바이스 객체(\\.\ardrv)를 노출합니다. 드라이버의 IOCTL 핸들러 0x2420031은 호출자가 제공한 PID에 대해 세 가지 서로 다른 방법으로 프로세스 종료를 수행합니다:
KeAttachProcess를 통해 대상 프로세스에 연결하고 처음 4096개 페이지를 0xCC(INT3 중단점)로 덮어써서 크래시를 강제합니다.ObOpenObjectByPointer를 통해 프로세스를 열고 높은 PID 값에 대해 ZwTerminateProcess를 호출합니다.ZwTerminateJobObject를 통해 전체 Job을 종료합니다.세 가지 방법 모두 호출자 검증, 권한 검사가 없으며 중요 프로세스나 PPL 프로세스에 대한 보호 장치도 없는 커널 컨텍스트에서 실행됩니다. 이는 EDR/AV 에이전트 및 기타 보안 소프트웨어를 종료하는 데 악용될 수 있습니다.
ardrvkiller.exe <PID>
sc.exe create ardrv binPath="C:\path\to\ardrv_XX.sys" type=kernel
sc.exe start ardrv
ardrvkiller.exe 1234
16개 변종이 확인되었으며, 모두 OPSWAT가 서명했고 모두 동일한 취약점을 공유합니다.
| 날짜 | 이벤트 |
|---|---|
| 2026-02-25 | CVE Assignment Team에 CVE 요청 제출 |
| 2026-06-16 | CVE-2026-36425 배정 |
| 2026-07-17 | 공개 권고 발표 |
| 드라이버 | SHA256 |
|---|
| ardrv_1.sys | 0B4C5A2D24810748DE8CE6FB3D6A3E8ACD0305272D6425FA054632410D23EC80 |
| ardrv_2.sys | 1C5129B4D63F2D5252B5B02A0A7D655DAC3B6EAC23DD4ED92B4DD55F243387FF |
| ardrv_3.sys | 4D07B6423F4D5D80D2DAEC8FAED7ECC40855339BEE95C26289179C1FD083078E |
| ardrv_4.sys | 6B208CE68BA3F6C788BD89BA677EBF1C2407A55F9F43A42EA7207635634BAF66 |
| ardrv_5.sys | 07C5209BF83065FE760F4FEE4ED2308B0C523671F68CA73A3854C2C8C28C0541 |
| ardrv_6.sys | 7B3F8FA5844D829142002D47C2DF8573C7D67DEFE4171414C6A015A38AFE55F5 |
| ardrv_7.sys | 9F326EDE322930A7D5E149FA8720802B0623C1972DC54E41A2A73608FB6810DD |
| ardrv_8.sys | 34AD901B4FEA05DA301EBB619FA48CFAC058720E41DB71B3FCA1C47763BAE066 |
| ardrv_9.sys | 4574CF50DBE2FBCE849881E8875297753CE2E240C312E01B3B461D80DF063BBE |
| ardrv_10.sys | 75454A8583EA2A5B6C7711E9BF32C61B8A7E902F5C429FCBE36673CCC076E910 |
| ardrv_11.sys | 551254A5E59DF92E6049867162633E3E476CDF5999D05C3E23A57C98BE03F475 |
| ardrv_12.sys | 7504887E1E195AD585CFFA5B6A5034161A7CC49F351123D60DEF79302BDB8326 |
| ardrv_13.sys | 33233988D8C735FDF1162E043ED1E6FFF62E7D6102C5BD300561D71FD32526F3 |
| ardrv_14.sys | 59080957DE2519F5013BE8CCF0B9012DC97AD692E69578CB3F60148C528BDBB1 |
| ardrv_15.sys | D82108E6578F4866D7114D6847282C04F0B146809BC66DED3300FE993B42D20F |
| ardrv_16.sys | E3CB9F52A4FDE53FC886DC35D41BB36E8B993C74826389D22440B92D94480A6D |