LiteLLM 1.107.0 ถูกฝังมัลแวร์ขโมยคีย์ AI และ RAT ซ้ำรอยเหตุบน PyPI เมื่อเดือนมีนาคม
LiteLLM 1.107.0 บน PyPI และ Docker ถูกฝังมัลแวร์ขโมยข้อมูลรับรองกับ RAT เมื่อ 21 ต.ค. 2026 รุ่นที่ปลอดภัยคือ 1.106.2 และผู้ที่ติดตั้งต้องหมุนคีย์ทุกชุด
โดย กองบรรณาธิการ THAI DATA อ่าน 5 นาที

สรุปประเด็นสำคัญ
- ผู้โจมตีใช้ระบบออกรุ่นของ LiteLLM ปล่อย LiteLLM 1.107.0 ขึ้น PyPI เมื่อ 21 ตุลาคม 2026 อยู่ราว 2 ชั่วโมง (11:39–13:23 UTC หรือ 18:39–20:23 น. เวลาไทย) ทั้ง 7 wheel มีมัลแวร์ และ Docker image 4 แท็กก็ติดด้วย
- มัลแวร์ใน LiteLLM 1.107.0 มีสองส่วน คือ infostealer ที่ดึงคีย์ของผู้ให้บริการ AI จากฐานข้อมูลของ LiteLLM Proxy ข้อมูลรับรองคลาวด์ และ token ของเครื่องมือนักพัฒนา กับ RAT ที่รอรับโค้ดจากผู้โจมตีทุกชั่วโมง
- LiteLLM ระบุว่าผู้โจมตีใช้ GitHub CLI OAuth token ของวิศวกร 3 คน ที่หลุดจาก log ของ LiteLLM ภายในที่เปิดออกอินเทอร์เน็ต และสร้างแพ็กเกจจาก repository ปลอมชื่อ Berri-AI/litellm
- รุ่นที่ปลอดภัยคือ 1.106.2 ผู้ที่ติดตั้ง LiteLLM 1.107.0 ต้องถือว่าข้อมูลรั่วแล้ว และ Wiz พบการนำข้อมูลรับรอง AWS ที่ขโมยไปใช้ราว 4.5 ชั่วโมงหลังส่งข้อมูลออก
LiteLLM ยืนยันว่ารุ่น LiteLLM 1.107.0 ที่ขึ้น PyPI และ Docker เมื่อวันที่ 21 ตุลาคม 2026 ถูกผู้โจมตีฝังมัลแวร์ขโมยข้อมูลรับรองและโปรแกรมควบคุมเครื่องจากระยะไกล (RAT) ผ่านระบบออกรุ่นของบริษัทเอง แพ็กเกจอยู่บน PyPI ราว 2 ชั่วโมงก่อนถูกถอด รุ่นที่ปลอดภัยคือ 1.106.2
LiteLLM เป็นซอฟต์แวร์โอเพนซอร์สที่องค์กรใช้เป็น AI gateway รวมการเรียกโมเดลจากผู้ให้บริการหลายสิบรายไว้ที่จุดเดียว ตัว proxy จึงเก็บคีย์ API ของผู้ให้บริการโมเดลเหล่านั้นไว้ในฐานข้อมูล นี่เป็นครั้งที่สองในปีนี้ที่แพ็กเกจของ LiteLLM ถูกฝังมัลแวร์ ต่อจากเหตุเมื่อ 24 มีนาคม 2026

LiteLLM 1.107.0 ส่วนไหนที่ติดมัลแวร์
รายงานของ LiteLLM ระบุช่วงเวลาและแพ็กเกจที่ได้รับผลกระทบไว้ดังนี้ (เวลาไทยเร็วกว่า UTC 7 ชั่วโมง)
| ช่องทาง | สิ่งที่ติดมัลแวร์ | ช่วงเวลา (UTC, 21 ต.ค. 2026) |
|---|---|---|
| PyPI | litellm==1.107.0 ทั้ง 7 wheel |
11:39:51 ถึง 13:23 |
| Docker Hub | แท็ก v1.107.0, latest, main-latest และ main-stable | 11:46:56 ถึง 14:20 |
| GHCR | แท็กเดียวกันของ litellm, litellm-database และ litellm-non_root | 11:46:56 ถึงก่อน 13:51 |
LiteLLM ย้ำว่าแท็ก v1.107.0 ใน GitHub ไม่มีไฟล์อันตราย แพ็กเกจที่ติดมัลแวร์สร้างจาก repository ที่ผู้โจมตีควบคุม รุ่นก่อนหน้าทั้งหมดปลอดภัย และลูกค้า Enterprise ที่ใช้ registry ส่วนตัวไม่ได้รับผลกระทบ หน้าประวัติรุ่นบน PyPI ตอนนี้แสดง LiteLLM 1.107.0 เป็น "Release quarantined"

