LiteLLM bị xâm nhập trong cuộc tấn công chuỗi cung ứng mới, hơn 49.000 lượt tải mã độc

Phần mềm23 tháng 10, 2026·5 phút đọc

LiteLLM vừa trở thành nạn nhân của một cuộc tấn công chuỗi cung ứng khi kẻ tấn công chiếm được token OAuth của GitHub CLI để đẩy gói độc hại lên PyPI và Docker. Phiên bản 1.107.0 tồn tại trên mạng khoảng 3 giờ và bị tải xuống hơn 49.000 lần, chứa mã độc đánh cắp thông tin và RAT.

LiteLLM bị xâm nhập trong cuộc tấn công chuỗi cung ứng mới, hơn 49.000 lượt tải mã độc

LiteLLM — proxy mã nguồn mở phổ biến dùng để định tuyến yêu cầu giữa các nhà cung cấp mô hình ngôn ngữ lớn — vừa bị xâm nhập trong một cuộc tấn công chuỗi cung ứng mới. Kẻ tấn công đã phát tán gói độc hại tới người dùng thông qua cả PyPI lẫn Docker, biến một công cụ được tin dùng trong cộng đồng AI thành phương tiện phát tán mã độc.

Minh họa tấn công chuỗi cung ứng phần mềmMinh họa tấn công chuỗi cung ứng phần mềm

Diễn biến vụ việc

Sự cố xảy ra vào ngày 21/10, liên quan đến phiên bản 1.107.0 của LiteLLM. Các gói độc hại tồn tại trực tuyến khoảng 3 giờ và ước tính đã bị tải xuống hơn 49.000 lần.

Sau khi phát hiện, các gói đã được gỡ khỏi PyPI, còn các tag và biến thể image trên Docker Hub được xóa hoặc trỏ lại về các artifact sạch. Theo LiteLLM, khách hàng doanh nghiệp kéo gói từ kho riêng tư của công ty không bị ảnh hưởng.

Lỗ hổng bắt đầu từ đâu?

Theo điều tra của LiteLLM, kẻ tấn công đã lấy được token OAuth của GitHub CLI gắn với "một tài khoản người dùng có tên vô hại, không ngờ tới trong hệ thống LiteLLM nội bộ, và hệ thống này lại mở ra internet công cộng".

Nhiều khả năng các token này bị rò rỉ qua Claude Code — trong một số tình huống nhất định, công cụ này nhúng token vào nội dung phản hồi, và nội dung đó có thể bị ghi vào log của LiteLLM. Kẻ tấn công sau đó khai thác chính các log này để lấy token.

Tuy nhiên, LiteLLM cho biết vẫn chưa rõ kẻ tấn công truy cập hệ thống nội bộ bằng cách nào hoặc đã di chuyển ngang trong hệ thống ra sao, bởi chúng nắm trong tay ba bộ thông tin đăng nhập GitHub CLI của lập trình viên.

Cách kẻ tấn công thao túng quy trình phát hành

Với thông tin đăng nhập bị chiếm đoạt, kẻ tấn công đã:

  • Vô hiệu hóa các biện pháp bảo vệ nhánh (branch protection)
  • Hợp nhất một thay đổi khiến quy trình phát hành trỏ sang kho mã nguồn khác
  • Chạy một workflow GitHub bị sửa đổi trỏ tới kho giả mạo
  • Ký và phát hành các artifact đã bị đầu độc

Các gói độc hại được cho là xây dựng với sự hỗ trợ của AI và phát tán từ kho Berri-AI/litellm — tên gần giống với kho hợp pháp BerriAI/litellm.

Mã độc làm gì?

Payload giải nén ba tệp vào thư mục gốc site-packages, khiến chúng được thực thi mỗi khi trình thông dịch Python chạy.

Thành phần đầu tiên là một information stealer, thu thập:

  • Thông tin hệ thống
  • Thông tin đăng nhập và cookie trên trình duyệt
  • Thông tin đăng nhập của lập trình viên
  • Biến môi trường
  • Bí mật đám mây (AWS, GCP, Azure)
  • API key của các công cụ AI (Anthropic, GitHub Copilot, OpenAI...)
  • Khóa riêng tư SSH
  • Lịch sử shell
  • Khóa GPG

Dữ liệu bị đánh cắp được mã hóa rồi gửi về máy chủ litellm[.]dev.

Ngoài ra, mã độc còn chứa thành phần RAT (trojan truy cập từ xa), thường xuyên liên lạc với máy chủ điều khiển (C&C) của kẻ tấn công. Theo StepSecurity, RAT "kiểm tra một điểm trung chuyển trên GitHub mỗi giờ và chạy bất kỳ đoạn mã Python nào kẻ tấn công đưa lên".

Dấu hiệu bị khai thác tài nguyên AI

Công ty an ninh mạng Wiz cho biết kẻ tấn công bắt đầu lạm dụng thông tin đăng nhập bị đánh cắp chỉ khoảng 4,5 giờ sau khi dữ liệu bị rò rỉ. Wiz đã ghi nhận các truy vấn tới mô hình Amazon Bedrock bằng thông tin xác thực AWS bị đánh cắp — dấu hiệu của kỹ thuật LLMjacking, tức chiếm dụng tài nguyên mô hình AI để trục lợi mà nạn nhân phải trả tiền.

An ninh mạng và các cuộc tấn công chuỗi cung ứngAn ninh mạng và các cuộc tấn công chuỗi cung ứng

Người dùng cần làm gì ngay lập tức?

Những ai đã cài LiteLLM phiên bản 1.107.0 cần hành động khẩn cấp:

  • Gỡ bỏ ngay phiên bản 1.107.0
  • Xoay vòng toàn bộ thông tin đăng nhập (API key, token, khóa SSH, bí mật đám mây) đã có trên hệ thống
  • Quét toàn bộ hệ thống để tìm mã độc
  • Cân nhắc cài đặt lại từ môi trường sạch nếu nghi ngờ bị nhiễm

Phiên bản LiteLLM sạch gần nhất là 1.106.2. Do mã độc có khả năng đọc khóa SSH và lịch sử shell, các doanh nghiệp sử dụng LiteLLM trong hạ tầng nội bộ nên kiểm tra log truy cập ra ngoài và rà soát các tài khoản có quyền phát hành gói trên PyPI/Docker.

Đây là lời nhắc nhở rằng ngay cả những công cụ mã nguồn mở được cộng đồng AI tin dùng cũng có thể trở thành bàn đạp tấn công khi kẻ xâm nhập chiếm được thông tin đăng nhập của nhà phát triển.

Với các đội ngũ phát triển tại Việt Nam đang sử dụng LiteLLM để tích hợp nhiều mô hình AI trong sản phẩm, việc ghim phiên bản cụ thể, kiểm tra checksum và theo dõi thông báo bảo mật từ dự án là biện pháp phòng vệ cần thiết.

SecurityWeekSecurityWeek

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