ช่องโหว่ในแพตช์ Red Hat ไปยัง GRUB2 bootloader ที่ช่วยให้คุณข้ามการตรวจสอบรหัสผ่านได้

ข้อมูลเกี่ยวกับช่องโหว่ (CVE-2023-4001) ในแพทช์สำหรับบูตโหลดเดอร์ GRUB2 ที่จัดทำโดย Red Hat ได้รับการเปิดเผยแล้ว ช่องโหว่นี้ทำให้หลายระบบที่มี UEFI สามารถข้ามการตรวจสอบรหัสผ่านที่ตั้งไว้ใน GRUB2 เพื่อจำกัดการเข้าถึงเมนูการบูตหรือบรรทัดคำสั่งของตัวโหลดการบูต ช่องโหว่นี้เกิดจากการเปลี่ยนแปลงที่เพิ่มโดย Red Hat ในแพ็คเกจ GRUB2 ที่มาพร้อมกับ RHEL และ Fedora Linux ปัญหาไม่ปรากฏในโปรเจ็กต์ GRUB2 หลัก และส่งผลต่อการแจกแจงที่ใช้แพตช์ Red Hat เพิ่มเติมเท่านั้น

ปัญหาเกิดจากข้อผิดพลาดในตรรกะของวิธีที่บูตโหลดเดอร์ใช้ UUID เพื่อค้นหาอุปกรณ์ที่มีไฟล์การกำหนดค่า (เช่น "/boot/efi/EFI/fedora/grub.cfg") ที่มีรหัสผ่าน กัญชา. ในการเลี่ยงผ่านการรับรองความถูกต้อง ผู้ใช้ที่สามารถเข้าถึงคอมพิวเตอร์ทางกายภาพสามารถเชื่อมต่อไดรฟ์ภายนอก เช่น USB Flash โดยตั้งค่าเป็น UUID ที่ตรงกับตัวระบุของพาร์ติชันสำหรับเริ่มระบบ /บูตของระบบที่ถูกโจมตี

ระบบ UEFI หลายระบบจะประมวลผลไดรฟ์ภายนอกก่อนและวางไว้ในรายการอุปกรณ์ที่ตรวจพบก่อนไดรฟ์แบบอยู่กับที่ ดังนั้นพาร์ติชัน /boot ที่ผู้โจมตีเตรียมไว้จะมีลำดับความสำคัญในการประมวลผลที่สูงกว่า ดังนั้น GRUB2 จะพยายามโหลดไฟล์การกำหนดค่าจากพาร์ติชันนี้ เมื่อค้นหาพาร์ติชันโดยใช้คำสั่ง "ค้นหา" ใน GRUB2 จะมีการกำหนดเฉพาะการจับคู่ UUID แรกเท่านั้นหลังจากนั้นการค้นหาจะหยุดลง หากไม่พบไฟล์การกำหนดค่าหลักในพาร์ติชันใดพาร์ติชันหนึ่ง GRUB2 จะแสดงพรอมต์คำสั่งที่ให้คุณสามารถควบคุมกระบวนการบูตที่เหลือได้อย่างสมบูรณ์

ยูทิลิตี "lsblk" สามารถใช้เพื่อกำหนด UUID ของพาร์ติชันโดยผู้ใช้ที่ไม่มีสิทธิพิเศษในเครื่อง แต่ผู้ใช้ภายนอกที่ไม่สามารถเข้าถึงระบบได้ แต่สามารถสังเกตกระบวนการบูตได้ ในการกระจายบางตัว สามารถกำหนด UUID จากการวินิจฉัยได้ ข้อความที่แสดงระหว่างการบู๊ต ช่องโหว่ได้รับการแก้ไขโดย Red Hat ด้วยการเพิ่มอาร์กิวเมนต์ใหม่ให้กับคำสั่ง "ค้นหา" ที่อนุญาตให้การดำเนินการสแกน UUID ถูกผูกไว้เพื่อบล็อกอุปกรณ์ที่ใช้ในการเรียกใช้ตัวจัดการการบูตเท่านั้น (เช่นพาร์ติชัน /boot จะต้องอยู่ในที่เดียวกันเท่านั้น ขับเป็นพาร์ติชันระบบ EFI)

ที่มา: opennet.ru

เพิ่มความคิดเห็น