
분기 예측기를 공격하여 ASLR을 우회하는 점프 오버 ASLR 기법
저자: Byte Reaper
이 저장소는 ASLR(주소 공간 레이아웃 무작위화) 맥락에서 분기 예측기, 추측 실행 및 캐시 기반 부채널과 관련된 개념을 시연하는 연구용 C 구현을 포함합니다.
Linux x86_64
GCC
CPU that supports BTB
gcc btb.c -o BTB
./BTB
[+] check System Security for Check branch predictors...
[+] Sleep Success.
[-] Not Detect Single Thread Indirect Branch Predictors.
[-] Not Detect Indirect Branch Restricted Speculation
[-] Not Detect Speculative Store Bypass Disable .
[+] Detect L1D_FLUSH.
[+] Detect MD_CLEAR.
[-] Not Detect IA32_ARCH_CAPABILITIES.
[+] Result Detect Branch predictors :
[+] Detect Branch predictors
[+] Get Address victimValue() function Success.
...
인텔 문서 MSR / cpuid : https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/cpuid-enumeration-and-architectural-msrs.html
jump over aslr : https://www.cs.ucr.edu/~nael/pubs/micro16.pdf
MIT