สรุปสั้น

Xen คือ hypervisor แบบโอเพนซอร์สที่ใช้รัน VM หลายตัวบนเครื่องเดียว และเป็นฐานของแพลตฟอร์มอย่าง XCP-ng และระบบปฏิบัติการเน้นความปลอดภัย Qubes OS หัวใจของ hypervisor คือ การกั้นไม่ให้ VM หนึ่งเห็นหน่วยความจำของอีกตัว เมื่อวันที่ 3 พฤศจิกายน 2569 Xen Project เปิดเผยช่องโหว่ CVE-2026-102703 และ CVE-2026-102704 ภายใต้ประกาศ XSA-523 ที่ให้ VM ประสงค์ร้ายอ่านและเขียนหน่วยความจำของ VM อื่นบนเครื่องเดียวกันได้ รวมถึง dom0 ซึ่งเป็น VM ที่มีสิทธิ์เต็มและบริหาร VM อื่นทั้งหมด Xen ทุกเวอร์ชันตั้งแต่ 4.6 ได้รับผล ต้นเหตุอยู่ในกลไกคัดลอกข้อมูลข้าม VM ที่บางกรณีไม่ตรวจสิทธิ์ซ้ำทั้งที่ควรตรวจ

Xen Project ให้เครดิตบริษัท Anthropic ที่ใช้โมเดล Claude ค้นพบช่องโหว่นี้ ก่อนที่นาย Stephan Lipp จาก Ada Logics จะยืนยัน และทีม CodeAnt AI รายงานซ้ำโดยอิสระ แพตช์ออกแล้วสำหรับ Xen 4.17 ถึง 4.19 รวมถึง XCP-ng 8.3 และ Qubes OS 4.3 แต่ไม่มีวิธีบรรเทาชั่วคราว และไม่มีแพตช์ให้ Xen 4.6 ถึง 4.16 ผู้ให้บริการโฮสต์ที่ให้คนอื่นรัน VM บน Xen เสี่ยงที่สุด เพราะลูกค้ารายเดียวอาจยึดทั้งเครื่องได้ ผู้ดูแลควรติดตั้งแพตช์แล้วรีบูตโฮสต์โดยเร็ว

รายละเอียดข่าว

เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 4 พฤศจิกายน 2569 ว่าประกาศ XSA-523 ระบุว่ามีแพตช์แล้วและไม่มีวิธีบรรเทาที่รู้จัก Xen 4.5 และเก่ากว่าไม่ได้รับผล ประกาศไม่ได้กล่าวถึงการโจมตีจริง และไม่ได้บอกว่าผู้โจมตีต้องมีสิทธิ์ระดับไหนภายใน VM ด้าน XCP-ng ระบุในบันทึกอัปเดตว่า “guest ที่ถูกยึดเพียงตัวเดียวสามารถหลุดจากการแยกส่วนและยึดทั้งโฮสต์ได้” และบริษัท Vates ผู้หนุน XCP-ng จัดผลกระทบไว้ระดับวิกฤต

แพตช์ที่ออกแล้วมีดังนี้ ซอร์สโค้ด Xen มีแพตช์สำหรับ xen-unstable ไปจนถึง 4.19.x และ 4.18.x ถึง 4.17.x ส่วน Xen 4.6 ถึง 4.16 ไม่มีแพตช์ในประกาศ และ 4.16 หมดการสนับสนุนด้านความปลอดภัยไปตั้งแต่ 2 ธันวาคม 2567 XCP-ng 8.3 ออกแพ็กเกจ xen-4.17.7-4.2.xcpng8.3 เมื่อ 3 พฤศจิกายน ซึ่งต้องรีบูตโฮสต์ Qubes OS ออก QSB-121 ระบุว่าทุกรุ่นและทุกการตั้งค่าที่ยังสนับสนุนได้รับผล และแก้ใน Qubes 4.3 ด้วยแพ็กเกจ Xen 4.19.6-3 ใน dom0 ซึ่งต้องรีสตาร์ต dom0 ผู้ใช้ Anti Evil Maid ต้อง reseal passphrase ใหม่เพราะไบนารี Xen ใหม่เปลี่ยนค่า PCR18 และ PCR19 แพตช์ของ Qubes อยู่ใน repository security-testing และจะย้ายไป stable ภายในสองสัปดาห์หลังชุมชนทดสอบ

ผลิตภัณฑ์อื่นที่สร้างบน Xen 4.6 ขึ้นไปจะเสี่ยงจนกว่าผู้ผลิตจะใส่แพตช์ XSA-523 ณ วันที่ 4 พฤศจิกายน ระบบติดตามของ Debian ยังแสดงแพ็กเกจ xen ใน bookworm, trixie และ forky ว่าเสี่ยง และ sid แก้แล้ว XSA-523 แยกจาก XSA-500 ช่องโหว่ grant copy อีกตัวที่ Xen เปิดเผยเมื่อ 28 กรกฎาคม และใช้แพตช์คนละชุด

รายละเอียดช่องโหว่

