แจ้งเตือน! LiteLLM ถูกโจมตีแบบ Supply Chain แฝงมัลแวร์ขโมยข้อมูลยืนยันตัวตนและติดตั้ง Backdoor เสี่ยงข้อมูลสำคัญรั่วไหลและระบบถูกเข้าควบคุม

ยอดเข้าชม: 85 views

ศูนย์ประสานการรักษาความมั่นคงปลอดภัยระบบคอมพิวเตอร์แห่งชาติ (ThaiCERT) ได้ติดตามสถานการณ์ภัยคุกคามทางไซเบอร์ พบรายงานการโจมตีโจมตีแบบ Supply Chain (Software Supply Chain Attack) ที่ส่งผลกระทบต่อ LiteLLM เวอร์ชัน 1.107.0 ซึ่งเป็นไลบรารีภาษา Python สำหรับเชื่อมต่อและจัดการการใช้งานโมเดลปัญญาประดิษฐ์ (AI) โดยผู้โจมตีได้แทรกโค้ดอันตรายลงในแพ็กเกจที่เผยแพร่ผ่าน Python Package Index (PyPI) และ Docker Images เพื่อแพร่กระจายมัลแวร์ขโมยข้อมูลรับรอง (Credential Stealer) และฝังช่องทางเข้าถึงระบบโดยไม่ได้รับอนุญาต (Backdoor) ส่งผลให้ระบบที่ติดตั้งแพ็กเกจดังกล่าวมีความเสี่ยงต่อการรั่วไหลของข้อมูลสำคัญ เช่น API Keys, Cloud Credentials, Private Keys และข้อมูลการยืนยันตัวตน รวมถึงอาจถูกผู้โจมตีควบคุมและรันคำสั่งอันตรายได้ [1]

1. รายละเอียดภัยคุกคาม [2]
การโจมตีครั้งนี้เกิดจากการแทรกโค้ดอันตรายลงในแพ็กเกจ LiteLLM เวอร์ชัน 1.107.0 โดยมัลแวร์สามารถทำงานระหว่างกระบวนการเริ่มต้นใช้งาน Python และดำเนินกิจกรรมที่เป็นอันตรายได้ แม้ผู้ใช้งานจะไม่ได้เรียกใช้ไลบรารี LiteLLM โดยตรง ทั้งนี้ พบพฤติกรรมสำคัญดังต่อไปนี้
1.1 มัลแวร์ขโมยข้อมูลรับรอง (Credential Stealer)ผู้โจมตีฝังโค้ดอันตรายชื่อ privcollect เพื่อรวบรวมข้อมูลสำคัญภายในระบบ ได้แก่ Cloud Credentials, API Keys, Private Keys, Environment Variables ข้อมูลจากเว็บเบราว์เซอร์ Chromium และ Firefox รวมถึงไฟล์ยืนยันตัวตนของเครื่องมือพัฒนา AI และข้อมูลการตั้งค่าของ LiteLLM Proxy โดยมัลแวร์จะบีบอัดข้อมูลเป็นไฟล์ TAR.GZ ก่อนส่งออกไปยังเซิร์ฟเวอร์ของผู้โจมตีผ่าน HTTP POST Request ที่ปลายทาง hxxps://litellm[.]dev/healthcheck
1.2 การฝังช่องทางเข้าถึงระบบโดยไม่ได้รับอนุญาต (Backdoor) ผู้โจมตีใช้ไฟล์ cook.pth ซึ่งมีคำสั่ง import cook เพื่อเรียกใช้โค้ดอันตรายโดยอัตโนมัติระหว่างการเริ่มต้นทำงานของ Python Interpreter นอกจากนี้ มัลแวร์ยังสร้างกระบวนการทำงานเบื้องหลัง (Background Daemon) เพื่อตรวจสอบไฟล์ domain.txt จาก GitHub Repository ที่ผู้โจมตีควบคุมทุก 1 ชั่วโมง และสามารถเรียกใช้กระบวนการขโมยข้อมูลซ้ำ รวมถึงดาวน์โหลดโค้ด Python จากปลายทาง /codepy มาประมวลผลบนระบบที่ได้รับผลกระทบ ทำให้ผู้โจมตีสามารถสั่งการมัลแวร์จากระยะไกลและรักษาช่องทางเข้าถึงระบบไว้ได้

2. ระบบที่อาจได้รับผลกระทบ [3]
2.1 LiteLLM เวอร์ชัน 1.107.0 ที่ติดตั้งผ่าน PyPI โดยเฉพาะไฟล์ Wheel (.whl) ที่ได้รับผลกระทบบนระบบปฏิบัติการ Windows, Linux และ macOS
2.2 Docker Images ของ LiteLLM เวอร์ชัน 1.107.0 ที่เผยแพร่ในช่วงเกิดเหตุและมีโค้ดอันตรายแทรกอยู่
2.3 ระบบ AI Applications, AI Gateway, LiteLLM Proxy และระบบพัฒนาซอฟต์แวร์ที่ติดตั้งหรือเรียกใช้งานแพ็กเกจดังกล่าว รวมถึงระบบที่ติดตั้ง LiteLLM เป็น Dependency โดยไม่ได้ตรวจสอบเวอร์ชัน

