ช่องโหว่ CVE-2026-85180 ที่เพิ่งถูกเปิดเผย ช่วยให้ผู้โจมตีที่ไม่ต้องผ่านการยืนยันตัวตนสามารถใช้ประโยชน์จาก model-puller ของ Ollama เพื่อโจมตีแบบ server-side request forgery (SSRF) ต่อบริการภายใน รวมถึง cloud metadata endpoints ช่องโหว่นี้ยังคงอยู่ในเวอร์ชันปัจจุบันคือ 0.33.2 และสามารถถูกกระตุ้นได้โดยไม่ต้องมีบัญชี Ollama ที่ถูกต้อง
ทำไมช่องโหว่นี้จึงสำคัญ
หลายทีมรันเซิร์ฟเวอร์ Ollama ภายในเพื่อให้บริการ LLM models แก่นักพัฒนาและ CI pipelines โดย API ที่ให้บริการโมเดลนั้นมักจะเปิดกว้างเพื่อให้ผู้ใช้ใดๆ ในเครือข่ายภายในสามารถร้องขอโมเดลตามชื่อได้ ความสะดวกสบายนี้สร้างเส้นทางโดยตรงจาก API ที่เชื่อมต่อกับสาธารณะเข้าสู่เครือข่ายส่วนตัว CVE-2026-85180 เปลี่ยนเส้นทางนั้นให้กลายเป็นอาวุธ
ผู้โจมตีที่โฮสต์ malicious model registry สามารถสร้าง manifest ที่เปลี่ยนเส้นทางการร้องขอการดาวน์โหลดไปยังที่อยู่ใดก็ได้ที่กระบวนการของ Ollama สามารถเข้าถึงได้ เมื่อ pull API ได้รับ manifest มันจะทำตามการ redirect โดยอัตโนมัติ เนื่องจาก pull endpoint ไม่ต้องมีการยืนยันตัวตน ผู้โจมตีจึงไม่จำเป็นต้องมีบัญชี Ollama การ redirect สามารถชี้ไปยัง loopback, link-local หรือ private subnet ใดก็ได้ ซึ่งช่วยให้ผู้โจมตีสามารถสร้างจุดยืนภายใน cloud VPC หรือเครือข่าย on-premise ของเหยื่อได้
เป้าหมายที่อันตรายที่สุดคือ cloud metadata service (โดยปกติคือ 169.254.169.254) ซึ่ง endpoint นั้นจะแจกจ่าย temporary credentials ให้กับ instance
ข้อผิดพลาดนี้หลุดรอดการแก้ไขก่อนหน้านี้ได้อย่างไร
เมื่อต้นปีนี้ Ollama ได้แก้ไขปัญหาการ redirect ที่ระบุว่าเป็น CVE-2026-5530 การแก้ไขได้เพิ่มการตรวจสอบที่บล็อกการ redirect ไปยังที่อยู่ส่วนตัว แต่การแก้ไขนั้นใช้ได้กับเฉพาะส่วนประกอบ primary downloader เท่านั้น ส่วน tensor model downloader ซึ่งจัดการไฟล์โมเดลประเภทอื่น จะใช้ HTTP client library แยกต่างหาก ซึ่ง library นั้นประมวลผลการ redirect ด้วยตนเองและขาดการตรวจสอบปลายทางใหม่ ส่งผลให้ระบบป้องกันเดิมไม่ทำงานสำหรับการดาวน์โหลดเหล่านั้น ทำให้ช่องโหว่ SSRF ยังคงเปิดอยู่
ใครคือผู้ที่ได้รับผลกระทบ
องค์กรที่เปิดใช้งาน Ollama endpoint ให้กับกลุ่มนักพัฒนาจำนวนมากมีความเสี่ยงสูงสุด งานประเภท cloud-native ที่พึ่งพา metadata-driven credentials จะมีความเปราะบางเป็นพิเศษ
สิ่งที่สามารถทำได้ในตอนนี้
ยังไม่มีการปล่อย patch และช่องโหว่นี้ยังคงอยู่ในเวอร์ชัน 0.33.2 จนกว่าจะมีการแก้ไขอย่างเป็นทางการ ผู้ดูแลระบบควรเสริมความแข็งแกร่งให้กับ network layer รอบๆ กระบวนการของ Ollama
- หยุดการอ้างอิงโมเดลแบบสุ่ม (Stop arbitrary model references). จำกัด API เพื่อให้เฉพาะผู้ใช้หรือบริการที่เชื่อถือได้เท่านั้นที่สามารถส่งชื่อโมเดลได้ ปฏิเสธ registry URL ที่ไม่รู้จักหรือที่ผู้ใช้ระบุเอง
- ควบคุม outbound traffic. ในระดับ container, host หรือ firewall ให้บล็อกการเชื่อมต่อไปยัง loopback, link-local และช่วง IP ส่วนตัวจากกระบวนการของ Ollama ปฏิเสธการเข้าถึง cloud metadata address (169.254.169.254) อย่างชัดเจน เว้นแต่ว่างานนั้นจำเป็นต้องใช้จริงๆ
- ใช้ curated registry. โฮสต์ internal model registry ที่ให้บริการเฉพาะ manifest ที่ผ่านการตรวจสอบแล้วเท่านั้น ใช้ allow-list ของ hostname และปฏิเสธการ redirect ใดๆ ที่ชี้ไปยังที่อื่น
- ตรวจสอบการ pull ที่น่าสงสัย. สแกน Ollama logs เพื่อหา pull requests ที่สร้าง network traffic ไปยังที่อยู่ภายในทันที โดยนำไปวิเคราะห์ร่วมกับ network telemetry เพื่อตรวจหาการเชื่อมต่อ outbound ที่ไม่คาดคิด
สิ่งที่ต้องติดตามต่อไป
คอยติดตาม release notes และ security advisories ของโปรเจกต์สำหรับ patch ที่กำลังจะมาถึง ในระหว่างนี้ ให้ปฏิบัติกับ model-puller เสมือนเป็นบริการที่มีความสามารถด้านเครือข่าย (network-capable service) และใช้มาตรการบรรเทาความเสี่ยงทั้งสี่ประการทันที
สรุป: ช่องโหว่ SSRF ที่ไม่ต้องยืนยันตัวตนใน model downloader ของ Ollama สามารถเปิดเผย cloud credentials และ internal APIs ได้ จนกว่า patch จะมาถึง ให้บล็อกการเข้าถึง outbound ไปยังเครือข่ายส่วนตัว จำกัดการอ้างอิงโมเดล และตรวจสอบกิจกรรมการ pull
