Tags:
Node Thumbnail

Gal Beniamini จาก Project Zero รายงานถึงความสำเร็จในการเจาะทะลุระบบรักษาความปลอดภัยเคอร์เนล (Real-Time Kernel Protection - RKP) ภายในชุดความปลอดภัย Samsung KNOX หลังจากรายงานให้ซัมซุงทราบปัญหาก่อนหน้านี้และช่องโหว่ถูกแก้ในอัพเดตเดือนมกราคมที่ผ่านมาแล้ว

ทีมงานพบช่องโหว่ของของเคอร์เนลแอนดรอยด์มาก่อนหน้านี้ทำให้สามารถเข้าไปรันโค้ดใน system_server ได้สำเร็จ (ช่องโหว่ถูกแก้ในแอนดรอยด์เวอร์ชั่นพฤศจิกายนที่ผ่านมา) แต่ KNOX ก็มีมาตรการความปลอดภัยเพิ่มเติม ได้แก่ การสุ่มตำแหน่งฟังก์ชั่นในเคอร์เนล (Kernel Address Space Layout Randomisation - KASLR) ทาง Project Zero สามารถหาตำแหน่งของฟังก์ชั่นได้เพราะมีฟอร์แมต printf ตัวหนึ่งพิมพ์ตัวใหญ่เป็นตัวเล็กทำให้เปิดเผยตำแหน่งฟังก์ชั่นในเคอร์เนลออกมา จนกระทั่งรู้ตำแหน่งฐานของเคอร์เนลเอง

จากนั้นเมื่อสำรวจโค้ดพบว่า RKP เองป้องกันการเขียนหรือรัน บนพื้นที่ที่ที่เป็น Kernel Text เท่านั้น มีหน่วยความจำส่วนอื่นที่สามารถเขียนรันในสิทธิ์ระดับสูงได้แต่อยู่นอกพื้นที่เคอร์เนลที่ได้รับการป้องกัน

การวิจัยครั้งนี้ยังเจาะทะลุมาตรการป้องกันอีกสองอย่างอ่านข้อมูลหน่วยความจำส่วนของ RKP เองได้ ทำให้โค้ดจากชั้นระบบปฎิบัติการสามารถลงไปอ่านข้อมูลใน RKP ได้ด้วย นอกเหนือจากรายงานนี้ Project Zero ยังพบช่องโหว่อีกบางจุดที่นำไปสู่การเขียนโค้ดใน RKP เพื่อรันในสิทธิระดับสูงได้

Beniamini ระบุว่าทีมงาน KNOX ให้ความช่วยเหลือในการวิจัยครั้งนี้เป็นอย่างดี ส่วนทาง Project Zero ก็ได้แนะนำการออกแบบระบบรักษาความปลอดภัยเพิ่มเติม

ที่มา - Projext Zero

Get latest news from Blognone

Comments

By: y22k
ContributorWindows
on 11 February 2017 - 16:48 #969536

เคยใช้ knox แต่ลบออกแหระเพราะมันเอ๋อๆ คือใส่รหัสผิด 10ครั้งโดนล็อค ต้องเข้าเว็ปและล็อคอินด้วยแอคเคาท์ knox เพื่อรีเซ็ตรหัสผลคือ ล็อคเหมือนเดิมต้องลบ knox ออกจึงจะใช้ได้