
Demo del metodo di exploit hbp del kernel Linux. (cioè la versione degradata di CVE-2022-42703)
fork da https://github.com/veritas501/hbp_attack_demo
Riferimento al blog P0: https://googleprojectzero.blogspot.com/2022/12/exploiting-CVE-2022-42703-bringing-back-the-stack-attack.html
Ho buttato giù un modulo vuln, fingendo di avere una primitiva di scrittura in un indirizzo arbitrario del kernel, ma con kaslr attivo per ora non c'è alcuna leak di indirizzi.
Quindi, sfruttando la proprietà che cpu_entry_area non partecipa alla randomizzazione di kaslr e la proprietà che i breakpoint hardware possono essere innescati in modalità kernel, è possibile ottenere la leak di kaslr e canary dallo stack del kernel ed effettuare l'escalation dei privilegi tramite un attacco ROP.
blog: https://veritas501.github.io/2023_03-22-一种借助硬件断点的提权思路分析与演示

wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.103.tar.xz
ctrl + \ per uscire da qemu
La vmlinux con i simboli è troppo grande, viene rifiutata, si può usare solo bzImage.