พบช่องโหว่บายพาส ASLR บน Intel Haswell CPU เสี่ยงถูก Code Injection

ทีมนักวิจัยจาก Binghamton University – State University of New York และ University of California, Riverside ประกาศค้นพบช่องโหว่บน ASLR ซึ่งเป็นเทคโนโลยี Anti-exploitation ของ Intel Haswell CPU ซึ่งช่วยให้แฮ็คเกอร์สามารถบายพาสระบบป้องกันเพื่อโจมตีแบบ Buffer Overflow รวมไปถึงส่งโค้ดแปลกปลอมเข้าไปรันบน Memory ได้

ttt_skull_on_chip-Carsten_Reisinger
Carsten Reisinger/ShutterStock

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 ทำงานอยู่เท่านั้น

บายพาส ASLR ผ่านทางช่องโหว่บน BTB

ทีมนักวิจัยระบุว่า พบช่องโหว่บน Branch Target Buffer (BTB) ซึ่งเป็นกลไกการทำ Caching ของ Branch Target Predictor บน CPU การทำ Branch Prediction นี้ถูกใช้ใน CPU สมัยใหม่ (เช่น Haswell CPU) เพื่อเพิ่มขีดความสามารถของประสิทธิภาพ ซึ่งช่องโหว่ดังกล่าวช่วยให้สามารถดึงข้อมูลตำแหน่ง ASLR ออกมาได้ โดยอาศัยการทำ BTB Collision ระหว่าง Process ของผู้ใช้ที่แตกต่างกัน หรือระหว่าง Process กับ Kernel

“BTB เก็บตำแหน่งของ Branch Instructions ที่เพิ่งถูก Execute ไป ส่งผลให้เมื่อทำ BTB Lookup จะสามารถร้องขอตำแหน่งเหล่านั้นเพื่อทำการดึง Branch Instructions ในรอบถัดไปได้อย่างถูกต้อง และเนื่องจาก BTB ถูกแชร์โดยแอพพลิคเคชันหลายตัวที่ Execute อยู่ในคอร์เดียวกัน ส่งผลให้อาจเกิดการรั่วไหลของข้อมูลระหว่างแอพพลิเคชันผ่านทางการโจมตีแบบ BTB-based Side-channel ได้” — เอกสารงานวิจัยระบุ

ทีมนักวิจัยได้นำเสนอการค้นพบช่องโหว่ ณ งานสัมมนาเชิงวิชาการ IEEE/ACM International Symposium on Microarchitecture ครั้งที่ 49 ที่เมืองไทเป ประเทศไต้หวัน ที่เพิ่งจัดไปเมื่อไม่กี่วันที่ผ่านมา โดยสาธิตการทำ BTB-based ASLR Bypass กับเครื่องคอมพิวเตอร์ที่ใช้ Intel Haswell CPU และรันระบบปฏิบัติการ Linux เวอร์ชัน 4.5 ซึ่งสามารถทราบตำแหน่งของ ASLT ได้ภายในเวลาเพียง 60 มิลลิวินาทีเท่านั้น แต่เชื่อว่าสามารถโจมตีระบบปฏิบัติ Windows และ Mac OS X ได้ด้วยเช่นกัน

รับมือกับการโจมตี BTB-based Side-channel ได้อย่างไร

นักวิจัยได้เสนอวิธีป้องกันช่องโหว่ดังกล่าวทั้งแบบ Software และ Hardware-based รวมไปถึงการทำ Harden ระบบ ASLR อีกด้วย ผู้ที่สนใจสามารถดูรายละเอียดเพิ่มเติมได้ที่ http://www.cs.ucr.edu/~nael/pubs/micro16.pdf

ที่มา: http://www.networkworld.com/article/3132965/flaw-in-intel-cpus-could-help-attackers-defeat-aslr-exploit-defense.html

About techtalkthai

ทีมงาน TechTalkThai เป็นกลุ่มบุคคลที่ทำงานในสาย Enterprise IT ที่มีความเชี่ยวชาญทางด้าน Network, Security, Server, Storage, Operating System และ Virtualization มารวมตัวกันเพื่ออัพเดตข่าวสารทางด้าน Enterprise IT ให้แก่ชาว IT ในไทยโดยเฉพาะ

Check Also

F5 ประกาศเปิดตัว NGINX One รวมศูนย์การจัดการทุกความสามารถ

NGINX One เป็นการบูรณาการความสามารถ Load Balancing, API Gateway, Security และ ความสามารถด้านเว็ปแอปพลิเคชันเข้าด้วยกัน พูดง่ายๆคือตอนนี้ผู้ใช้สามารถจัดการ NGINX และ NGINX Open Source ในหน้าต่างเดียวกันได้แล้ว

Microsoft ประกาศพร้อมใช้งาน Windows App

Windows App เป็นแอปพลิเคชันที่จะช่วยให้สามารถเข้าถึงแอปพลิเคชันต่างๆของ Microsoft ได้ ซึ่งเป็นการรวมศูนย์การเข้าถึงให้ง่ายต่อการใช้และการจัดการ โดยมีแผนไปถึงการทดแทน Remote Desktop Client ด้วยที่แอดมินต้องเตรียมตัว