มัลแวร์ใน LiteLLM 1.107.0 ทำอะไร
Aikido Security ซึ่งเผยแพร่บทวิเคราะห์ในวันเดียวกัน อธิบายว่าผู้โจมตีเพิ่มคำสั่งในไฟล์ pyproject.toml ให้เครื่องมือ build รวมโฟลเดอร์ที่ไม่มีใน repository จริงเข้าไปใน wheel การติดตั้ง LiteLLM 1.107.0 จึงวางไฟล์ 3 ไฟล์ลงใน site-packages ซึ่ง Python รันเองทุกครั้งที่เริ่มทำงาน
- cook.pth และ cook.py คือ infostealer ที่รันทันทีที่เปิด Python ครั้งแรก เก็บรหัสผ่านที่บันทึกในเบราว์เซอร์ คีย์ SSH ข้อมูลรับรองของ AWS, Azure และ Google Cloud (รวมการดึงจาก instance metadata) token ของ Kubernetes และระบบ CI/CD ไฟล์ตั้งค่าของเครื่องมือเขียนโค้ดด้วย AI และตัวแปร environment ของทุก process ที่อ่านได้
- ดึงคีย์ AI ทั้งหมดจาก LiteLLM Proxy ถ้าเครื่องตั้งค่า
DATABASE_URLมัลแวร์จะอ่านตาราง LiteLLM_CredentialsTable และ LiteLLM_ProxyModelTable ซึ่งเก็บคีย์ของผู้ให้บริการโมเดลทุกรายที่ proxy ใช้ - sitecustomize.py คือ RAT ที่แยกตัวไปรันเบื้องหลังและเช็กทุกชั่วโมงว่าผู้โจมตีกำหนดโดเมนใหม่ไว้ใน repository บน GitHub หรือไม่ ถ้ามีจะดาวน์โหลดโค้ด Python มารันด้วยสิทธิ์ของ process นั้น
ข้อมูลที่ขโมยได้ถูกเข้ารหัสแล้วส่งไปที่ www.litellm[.]dev ซึ่งเป็นโดเมนของผู้โจมตีที่เลียนชื่อ ไม่ใช่โดเมนของโครงการ Aikido รายงานว่า GitHub ลบ repository ที่ RAT ใช้รับโดเมนไปแล้ว ส่วน Wiz ระบุว่า ณ เวลาที่วิเคราะห์ ไฟล์ดังกล่าวไม่เคยถูกใส่โดเมนจริงนอกจากค่าทดสอบ และโค้ดของมัลแวร์มีสัญญาณชัดเจนว่าเขียนโดยใช้ LLM ช่วย

ผู้โจมตีเข้าระบบออกรุ่นของ LiteLLM ได้อย่างไร
หลังเหตุเดือนมีนาคม LiteLLM ย้ายการออกรุ่นไป repository ส่วนตัว ใช้ Trusted Publishers ล็อกแท็ก Docker ไม่ให้เปลี่ยน และเซ็นอิมเมจ แต่รายงานของบริษัทเล่าว่าผู้โจมตีผ่านการป้องกันหลายชั้นได้
- วันจันทร์ก่อนเกิดเหตุ บริษัทขยายสิทธิ์ออกรุ่นชั่วคราวให้วิศวกรอีก 2 คนเพื่อออกแพตช์รายวันให้ลูกค้า
- ผู้โจมตีมี GitHub CLI OAuth token ของวิศวกร 3 คน หนึ่งในนั้นเป็นของเจ้าของ organization บน GitHub จึงปิด branch protection และ force push การแก้ workflow ได้
- workflow ที่ถูกแก้ดึงซอร์สจาก repository ชื่อคล้ายกันคือ Berri-AI/litellm (ของจริงคือ BerriAI/litellm) แล้วเซ็นและเผยแพร่แพ็กเกจตามขั้นตอนปกติ โดยใช้บัญชีที่สองกดอนุมัติ และบัญชีที่สามลบบันทึกการรัน workflow
LiteLLM ระบุว่า token หลุดจาก LiteLLM ภายในบริษัทที่เปิดออกอินเทอร์เน็ต ซึ่งพบบัญชีผู้ใช้แปลกปลอมชื่อดูไม่มีพิษภัย บริษัทเชื่อว่าผู้โจมตีอ่าน token จาก log ของระบบนั้น และสงสัยว่าเข้ามาผ่านช่องโหว่ที่เพิ่งแพตช์ไป บริษัทยังระบุว่าพบบางสถานการณ์ที่ Claude Code ใส่ GitHub CLI OAuth token ของผู้ใช้ลงใน response body ซึ่งไปอยู่ใน log ได้เมื่อระบบบันทึก response ทั้งหมด LiteLLM บอกว่ายังอยู่ระหว่างยืนยันรายละเอียดเหล่านี้
ระหว่างสอบสวน LiteLLM ถอดผู้ใช้ออกจาก organization บน GitHub ทั้งหมดเหลือคนเดียวที่ไม่ได้รับผลกระทบ ล็อก registry ไม่ให้ออกรุ่นใหม่ และหยุดออกรุ่นตามปกติ

