nullmap
Un mappatore di driver manuale molto semplice basato sul mio vecchio voidmap e sul POC per CVE-2023-21768 di chompie e b33f. Poiché la primitiva di lettura/scrittura della memoria di post-sfruttamento di IoRing non gestisce molto bene molte letture e scritture consecutive, ho deciso di sovrascrivere CR4 per disabilitare SMEP/SMAP per eseguire il driver mappato in spazio utente. Testato su Windows 11 22H2 (22621.525).
Utilizzo:
nullmap.exe <path_to_driver>
Possibili problemi:
- Il driver mappato manualmente si troverà in un pool allocato da ExAllocatePool. Se si desidera utilizzarlo per scopi più seri, si dovrebbe considerare di trovare un modo migliore di allocazione della memoria in modo che non possa essere scaricato così facilmente.
- Non esiste un modo semplice per leggere il valore originale di cr4, il che significa che ho dovuto codificare il valore presente sul mio sistema. Anche se dovrebbe essere lo stesso per la maggior parte delle CPU moderne, è comunque consigliabile ricontrollare che il valore sia corretto.
- Ho codificato l'offset di NtGdiGetEmbUFI poiché non esiste un modo semplice per eseguire una scansione delle firme, il che significa che dovrai aggiornare questo offset per la tua specifica build di Windows.
- È stato scritto in un pomeriggio, potrebbe non essere la base di codice più pulita.
Video:
