
CVE-2026-36425 Avviso di controllo di accesso improprio in OPSWAT AppRemover (ardrv.sys)
Un driver kernel OPSWAT firmato che termina qualsiasi processo su richiesta. Nessun diritto di amministratore richiesto, nessun controllo dei privilegi, nessuna domanda. Puntalo a un EDR, a un antivirus, a un processo protetto da PPL e muore. Tre diversi metodi di terminazione, tutti eseguiti in modalità kernel, tutti attivati da una singola IOCTL da qualsiasi utente locale. Identificate 16 varianti vulnerabili del driver, tutte validamente firmate.
⚠️ Questo repository è solo a scopo didattico e di ricerca. L'autore non è responsabile per qualsiasi uso improprio delle informazioni o degli strumenti forniti.
📝 Articolo del blog: Presentazione di CVE-2026-36425 | OPSWAT EDR Terminator
Nell'articolo del blog illustriamo l'intero processo di reverse engineering del driver in IDA Pro, dalla configurazione di DriverEntry alla catena di dispatch delle IOCTL, e analizziamo i tre diversi metodi di terminazione dei processi che il driver utilizza internamente. Dimostriamo anche un test dal vivo contro uno dei famosi EDR, caricando il driver firmato e terminando l'agente dalla modalità kernel.
| Campo | Dettagli |
|---|---|
| CVE | CVE-2026-36425 |
| Fornitore | OPSWAT, Inc. |
| Prodotto | AppRemover Driver (ardrv.sys) |
| Versioni interessate | v2017.10.02.1551 e precedenti |
| Tipo di vulnerabilità | Controllo degli accessi improprio (CWE-284) |
| Impatto | Terminazione arbitraria dei processi, bypass EDR, denial of service |
| Vettore di attacco | Locale |
| Privilegi richiesti | Basso (qualsiasi utente locale) |
| Testato su | Windows 10 / Windows 11 (x64) |
| Trovato da | Jehad Abudagga (@j3h4ck) |
Il driver kernel AppRemover di OPSWAT (ardrv.sys) espone un device object (\\.\ardrv) accessibile a qualsiasi utente locale senza validazione dei privilegi. Il gestore IOCTL del driver 0x2420031 esegue la terminazione dei processi su un PID fornito dal chiamante utilizzando tre metodi distinti:
KeAttachProcess e sovrascrive le prime 4096 pagine con 0xCC (breakpoint INT3), forzando un crash.ObOpenObjectByPointer e chiama ZwTerminateProcess per valori PID elevati.ZwTerminateJobObject come fallback.Tutti e tre i metodi vengono eseguiti nel contesto del kernel senza validazione del chiamante, senza controlli dei privilegi e senza protezione per i processi critici o PPL. Questo può essere sfruttato per terminare agenti EDR/AV e altri software di sicurezza.
ardrvkiller.exe <PID>
sc.exe create ardrv binPath="C:\path\to\ardrv_XX.sys" type=kernel
sc.exe start ardrv
ardrvkiller.exe 1234
16 varianti identificate, tutte firmate da OPSWAT, tutte con la stessa vulnerabilità.
| Data | Evento |
|---|---|
| 2026-02-25 | Richiesta CVE inviata al CVE Assignment Team |
| 2026-06-16 | CVE-2026-36425 assegnato |
| 2026-07-17 | Advisory pubblica pubblicata |
| Driver | 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 |