ข้อมูลที่ LiteLLM 1.107.0 ขโมยไปถูกนำไปใช้แล้ว
Wiz รายงานว่าเริ่มเห็นการใช้ข้อมูลรับรองที่ขโมยไปราว 4.5 ชั่วโมงหลังส่งข้อมูลออก ระหว่าง 16:20 ถึง 17:01 UTC ผู้โจมตีทดสอบข้อมูลรับรองของ AWS instance role ที่ได้จาก runner ของ CI และ node ของ Kubernetes ในหลายสภาพแวดล้อม ด้วย sts:GetCallerIdentity แล้วตามด้วยการเรียกรายชื่อโมเดลบน Amazon Bedrock ซึ่ง Wiz ระบุว่าตรงกับรูปแบบ LLMjacking หรือการนำบัญชีคลาวด์ของผู้อื่นไปใช้โมเดล AI ในบางสภาพแวดล้อมผู้โจมตียังไล่สำรวจผู้ใช้และสิทธิ์ใน IAM ด้วย
ทำไมเรื่องนี้สำคัญ
LiteLLM 1.107.0 แสดงให้เห็นว่า AI gateway เป็นเป้าที่คุ้มค่า เพราะเป็นจุดเดียวที่รวมคีย์ของผู้ให้บริการโมเดลทุกราย เหตุครั้งก่อนเมื่อ 24 มีนาคม 2026 รุ่น 1.82.7 และ 1.82.8 อยู่บน PyPI ราว 40 นาที และ LiteLLM เชื่อว่าต้นเหตุมาจาก Trivy ใน CI/CD ครั้งนี้ระบบออกรุ่นที่ปรับใหม่แล้วยังถูกเจาะผ่าน token ของนักพัฒนา ตัว LiteLLM Proxy เองก็เป็นเป้า แค็ตตาล็อก KEV ของ CISA มีช่องโหว่ของ LiteLLM ที่ถูกโจมตีจริงแล้ว 3 รายการในปี 2026 ได้แก่ CVE-2026-42208, CVE-2026-42271 และ CVE-2026-59822 รูปแบบนี้คล้ายกับกรณี OVHcloud CLI ที่ไฟล์บน GitHub ถูกสลับเป็นมัลแวร์ขโมยคีย์คลาวด์
สิ่งที่องค์กรไทยควรทำ
- ตรวจทุกที่ที่อาจติดตั้ง LiteLLM 1.107.0 ทั้งเครื่องนักพัฒนา runner ของ CI และ container ที่ดึงแท็ก latest, main-latest หรือ main-stable ระหว่าง 18:39 ถึง 21:20 น. เวลาไทยของวันที่ 21 ตุลาคม ใช้
pip show litellmและค้นหาไฟล์ cook.pth, sitecustomize.py และ/tmp/.pc_once_72129118c59f5636c0bbตามที่ LiteLLM และ Aikido เผยแพร่ - อย่าเริ่มด้วย pip install บนเครื่องที่ติด LiteLLM 1.107.0 แล้ว LiteLLM เตือนว่าการเปิด Python ทุกครั้งรวมถึง pip จะรันมัลแวร์ซ้ำ ให้ลบไฟล์จาก shell หยุด process ที่ถือ
/tmp/remote_code_loader.lockแล้วสร้าง environment หรืออิมเมจใหม่จาก 1.106.2 - หมุนคีย์ทุกชุดที่เครื่องนั้นเข้าถึงได้ โดยเฉพาะคีย์ของผู้ให้บริการ AI ใน LiteLLM Proxy, master key, virtual key, รหัสผ่านฐานข้อมูล และ IAM role จากนั้นตรวจ CloudTrail และบิลการใช้ Bedrock หรือบริการโมเดลอื่นที่ผิดปกติ
- ปักหมุดเวอร์ชันและไม่ดึงแท็กลอย ใช้ LiteLLM 1.106.2 ด้วย digest ที่ตรวจแล้ว และอย่าเปิด LiteLLM Proxy หรือหน้า log ของมันออกอินเทอร์เน็ตโดยไม่จำเป็น ติดตามข่าว AI อื่น ๆ ได้ที่หมวด AI
คำถามที่พบบ่อย
LiteLLM 1.107.0 มีปัญหาอะไร?
LiteLLM 1.107.0 ที่ขึ้น PyPI และ Docker เมื่อ 21 ตุลาคม 2026 ถูกผู้โจมตีฝังมัลแวร์ผ่านระบบออกรุ่นของ LiteLLM เอง ในแพ็กเกจมี infostealer ที่ขโมยข้อมูลรับรองและคีย์ของผู้ให้บริการ AI กับ RAT ที่รอรับโค้ดจากผู้โจมตี LiteLLM ถอนรุ่นนี้ออกแล้วและแนะนำให้ใช้ 1.106.2
รู้ได้อย่างไรว่าติดตั้ง LiteLLM 1.107.0 ไปแล้ว?
วิธีตรวจ LiteLLM 1.107.0 ที่ LiteLLM แนะนำคือใช้ pip show litellm ค้นหา litellm-1.107.0.dist-info, cook.pth และ sitecustomize.py ใน site-packages และดูว่าเคยรัน Docker image ที่ digest ขึ้นต้นด้วย sha256:1bbcb1443bc9 หรือไม่ ถ้าพบถือว่าเครื่องถูกเจาะ แต่ถ้าไม่พบก็ยังยืนยันไม่ได้ว่าเครื่องปลอดภัย
ถ้าเคยติดตั้ง LiteLLM 1.107.0 ต้องหมุนคีย์อะไรบ้าง?
ผู้ที่เคยติดตั้ง LiteLLM 1.107.0 ต้องหมุน IAM role ของเครื่องหรือ task คีย์ของผู้ให้บริการ AI ทุกชุดที่เก็บในฐานข้อมูลของ LiteLLM Proxy รวม master key และ virtual key รหัสผ่านใน DATABASE_URL และความลับทุกตัวที่อยู่ใน environment ของ process บนเครื่องนั้น แล้วตรวจ CloudTrail หา GetCallerIdentity
LiteLLM เคยถูกฝังมัลแวร์มาก่อนหรือไม่?
เคย ครั้งก่อนเกิดเมื่อ 24 มีนาคม 2026 ตอนนั้น LiteLLM 1.82.7 และ 1.82.8 ที่มีตัวขโมยข้อมูลรับรองอยู่บน PyPI ราว 40 นาที LiteLLM เชื่อว่าต้นเหตุมาจาก Trivy ที่ใช้ใน CI/CD หลังเหตุนั้นบริษัทปรับระบบออกรุ่นใหม่ แต่ระบบใหม่ก็ถูกเจาะในเหตุ LiteLLM 1.107.0
แหล่งอ้างอิง
- Contained: Oct 21, 2026 LiteLLM release v1.107.0 Compromised — LiteLLM
- [SECURITY] litellm 1.107.0 compromised (PyPI removed; Docker latest/main-stable removed) — GitHub (BerriAI/litellm)
- LiteLLM compromised again: infostealer and RAT found in version 1.107.0 — Aikido Security
- LiteLLM Compromised, Steals Credentials — Wiz
- Security Update: Suspected Supply Chain Incident — LiteLLM
- litellm · PyPI (release history) — Python Package Index
บุคคล องค์กร และสถานที่ในข่าวนี้
เลือกชื่อเพื่ออ่านข่าวทั้งหมดที่กล่าวถึง ตัวเลขคือจำนวนข่าว
- องค์กรและบริษัท
- GitHub50Wiz10AWS51Google Cloud42CISA29
- ผลิตภัณฑ์และเทคโนโลยี
- PyPI5Docker12Python21Microsoft Azure41Kubernetes24Claude Code15Amazon Bedrock6
พบข้อมูลคลาดเคลื่อน? แจ้งกองบรรณาธิการ