3. ผลกระทบที่อาจเกิดขึ้น
3.1 การรั่วไหลของข้อมูลรับรอง (Credential Theft) ผู้โจมตีอาจขโมย API Keys, Cloud Access Tokens, Private Keys และข้อมูลการยืนยันตัวตน เพื่อนำไปใช้เข้าถึงระบบหรือบริการที่เกี่ยวข้องโดยไม่ได้รับอนุญาต
3.2 การรันคำสั่งอันตราย (Remote Code Execution) Backdoor อาจเปิดโอกาสให้ผู้โจมตีดาวน์โหลดและรันคำสั่ง Python เพิ่มเติม เพื่อติดตั้งมัลแวร์หรือควบคุมการทำงานของระบบที่ได้รับผลกระทบ
3.3 การคงอยู่ภายในระบบ (Persistence) มัลแวร์อาศัยไฟล์ .pth และกระบวนการทำงานเบื้องหลัง เพื่อให้โค้ดอันตรายสามารถทำงานซ้ำหรือเริ่มทำงานใหม่เมื่อมีการเปิดใช้งาน Python Interpreter
3.4 การขยายขอบเขตการโจมตี (Lateral Movement) ข้อมูลรับรองที่ถูกขโมยอาจถูกนำไปใช้เข้าถึงระบบอื่นภายในองค์กร โดยเฉพาะบริการ Cloud และระบบที่เชื่อมต่อกับโครงสร้างพื้นฐานด้าน AI ส่งผลให้ความเสียหายขยายวงกว้างขึ้น

4. แนวทางการตรวจสอบและป้องกัน [4]
4.1 ตรวจสอบเวอร์ชัน LiteLLM ที่ติดตั้งในระบบทั้งหมด โดยใช้คำสั่ง pip show litellm หรือ pip freeze | grep -i litellm และตรวจสอบ Docker Images ที่ใช้งาน หากพบเวอร์ชัน 1.107.0 ให้ถือว่าเป็นระบบที่ต้องตรวจสอบความเสี่ยงโดยเร่งด่วน
4.2 หยุดใช้งาน LiteLLM เวอร์ชัน 1.107.0 และเปลี่ยนไปใช้เวอร์ชัน 1.106.2 ที่ตรวจสอบความถูกต้องแล้ว โดยควรกำหนดเวอร์ชันและตรวจสอบ Digest ของ Docker Images ก่อนนำไปใช้งาน
4.3 ตรวจสอบไฟล์ต้องสงสัย เช่น cook.pth, cook.py และ sitecustomize.py ใน Python Environment รวมถึงตรวจสอบกระบวนการ Python ที่ทำงานผิดปกติหรือมีการเชื่อมต่อออกไปยังปลายทางที่ไม่รู้จัก
4.4 ตรวจสอบ Network Logs, DNS Logs, EDR และ SIEM เพื่อค้นหาการเชื่อมต่อไปยังโดเมน litellm[.]dev โดยเฉพาะเส้นทาง /healthcheck รวมถึงกิจกรรมต้องสงสัยที่เกี่ยวข้องกับการดาวน์โหลดและรันคำสั่งจากภายนอก
4.5 หากพบว่ามีการติดตั้งแพ็กเกจที่ได้รับผลกระทบ ให้เพิกถอนและเปลี่ยน API Keys, Cloud Credentials, GitHub Tokens และข้อมูลรับรองอื่นที่อาจถูกเข้าถึง โดยดำเนินการจากเครื่องหรือสภาพแวดล้อมที่ปลอดภัย
4.6 ตรวจสอบระบบ CI/CD และ Dependency ของแอปพลิเคชัน พร้อมกำหนดการใช้งานแพ็กเกจจากแหล่งที่เชื่อถือได้ ตรวจสอบ Hash หรือ Digest และใช้เครื่องมือ Software Composition Analysis (SCA) เพื่อลดความเสี่ยงจากการโจมตีผ่านห่วงโซ่อุปทานซอฟต์แวร์

5. แนวทางลดความเสี่ยง [5]
5.1 แยกระบบที่สงสัยว่าติดมัลแวร์ออกจากเครือข่ายตามความเหมาะสม และเก็บหลักฐานที่จำเป็นก่อนดำเนินการแก้ไข
5.2 สร้าง Python Environment หรือ Container ใหม่จากแหล่งที่เชื่อถือได้ แทนการลบเฉพาะแพ็กเกจที่ได้รับผลกระทบ เนื่องจากมัลแวร์อาจสร้างไฟล์หรือกระบวนการคงอยู่ในระบบ
5.3 ตรวจสอบการเข้าถึง Cloud Services, AI Platforms และ GitHub Accounts เพื่อค้นหาการใช้งานข้อมูลรับรองผิดปกติ พร้อมเพิกถอนสิทธิ์หรือ Tokens ที่อาจรั่วไหล
5.4 เฝ้าระวังการเชื่อมต่อเครือข่ายและการทำงานของ Python Processes อย่างต่อเนื่อง และตรวจสอบความปลอดภัยของระบบก่อนนำกลับมาให้บริการ

แหล่งอ้างอิง
[1] https://dg.th/6dlg198bnh
[2] https://dg.th/sgoe5jzaqf
[3] https://dg.th/jurok92cm3
[4] https://dg.th/f6d7acuzj2
[5] https://dg.th/5nmqj3uapw