Zafran Labs เปิดเผยช่องโหว่ความรุนแรงสูง 3 รายการในไลบรารี Diffusers ของ Hugging Face ซึ่งเป็นเครื่องมือยอดนิยมสำหรับโหลดและใช้งาน AI Model ด้าน Image/Video Generation รวมเรียกช่องโหว่ชุดนี้ว่า "FaceHugger" จุดที่น่ากังวลที่สุดคือช่องโหว่นี้สามารถทำให้ Model Repository ที่สร้างขึ้นเป็นพิเศษแอบรันโค้ดบนเครื่องที่โหลด Model นั้นได้ แม้ผู้ใช้จะตั้งค่า trust_remote_code=False ไว้แล้วก็ตาม
ต้นเหตุร่วม: ช่องโหว่แบบ Time-of-Check to Time-of-Use (TOCTOU)
ทุกช่องโหว่ในชุด FaceHugger มีต้นเหตุร่วมกันคือปัญหาแบบ Time-of-Check to Time-of-Use (TOCTOU) กล่าวคือ การดาวน์โหลด Model ที่ควรทำงานเป็น Operation เดียวแบบ Atomic กลับถูกแยกออกเป็น 2 คำขอ HTTP ที่ทำงานต่อเนื่องกันแบบไม่ Atomic และ Security Gate ที่ทำหน้าที่ตรวจสอบค่า trust_remote_code กลับตรวจสอบเฉพาะคำขอแรกเท่านั้น ทำให้เกิดช่องว่างให้ผู้โจมตีใช้ประโยชน์ได้
รายละเอียดช่องโหว่
CVE-2026-44827 (CVSS 8.8)
ใช้ประโยชน์จาก Custom Pipeline Flow โดยผู้โจมตีสร้างไฟล์ชื่อ "None.py" ไว้ใน Model Repository เมื่อผู้ใช้งานไม่ได้ระบุ Custom Pipeline Argument ระบบจะสร้างชื่อไฟล์ "None.py" ขึ้นมาโดยอัตโนมัติแล้วตรวจสอบว่ามีไฟล์นี้อยู่ใน Repository หรือไม่ ปัญหาคือการตรวจสอบนี้ใช้โค้ดคนละเส้นทางกับ Gate ตรวจสอบ trust_remote_code ทำให้ไฟล์ None.py หลุดผ่านการตรวจสอบและถูกรันโดยอัตโนมัติเมื่อ Load Model
CVE-2026-44513 (CVSS 8.8)
ช่องโหว่ที่เกี่ยวข้อง ใช้หลักการ TOCTOU เดียวกันผ่านเส้นทางอื่นในกระบวนการโหลด Model
CVE-2026-45804 (CVSS 7.5)
ช่องโหว่ TOCTOU อีกรูปแบบหนึ่งที่ Zafran Labs ระบุว่าเกี่ยวข้องกับกระบวนการดาวน์โหลด Model เช่นกัน แม้ความรุนแรงจะต่ำกว่าสองรายการแรกเล็กน้อย
ระบบที่ได้รับผลกระทบ
- ผู้ใช้งานไลบรารี Diffusers ของ Hugging Face ที่โหลด Model Repository จากแหล่งที่ไม่น่าเชื่อถือ แม้จะตั้งค่า trust_remote_code=False ไว้แล้วก็ยังมีความเสี่ยง เนื่องจากช่องโหว่นี้หลบเลี่ยง Safeguard ดังกล่าวได้โดยตรง
- กระทบทั้ง Workflow การพัฒนา (Development) และการใช้งานจริง (Production) ที่ใช้ Diffusers โหลด Model จาก Hugging Face Hub
ผลกระทบที่อาจเกิดขึ้น
- การรันโค้ดจากระยะไกล (Remote Code Execution) บนเครื่องที่โหลด Model โดยผู้ใช้งานไม่รู้ตัวและไม่มีการเตือนใดๆ แม้จะตั้งค่าป้องกันไว้แล้ว
- บั่นทอนความเชื่อมั่นต่อ Safeguard trust_remote_code ซึ่งเป็นกลไกความปลอดภัยหลักที่ผู้ใช้งาน AI Model จำนวนมากใช้เพื่อป้องกันความเสี่ยงจาก Model Repository ที่ไม่น่าเชื่อถือ
- ความเสี่ยงต่อ Supply Chain ของ AI/ML Pipeline เนื่องจาก Model Repository ที่เป็นอันตรายอาจถูกอัปโหลดไว้บน Hugging Face Hub และรอให้มีผู้โหลดไปใช้งานโดยไม่รู้ตัว
- กระทบวงกว้างในองค์กรที่ใช้ Diffusers เป็นส่วนหนึ่งของ Pipeline การพัฒนา AI Application โดยเฉพาะที่มีการโหลด Model จากภายนอกเป็นประจำ
สิ่งที่องค์กรควรทำ
- อัปเดตไลบรารี Diffusers เป็นเวอร์ชันล่าสุดที่ Hugging Face แก้ไขช่องโหว่ทั้ง 3 รายการแล้วโดยเร็วที่สุด
- ตรวจสอบ Model Repository ที่เคยโหลดมาใช้งานว่ามีไฟล์ต้องสงสัยชื่อ None.py หรือ Pattern ที่ใกล้เคียงหรือไม่ โดยเฉพาะ Repository จากแหล่งที่ไม่คุ้นเคย
- จำกัดการโหลด Model จาก Repository ที่ไม่รู้จักหรือไม่ผ่านการตรวจสอบ แม้จะตั้งค่า trust_remote_code=False ไว้แล้วก็ตาม เนื่องจากช่องโหว่นี้หลบเลี่ยง Safeguard ดังกล่าวได้โดยตรง
- ตรวจสอบ Log การรันโค้ดที่ผิดปกติบนเครื่องหรือระบบที่ใช้ Diffusers โหลด Model จากภายนอก ในช่วงที่ผ่านมา ก่อนที่จะอัปเดตเวอร์ชันที่แก้ไขแล้ว
แนวทางลดความเสี่ยงระยะยาว
1. ใช้ Model จาก Repository ที่ผ่านการตรวจสอบและได้รับการยืนยันตัวตนของผู้เผยแพร่เท่านั้น
หลีกเลี่ยงการโหลด Model จาก Repository ที่ไม่มีประวัติหรือไม่สามารถยืนยันความน่าเชื่อถือได้
2. Sandbox กระบวนการโหลดและทดสอบ AI Model ก่อนนำไปใช้งานจริง
แยกสภาพแวดล้อมการทดสอบ Model ใหม่ออกจากระบบ Production เพื่อจำกัดผลกระทบหากมี Model ที่เป็นอันตรายหลุดเข้ามา
3. ติดตาม Security Advisory จาก Hugging Face และไลบรารี AI/ML ที่องค์กรใช้งานอย่างสม่ำเสมอ
เนื่องจากระบบนิเวศ AI/ML ยังคงมีช่องโหว่ด้าน Supply Chain ที่ถูกค้นพบเพิ่มขึ้นต่อเนื่องตามความนิยมที่เพิ่มขึ้น
4. ไม่ควรเชื่อถือ Safeguard เพียงชั้นเดียวสำหรับความปลอดภัยของ AI Pipeline
ควรมีมาตรการป้องกันหลายชั้น (Defense in Depth) เช่น Network Isolation และ Runtime Monitoring ควบคู่กับการตั้งค่า trust_remote_code
วิเคราะห์ในมุมมองจาก TXEC
ช่องโหว่ FaceHugger เป็นตัวอย่างที่สำคัญของความเสี่ยงในระบบนิเวศ AI/ML ที่กำลังเติบโตอย่างรวดเร็ว โดยเฉพาะประเด็นที่ Safeguard อย่าง trust_remote_code ซึ่งผู้ใช้งานจำนวนมากเชื่อว่าเป็นมาตรการป้องกันที่เพียงพอ กลับสามารถถูกหลบเลี่ยงได้ด้วยข้อบกพร่องเชิงตรรกะแบบ TOCTOU ที่ไม่ซับซ้อนมากนัก สะท้อนว่าองค์กรไม่ควรพึ่งพา Safeguard ระดับ Application เพียงชั้นเดียวสำหรับความปลอดภัยของ AI Pipeline ที่มีความสำคัญ
TXEC มองว่าแนวโน้มการโจมตี Supply Chain ผ่าน Model Repository จะเพิ่มขึ้นต่อเนื่องตามการเติบโตของการใช้งาน AI ในองค์กร คล้ายกับที่เคยเกิดขึ้นกับ Package Repository อย่าง npm หรือ PyPI มาก่อน องค์กรที่นำ AI Model จากแหล่งภายนอกมาใช้งานควรปฏิบัติต่อ Model Repository ด้วยความระมัดระวังเทียบเท่ากับ Software Dependency ทั่วไป ไม่ใช่มองว่าเป็นเพียงไฟล์ข้อมูลที่ปลอดภัยโดยธรรมชาติ
รู้ก่อน ตรวจพบเร็ว ลดความเสียหายได้มากกว่า
[ แหล่งอ้างอิง: Zafran Labs, The Hacker News, CyberSecurityNews, Infosecurity Magazine, NVD ]