UK — The Register
Cuộc tấn công chuỗi cung ứng LiteLLM bắt nguồn từ một khóa chính bị lộ
Bảo mật2 phút đọc
LiteLLM, một công cụ mã nguồn mở dùng để kết nối với các mô hình AI, đã bị tấn công qua chuỗi cung ứng. Kẻ tấn công đã đưa một phiên bản độc hại lên kho PyPI, và nguyên nhân gốc là một khóa chính bị lộ trên GitHub từ tháng 5.
Chuyện gì đã xảy ra
Kẻ xấu đã tải lên phiên bản 1.107.0 bị cài mã độc của LiteLLM lên PyPI và các kho chứa container. Phiên bản này chứa phần mềm đánh cắp thông tin và một 'trojan truy cập từ xa', tức là chương trình cho phép kẻ xấu điều khiển máy bị nhiễm. Gói này chỉ có mặt chưa đến hai giờ trước khi bị cách ly, nhưng vẫn được tải về khoảng 49.000 lần.
Các con số chính
- Phiên bản độc hại: 1.107.0
- Thời gian gói có mặt trên PyPI: dưới 2 giờ
- Số lượt tải xuống: khoảng 49.000 (theo Wiz)
- Khóa chính bị đưa lên GitHub: ngày 27 tháng 5
- Kẻ tấn công dùng khóa này để vào hệ thống: ngày 10 tháng 10
Nguyên nhân từ đâu
Một tệp cấu hình chứa khóa chính đã bị đưa nhầm lên kho GitHub công khai. Nhóm phát triển xóa được đoạn mã đó, nhưng không thu hồi khóa. Vì khóa cũ vẫn dùng được, kẻ tấn công đã lấy được token đăng nhập GitHub CLI của quản trị viên. Từ đó, chúng có quyền chủ sở hữu với mọi kho mã của công ty. Token này không yêu cầu xác thực bổ sung, nên việc thay đổi mã trông giống như do kỹ sư thật làm.
Vì sao chuyện này quan trọng
Đây là ví dụ rõ ràng về việc không đổi khóa khi nghi ngờ bị lộ. Chỉ một khóa cũ đã có thể mở cửa cho kẻ xấu lấy được nhiều tài khoản và khóa khác. Máy nào đã cài phiên bản 1.107.0 có thể đã bị đánh cắp mật khẩu, cookie trình duyệt, khóa API của AWS, Google Cloud, Azure, OpenAI, Anthropic và nhiều nhà cung cấp AI khác.
Bạn nên làm gì
- Nếu đã cài hoặc chạy phiên bản 1.107.0, coi như mọi thông tin đăng nhập trên máy đó có thể đã bị lấy.
- Kiểm tra hệ thống bị ảnh hưởng và đổi mật khẩu.
- Thu hồi và tạo lại tất cả khóa và token bị lộ.
- Theo dõi thông báo chính thức từ LiteLLM về việc thu hồi toàn bộ token nội bộ.
Chú giải
- LiteLLM
- Công cụ mã nguồn mở giúp nhiều ứng dụng gọi đến các mô hình AI khác nhau qua một cổng chung.
- PyPI
- Kho lưu trữ công khai chứa các gói phần mềm viết bằng Python, nơi người dùng tải thư viện về cài đặt.
- GitHub
- Nền tảng lưu trữ và quản lý mã nguồn, nơi các nhóm phần mềm cùng làm việc.
- Token
- Chuỗi ký tự đóng vai trò như thẻ đăng nhập, giúp một chương trình truy cập dịch vụ mà không cần mật khẩu.