พบช่องโหว่ระดับวิกฤตใน LMCache เปิดช่องแฮกเกอร์รันโค้ดระยะไกล
พบช่องโหว่ความรุนแรงระดับวิกฤตใน LMCache ซึ่งเป็นซอฟต์แวร์โอเพนซอร์สสำหรับเพิ่มประสิทธิภาพการทำงานของเซิร์ฟเวอร์ Large Language Model (LLM) เช่น vLLM โดยช่องโหว่นี้เปิดทางให้ผู้โจมตีสามารถรันโค้ดจากระยะไกลบนแคชเซิร์ฟเวอร์ได้โดยไม่ต้องผ่านการตรวจสอบสิทธิ์
ข้อบกพร่องดังกล่าวเกิดขึ้นใน multiprocess mode ซึ่งเป็นโหมดที่แคชทำงานเป็นเซิร์ฟเวอร์แยกอิสระ (standalone) และสื่อสารกับ LLM workers ผ่านไลบรารี ZeroMQ การส่งข้อความเครือข่ายเพียงชุดเดียวไปยังเซิร์ฟเวอร์ที่เปิดช่องโหว่ จะทำให้ผู้โจมตีสามารถรันคำสั่งด้วยสิทธิ์ของผู้ใช้ที่รันโปรเซส LMCache ได้ทันที
JFrog ได้เปิดเผยช่องโหว่นี้ เมื่อวันที่ 7 ตุลาคม โดยกำหนดคะแนนความรุนแรงสูงถึง 9.8 จาก 10 (Critical) สำหรับเซิร์ฟเวอร์ที่ตั้งค่าให้รับการเชื่อมต่อผ่านที่อยู่เครือข่ายที่เข้าถึงได้จากภายนอก (routable address) แทนที่จะจำกัดเฉพาะ localhost ตามค่าเริ่มต้น
ช่องโหว่นี้มีการติดตามในรหัส CVE-2026-105192 ส่งผลกระทบต่อ LMCache ตั้งแต่เวอร์ชัน 0.3.9 ไปจนถึง 0.5.5 ซึ่งเป็นเวอร์ชันล่าสุด รวมถึงเวอร์ชันที่กำลังพัฒนาอย่าง 0.5.6 release candidates โดยในปัจจุบันยังไม่มีเวอร์ชันแก้ไขออกมาอย่างเป็นทางการ
ความเสี่ยงจะเกิดขึ้นเมื่อผู้ดูแลระบบตั้งค่าให้เซิร์ฟเวอร์รอรับการเชื่อมต่อจากภายนอก เช่น ในการใช้งานแบบหลายโหนด (multi-node deployments) ที่มีการแชร์แคชข้ามเครื่อง ตัวอย่างการปรับใช้บน Kubernetes ของ LMCache เองก็มีการตั้งค่าในลักษณะนี้ ซึ่งจะทำให้พอร์ตที่เปิดไว้ไม่มีการตรวจสอบสิทธิ์
กลไกการโจมตีอยู่ที่การส่งข้อความประเภทหนึ่งที่ถูก คลายข้อมูลด้วย pickle ซึ่งเป็นรูปแบบข้อมูลของ Python ที่สามารถฝังโค้ดให้ทำงานได้โดยอัตโนมัติขณะถอดรหัส ข้อมูลจาก JFrog ระบุว่าใน container images มาตรฐานของโปรเจกต์ โปรเซสนี้จะรันด้วยสิทธิ์ root ทำให้ผู้โจมตีสามารถยึดระบบได้ทั้งหมด
ระหว่างที่ยังไม่มีแพตช์ JFrog แนะนำให้ผู้ดูแลระบบหลีกเลี่ยงการกำหนด routable address ให้กับ multiprocess server และควรจำกัดการเชื่อมต่อไว้เฉพาะภายในเครื่อง (local machine) หรือภายในเครือข่ายคลัสเตอร์ที่เชื่อถือได้เท่านั้น แม้การใช้ไฟร์วอลล์จะช่วยลดความเสี่ยงได้ แต่โฮสต์ใดก็ตามที่ยังเข้าถึงพอร์ตได้ก็จะยังสามารถรันโค้ดได้อยู่
นอกจากนี้ยังมีรายงานความปลอดภัยเพิ่มเติมอีก 6 ฉบับจากผู้ใช้ GitHub เกี่ยวกับการ เข้าถึงข้อมูลแคชโดยไม่มีการตรวจสอบสิทธิ์ และ บริการเครือข่ายที่สั่งรันคำสั่งได้ ซึ่งยังอยู่ระหว่างการตรวจสอบและยังไม่มีการออกหมายเลข CVE
ขณะเดียวกัน ช่องโหว่ที่เกี่ยวข้องใน vLLM (เวอร์ชันก่อน 0.30.0) ได้รับการแก้ไขแล้วในรหัส CVE-2026-105756 ซึ่งเป็นช่องโหว่ประเภท Denial-of-Service (DoS) ที่ทำให้ระบบหยุดทำงาน แต่ไม่มีความรุนแรงถึงขั้นรันโค้ดได้เหมือนกรณีของ LMCache
ความคิดเห็น (0)
เข้าสู่ระบบเพื่อร่วมแสดงความเห็น
สมัครสมาชิกมาเป็นคนแรกที่แสดงความเห็นกันเลยโบร
