วันศุกร์ที่ 19 มิถุนายน พ.ศ. 2558

ปิดช่องโหว่ OverlayFS บน Ubuntu ผู้โจมตีเข้าถึงสิทธิ์ root ได้


OverlayFS เป็นระบบไฟล์ (file system) แบบ union mount ที่ช่วยให้สามารถ mount ระบบไฟล์หลายชุดผ่านจุด mount จุดเดียวได้ งานส่วนใหญ่ที่ใช้ระบบไฟล์แบบนี้ เช่น Live CD สำหรับทดลองเล่น Ubuntu ก่อนติดตั้งจริง
แนวคิดพื้นฐานของระบบดังกล่าว คือ แบ่งชั้น (layer) ของระบบไฟล์เป็นชั้นบน (upper) กับชั้นล่าง (lower) โดยชั้นล่างจะเป็นระบบไฟล์เดิมที่ผู้ใช้อาจไม่มีสิทธิ์ในการเขียนไฟล์ ส่วนชั้นบนจะจำลองไฟล์ต่างๆ ที่อยู่ในชั้นล่างขึ้นมา (overlay) ผู้ใช้ที่ไม่มีสิทธิ์ในการเขียนไฟล์ที่ชั้นล่าง ก็จะมาติดต่อกับระบบไฟล์ในชั้นบนแทน โดยที่ไฟล์ชั้นล่างจะไม่ถูกแก้ไขตามด้วย
ซึ่งช่องโหว่ดังกล่าว อาศัยความผิดพลาดของการตรวจสอบสิทธิ์ในการอ่านเขียนไฟล์ที่ระดับชั้นบน ทำให้สามารถลัดขั้นตอนการตรวจสิทธิ์และแก้ไขไฟล์ทุกไฟล์ได้ จนผู้โจมตีสามารถแปลงร่างเป็น root ได้ในที่สุด
OverlayFS ถูกติดตั้งและใช้งานอัตโนมัติใน Ubuntu ตั้งแต่รุ่น 12.04 จนถึงปัจจุบัน
ข่าวดีคือแพตช์แก้ปัญหาดังกล่าวออกมาแล้ว เพียงแค่สั่ง sudo apt-get dist-upgrade แล้วรีบูตเครื่องครับ