Sergey Zelenyuk นักวิจัยด้านช่องโหว่ชาวรัสเซีย ค้นพบช่องโหว่ Zero-day บน VirtualBox ซอฟต์แวร์ Virtualization ยอดนิยม พร้อมเผยแพร่รายละเอียด โค้ดสำหรับ PoC การโจมตี และอธิบายขั้นตอนการเจาะช่องโหว่อย่างละเอียด
Zelenyuk ระบุว่า ช่องโหว่ที่ค้นพบนี้อยู่บนการตั้งค่า Network Adapter ที่ชื่อว่า Intel PRO/1000 MT Desktop ในโหมด Network Address Translation (NAT) ซึ่งเป็นการตั้งค่าแบบ Default ที่มาจากโรงงานซึ่งช่วยให้ Guest OS สามารถเข้าถึงระบบเครือข่ายภายนอกได้
ช่องโหว่นี้ช่วยให้แฮ็กเกอร์ที่มีสิทธิ์ระดับ Root/Admin บน Guest OS สามารถดำเนินเงื่อนไขบางอย่างเพื่อให้สามารถทำ Buffer Overflow แล้วหลุดออกมาจากระบบ Guest เข้าสู่ Ring 3 Privilege Layer ของเครื่องโฮสต์ได้ จากนั้นแฮ็กเกอร์สามารถใช้เทคนิค Privilege Escalation เพื่อไปยัง Ring 0 ผ่านทาง /dev/vboxdrv แล้วเข้าควบคุมระบบทั้งหมดต่อได้
อย่างไรก็ตาม การเตรียมตัวเพื่อให้ผ่านเงื่อนไข และใช้ช่องโหว่อื่นเพื่อช่วยในการทำ Privilege Escalation จาก Ring 3 มายัง Ring 0 จำเป็นต้องใช้ความและทักษะเป็นอย่างมาก ไม่ใช่เรื่องที่แฮ็กเกอร์มือสมัครเล่นจะสามารถทำได้ง่ายๆ นอกจากนี้ การทำ Buffer Overflow ก็ใช่ว่าจะได้ผล 100% มีหลายครั้งที่ผลลัพธ์ทำให้ระบบล่มไป อย่างไรก็ตาม ถ้าทำได้สำเร็จ ก็จะสามารถเจาะช่องโหว่ได้อย่างแน่นอน
Zelenyuk ประสบความสำเร็จในการโจมตีช่องโหว่ VirtualBox ที่ติดตั้งบน Ubuntu 16.04 และ 18.04 ทั้ง x86 และ x64 สามารถดูวิดีโอสาธิตการโจมตีได้ด้านล่าง
Zelenyuk ไม่ได้รายงานช่องโหว่ไปยัง Oracle ที่เป็นเจ้าของ VirtualBox โดยตรง แต่ตัดสินใจเผยแพร่ช่องโหว่และรายละเอียดทั้งหมดสู่สาธารณเนื่องจากมีประสบการณ์ไม่ดีกับ Bug Bounty ของ Oracle ส่งผลให้ยังคงไม่มีแพตช์สำหรับอุดช่องโหว่นี้
รายละเอียดเชิงเทคนิค: https://github.com/MorteNoir1/virtualbox_e1000_0day