ทีมนักวิจัยจาก Vrije University ประเทศเนเธอร์แลนด์ ประสบความสำเร็จในการบายพาสระบบป้องกัน ASLR บนสถาปัตยกรรม Microprocessor มากถึง 22 ราย ไม่ว่าจะเป็น Intel, AMD, ARM, Allwinner, Nvidia และอื่นๆ โดยใช้โค้ดภาษา JavaScript ง่ายๆ เท่านั้น เรียกการโจมตีนี้ว่า ASLR⊕Cache หรือ AnC

ASLR คืออะไร
ASLR หรือ Address Space Layout Randomization เป็นกลไกด้านความมั่นคงปลอดภัยของระบบปฏิบัติการ ซึ่งจะทำการสุ่มตำแหน่งของ Memory ที่ถูกใช้โดย Process ต่างๆ ส่งผลให้แฮ็คเกอร์ไม่สามารถรู้ได้ว่าจะทำการ Exploit Shellcode ที่ตำแหน่งไหนบน Memory
ASLR เป็นเทคโนโลยี Anti-exploitation สำหรับป้องกันช่องโหว่ Memory Corruption เช่น Stack และ Heap Overflow ส่งผลให้แฮ็คเกอร์ไม่สามารถส่งโค้ดแปลกปลอมเข้ามารันได้ (Arbitrary Code Execution) และป้องกันการแคลช แฮ็คเกอร์จะสามารถทำ Code Injection ได้ก็ต่อเมื่อทราบตำแหน่งของ Memory ที่ Process เป้าหมายหรือ OS Kernel ทำงานอยู่เท่านั้น
โจมตีผ่าน Memory Management Unit
AnC จะพุ่งเป้าโจมตีที่ Memory Management Unit (MMU) ซึ่งเป็นองค์ประกอบหนึ่งของสถาปัตยกรรม CPU ที่น้อยคนจะรู้จัก โดย MMU จะทำหน้าที่เพิ่มประสิทธิภาพในการดำเนินการบริหารจัดการ Cache ให้ดียิ่งขึ้น อย่างไรก็ตาม ทีมนักวิจัยพบว่า MMU มีการแชร์ Cache ของมันเองส่วนหนึ่งกับแอพพลิเคชันที่มีไม่น่าเชื่อถือ เช่น เว็บเบราเซอร์ ส่งผลให้นักวิจัยสามารถลอบส่งโค้ด JavaScript อันตรายที่พุ่งเป้าไปยังพื้นที่หน่วยความจำที่แชร์นี้ เพื่อแอบอ่านข้อมูลที่เก็บอยู่ข้างในได้
นั่นหมายความว่า AnC สามารถทะลุผ่านระบบป้องกัน ASLR และช่วยให้แฮ็คเกอร์สามารถอ่านข้อมูลส่วนหนึ่งในหน่วยความจำได้ ซึ่งแฮ็คเกอร์สามารถยกระดับการโจมตี เช่น ยกระดับสิทธิ์ในการเข้าถึงของตนเองเพื่อเข้าควบคุมระบบปฏิบัติการทั้งหมดได้
ทีมนักวิจัยระบุว่า พวกเขาประสบความสำเร็จในการทดสอบการโจมตีแบบ AnC บน Chrome และ Firefox บน สถาปัตยกรรม CPU 22 แบบ ต่อให้เว็บเบราเซอร์มีระบบป้องกัน เช่น Broken JavaScript Timer ก็ตาม ที่แย่กว่านั้นคือ การโจมตีแบบ AnC อาจถูกนำไปใช้เพื่อรื้อฟื้นการโจมตีจำพวก Blocked Cache Attack เพื่อเปิดช่องให้สามารถเจาะผ่านช่องโหว่แบบเก่าๆ ที่เจ้าของผลิตภัณฑ์เคยอุดไปแล้วได้
ติดตั้ง NoScript เพื่อป้องกันการรัน JavaScript
วิธีการเดียวที่ผู้ใช้จะป้องกันการโจมตีแบบ AnC ได้คือติดตั้ง Extension อย่าง NoScript เพิ่มลงไปในเว็บเบราเซอร์ เพื่อหยุดการรันโค้ด JavaScript ที่ไม่น่าเชื่อถือทั้งปวง
ตารางด้านล่างแสดง CPU Model และ Microarchitecture ทั้งหมดที่นักวิจัยทดสอบแล้วพบว่าได้รับผลกระทบ