
Linux 커널 hbp 익스플로잇 방법 데모. (즉, CVE-2022-42703의 저하된 버전)
fork from https://github.com/veritas501/hbp_attack_demo
vuln 모듈을 만들어서, 커널 임의 주소 쓰기 원시어(primitive)가 있다고 가정했지만, kaslr이 켜져 있어 주소 누출이 없는 상황이다.
따라서 cpu_entry_area가 kaslr 무작위화에 참여하지 않는 특성과 하드웨어 중단점이 커널 모드에서 트리거될 수 있는 특성을 이용하여, 커널 스택에서 kaslr과 canary를 누출하고 ROP 공격을 통해 권한 상승을 수행할 수 있다.
blog: 하드웨어 중단점을 이용한 권한 상승 방법 분석 및 시연

wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.103.tar.xz
ctrl + \ 로 qemu 종료
심볼이 포함된 vmlinux는 너무 커서 거절되므로 bzImage만 사용 가능.