
jump over aslr: ASLR को बायपास करने के लिए branch predictors पर हमला करने की तकनीक
लेखक: Byte Reaper
यह रिपॉज़िटरी रिसर्च C इम्प्लीमेंटेशन है जो एड्रेस स्पेस लेआउट रैंडमाइज़ेशन (ASLR) के संदर्भ में ब्रांच प्रेडिक्टर्स, स्पेक्युलेटिव एक्ज़ीक्यूशन, और कैश-आधारित साइड चैनलों से संबंधित अवधारणाओं को प्रदर्शित करता है।
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
ASLR को बाइपास करें : https://www.cs.ucr.edu/~nael/pubs/micro16.pdf
MIT