
Cobalt Strike (CS) Beacon Object File (BOF) per lo sfruttamento del kernel tramite il driver Ryzen Master di AMD (versione 17).
Cobalt Strike Beacon Object File per lo sfruttamento del kernel tramite il driver Ryzen Master di AMD (versione 17).
Creato da Tijme. Un ringraziamento ad Alex per avermi insegnato! Reso possibile da Northwave Security
Questo è un Beacon Object File (BOF) ed eseguibile per Cobalt Strike (CS) che sfrutta il driver Ryzen Master di AMD (versione 17). Sovrascrive solo il token del processo beacon con il token del processo di sistema. Ma, proprio come KernelMii, questo BOF è principalmente una buona base per ulteriori sfruttamenti del kernel tramite CS. Puoi usarlo per disabilitare EDR, disabilitare ETW TI, eseguire il dump di LSASS PPL o eseguire altre azioni dannose non rilevate.
Ho inizialmente identificato questa vulnerabilità (se possiamo chiamarla vulnerabilità, considerando che il percorso da amministratore a kernel non è considerato un confine di sicurezza) durante alcune ricerche sui driver di kernel. Ho identificato quattro vettori di attacco nel driver. Successivamente ho scoperto che @h0mbre aveva identificato due di questi vettori nel 2020 (CVE-2020-12928). Allora, ogni utente del sistema poteva aprire handle al link simbolico. AMD lo ha 'risolto' limitando l'accesso agli amministratori locali. Ma dal punto di vista di un attaccante e del red teaming, è ancora molto utile.
Ho sviluppato e testato questo exploit su Windows 10 Pro 22H2 19045.2486. L'eseguibile è abbastanza stabile. I beacon di Cobalt Strike hanno una limitazione dello stack di 4096 byte, quindi è meno probabile che funzioni (anche se durante lo sviluppo ha sempre funzionato). L'eseguibile dovrebbe funzionare sempre.
Prima clona questo repository. Poi esamina il codice, compila dal sorgente e usalo in Cobalt Strike.
Compilazione
make
Utilizzo
Carica lo script AMDRyzenMasterDriverV17Exploit.cna tramite lo Script Manager di Cobalt Strike. Poi usa il comando seguente per eseguire l'exploit.
$ amd_ryzen_master_driver_v17_exploit
In alternativa (e a scopo di test), puoi eseguire direttamente l'eseguibile compilato. Questo aprirà un prompt dei comandi come SYSTEM.
$ .\AMDRyzenMasterDriverV17Exploit.x64.exe
Problemi o nuove funzionalità possono essere segnalati tramite il tracker dei problemi. Prima di inviarne uno nuovo, assicurati che il tuo problema o la tua funzionalità non sia già stato segnalato da qualcun altro.
Copyright (c) 2022 Tijme Gommers & Northwave Security. Tutti i diritti riservati. Consulta LICENSE.md per la licenza completa.