กลไกที่มีปัญหา คือ grant copy — Xen ให้ VM แลกข้อมูลกันผ่านระบบ grant ซึ่ง VM แต่ละตัวประกาศว่าหน้าหน่วยความจำ (memory page) หน้าไหนของตัวเองที่ VM อื่นใช้ได้ แล้ว Xen ตรวจสิทธิ์นั้นทุกครั้งที่มีการคัดลอก grant copy คือ คำสั่งที่ให้ Xen คัดลอกข้อมูลระหว่าง VM แทน

ทางลัดเพื่อความเร็วที่ข้ามการตรวจ — เมื่อมีการคัดลอกเป็นชุดภายในหน้าหน่วยความจำเดียวกัน Xen นำผลตรวจสิทธิ์ที่ทำไปแล้วกลับมาใช้ซ้ำเพื่อประหยัดเวลา แต่ในบางกรณี Xen ไม่ตรวจใหม่ทั้งที่ควรตรวจ ความผิดพลาดนี้ทำให้ guest ประสงค์ร้ายอ่านและเขียนหน่วยความจำที่ไม่ใช่ของตัวเองได้

ผลลัพธ์ คือ หลุดออกจาก VM — เมื่อเขียนหน่วยความจำของ dom0 ได้ ผู้โจมตีก็ควบคุมส่วนที่บริหารทั้งเครื่องได้ ซึ่งเท่ากับยึดโฮสต์และ VM ทุกตัวบนนั้น ประกาศไม่ได้ระบุคะแนน CVSS

เงื่อนไขที่ยังไม่ชัด — Xen ไม่ได้บอกว่าผู้โจมตีต้องมีสิทธิ์ระดับ kernel ภายใน guest หรือไม่ แต่การเรียก grant copy ตามปกติทำจาก kernel ของ guest ดังนั้นในทางปฏิบัติผู้โจมตีน่าจะต้องคุม guest ได้เต็มก่อน ซึ่งในงานโฮสต์ที่ให้ลูกค้าเช่า VM ลูกค้ามีสิทธิ์นี้อยู่แล้ว

ผลกระทบ

กลุ่มที่เสี่ยงที่สุด คือ ผู้ให้บริการโฮสต์และคลาวด์ที่ใช้ Xen ให้ลูกค้าหลายรายรัน VM บนเครื่องเดียวกัน เพราะลูกค้าทุกรายมีสิทธิ์เต็มใน VM ของตัวเอง ลูกค้าประสงค์ร้ายรายเดียวจึงอาจอ่านข้อมูลหรือยึด VM ของลูกค้ารายอื่นได้ รองลงมา คือ องค์กรที่ใช้ XCP-ng หรือผลิตภัณฑ์อื่นที่สร้างบน Xen แยกระบบสำคัญออกจากระบบที่เสี่ยงกว่าบนโฮสต์เดียวกัน และผู้ใช้ Qubes OS ที่พึ่งการแยก qube เป็นแนวป้องกันหลัก

ความเร่งด่วนสูงเพราะไม่มีวิธีบรรเทาชั่วคราว และการแก้ต้องรีบูตโฮสต์ ซึ่งองค์กรมักเลื่อนเพราะกระทบระบบที่รันอยู่ ระบบที่ยังรัน Xen 4.16 หรือเก่ากว่าจะไม่ได้รับแพตช์เลย ช่องโหว่นี้ยังเป็นอีกตัวอย่างของ AI ที่ค้นพบช่องโหว่ระดับลึกในโค้ดโครงสร้างพื้นฐาน ซึ่งบอกว่าช่องโหว่แบบนี้อาจถูกค้นพบซ้ำโดยผู้อื่นได้เร็วขึ้น

คำแนะนำ

  • ทำทันที: ติดตั้งแพตช์ XSA-523 ตามแพลตฟอร์ม เช่น XCP-ng 8.3 ใช้ xen-4.17.7-4.2.xcpng8.3 และ Qubes OS 4.3 ใช้ Xen 4.19.6-3 แล้วรีบูตโฮสต์หรือรีสตาร์ต dom0 เพราะการติดตั้งอย่างเดียวไม่พอ
  • ทำทันที: ผู้ให้บริการโฮสต์ควรจัดลำดับรีบูตเครื่องที่รัน VM ของลูกค้าหลายรายก่อน และย้าย VM ด้วย live migration ไปเครื่องที่แพตช์แล้วถ้าทำได้
  • ตรวจผลิตภัณฑ์อื่น: สอบถามผู้ผลิตผลิตภัณฑ์ที่สร้างบน Xen 4.6 ขึ้นไปว่าใส่แพตช์ XSA-523 เมื่อไร และติดตามสถานะแพ็กเกจ xen ใน Debian bookworm และ trixie
  • ผู้ใช้ Qubes ที่เปิด Anti Evil Maid: reseal passphrase ใหม่หลังอัปเดต เพราะค่า PCR เปลี่ยน
  • ระยะยาว: วางแผนย้ายระบบที่ยังรัน Xen 4.16 หรือเก่ากว่าไปเวอร์ชันที่ยังได้รับการสนับสนุน และแยกโฮสต์ตามระดับความน่าเชื่อถือของ VM แทนการรวมทุกอย่างไว้บนเครื่องเดียว

แหล่งอ้างอิง