Title: Copy Fail: 732 ไบต์สู่ Root บนลินุกซ์ดิสทริบิวชันหลักทุกตัว

  • Copy Fail (CVE-2026-31431) เป็นช่องโหว่ร้ายแรงในเทมเพลตการเข้ารหัส authencesn ของลินุกซ์เคอร์เนล ที่ทำให้ผู้ใช้ภายในเครื่องซึ่งไม่มีสิทธิ์สามารถยกระดับเป็นสิทธิ์ root ได้ โดยใช้เอ็กซ์พลอยต์ขนาด 732 ไบต์เพื่อแก้ไขไบนารี setuid และรับสิทธิ์ root บนลินุกซ์ดิสทริบิวชันหลักอย่าง Ubuntu, Amazon Linux, RHEL และ SUSE ได้
  • ช่องโหว่นี้เกิดจากข้อผิดพลาดเชิงตรรกะในกระบวนการที่วางเพจของ page cache ลงใน scatterlist ที่เขียนได้ ส่งผลให้สามารถเขียนข้อมูล 4 ไบต์แบบควบคุมได้ลงใน page cache ของไฟล์ใดก็ตามที่อ่านได้ เนื่องจากมันข้ามเส้นทางการเขียนตามปกติ ค่า checksum บนดิสก์จึงไม่เปลี่ยนแปลง ทำให้การใช้เอ็กซ์พลอยต์เป็นไปอย่างแนบเนียน
  • เอ็กซ์พลอยต์นี้ใช้ซ็อกเก็ตชนิด AF_ALG และ system call splice() เพื่อส่งเพจของ page cache ไปยังซับซิสเต็มการเข้ารหัส จากนั้นอิมพลีเมนเทชันของอัลกอริทึม authencesn จะเขียนข้อมูลเกินบัฟเฟอร์ผลลัพธ์ที่ตั้งใจไว้ไปยังเพจของ page cache เหล่านี้
    บั๊กนี้พกพาข้ามดิสทริบิวชันและสถาปัตยกรรมได้ดีมาก ต้องใช้โค้ดเพียงเล็กน้อยเท่านั้น (สคริปต์ Python สั้น ๆ) และยังอาจใช้หลบหนีออกจากคอนเทนเนอร์ได้ เพราะ page cache ถูกแชร์ทั้งระบบ
  • สาเหตุรากของปัญหาคือการผสานกันของการรองรับ AF_ALG AEAD, เส้นทาง splice() ที่เปิดเผยเพจของ page cache และโดยเฉพาะวิธีที่ authencesn ใช้บัฟเฟอร์ปลายทางเป็น scratch space หลังการปรับแต่งแบบ in-place ในปี 2017
    เอ็กซ์พลอยต์มุ่งเป้าไปที่ไบนารี setuid ทั่วไป เช่น /usr/bin/su โดยจะเขียนทับบางส่วนของไบนารีด้วยเชลล์โค้ด และเมื่อไบนารีถูกโหลดจาก page cache ที่เสียหาย ก็จะถูกรันด้วยสิทธิ์ root
  • แพตช์ที่นำไปใช้ในเมนไลน์เคอร์เนลได้เปลี่ยน AF_ALG AEAD กลับไปเป็นการทำงานแบบ out-of-place เพื่อแยก source และ target scatterlist ออกจากกันอย่างมีประสิทธิภาพ และตัดความสามารถในการเขียนไปยังเพจของ page cache ที่เชื่อมต่อกันออก
    แนวทางแก้ไขรวมถึงการแพตช์เคอร์เนลและการอัปเดตแพ็กเกจของดิสทริบิวชัน ส่วนมาตรการบรรเทาเร่งด่วนคือการบล็อกการสร้างซ็อกเก็ต AF_ALG ผ่าน seccomp หรือเพิ่มโมดูล algif_aead ลงใน blacklist
  • ช่องโหว่นี้ถูกค้นพบโดยทีมวิจัย Xint Code โดยใช้เครื่องมือวิจัยด้านความปลอดภัยที่มี AI ช่วยสนับสนุน และต่อยอดจากข้อสังเกตเบื้องต้นของ Taeyang Lee จาก Theori

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น