Popüler LiteLLM Python paketi, SafeDep, Socket, StepSecurity ve Upwind raporlarına göre kimlik avcısı ve arka kapı gönderen bir yazılım tedarik zinciri saldırısında ele geçirildi.
Saldırı, PyPI tekerlekleri ve Docker imajları üzerinden dağıtılan LiteLLM 1.107.0 sürümünü etkiliyor. Python paketi Python Package Index'te karantinaya alındı ve kötü amaçlı Docker imajları kaldırıldı.
LiteLLM'de güvenlik direktörü Oliver Jensen, olayla ilgili soruşturmanın sürdüğünü söyledi ve tehdit aktörünün kötü amaçlı sürümü nasıl yayımladığına dair orijinal saldırı vektörünü izlemeye çalıştıklarını belirtti.
"Kötü amaçlı eylemlerin üç mühendisin GitHub hesapları üzerinden gerçekleştirildiğini tespit ettik; bu, çalınmış GitHub CLI OAuth belirteçleri yoluyla görünüyor" dedi Jensen. "Tehdit aktörü bir kullanıcının hesabını proje yayıcısını tetiklemek için, başka bir kullanıcının hesabını da onaylamak için kullandı. Bu saldırıda yer alan tüm belirteçler iptal edildi."
"İlgili belirteçlerin tehdit aktörü tarafından nasıl elde edildiği mekanizmasını henüz tespit etmedik, bu yüzden bu GitHub hesaplarına daha fazla erişim olmadığını henüz söyleyemiyoruz. Geçici bir önlem olarak GitHub organizasyonumuzdan etkilenmeyen bir kullanıcı hariç tüm kullanıcıları kaldırdık."
Ayrıca LiteLLM, kötü amaçlı paketlerin daha fazla yayımlanmasını engellemek için GitHub organizasyonuna ait güvenilir bağlantıları kamu kayıtlarından kaldırdığını bildirdi.
Kötü amaçlı sürümün analizi, bulut kimlik bilgileri, özel anahtarlar, tarayıcı verileri ve yapay zeka geliştirme araçları için kimlik doğrulama dosyalarını toplamak üzere donatıldığını gösteriyor. Aşağıdaki tekerlekler etkileniyor -
litellm-1.107.0.tar.gz (Yük dosyası yok, ancak değiştirilmiş pyproject.toml içeriyor)
"İlk yük, kendisine privcollect adını veren bir kimlik avcısı" dedi StepSecurity. "İkinci yük, her saat bir GitHub ölü düşüşünü kontrol eden ve saldırganın sunduğu Python kodunu çalıştıran arka planda çalışan bir daemon oluşturuyor."
Zararlı yazılım, LiteLLM içe aktarılmadan önce bile Python tarafından bir yol dosyası ("cook.pth") aracılığıyla başlatılıyor; bu dosya yorumlayıcı başladığında kodu otomatik olarak çalıştırmak için tasarlanmış. Bu davranışın, daha önce bu Mart ayında TeamPCP tedarik zinciri saldırıları kapsamında yaşanan LiteLLM ihlalinde de görüldüğü belirtiliyor.
"cook.pth" dosyası tek bir satır içeriyor: "import cook," bu da kimlik bilgisi toplayıcı yükünü başlatıyor. Bu, bulut belirteçlerinin, geliştirici hesaplarının ve özel anahtarların toplanmasını, yapay zeka araçları kimlik bilgisi JSON dosyalarının, Chromium ve Firefox ile ilişkili tarayıcı verilerinin ve ortam değişkenlerinin toplanmasını içeriyor.
Zararlı yazılım ayrıca LiteLLM dağıtımlarını hedefleyerek proxy'nin kaydedilmiş kimlik bilgilerini ve model yapılandırmasını çıkarmaya çalışabiliyor. Toplanan veriler GZIP ile sıkıştırılmış bir TAR arşivine paketleniyor ve HTTP POST isteğiyle "litellm[.]dev/healthcheck" adresine gönderiliyor.
Ayrıca zararlı yazılım, "github[.]com/letters9813" adresindeki GitHub deposunda bulunan bir metin dosyası ("domain.txt") içeriğini okumak üzere tasarlanmış; bir alan adı içeriyorsa aynı avcıyı çalıştırıyor ve son olarak "/codepy" adresine HTTP GET isteği gönderip yanıtı çalıştırıyor. GitHub deposu şu anda 404 hatası döndürüyor.
Kötü amaçlı sürümü indiren kullanıcıların, temiz bir ortamdan tehlikeye atılmış kimlik bilgilerini iptal edip değiştirmeleri ve sürüm 1.106.2'yi özetle sabitleme yapmaları öneriliyor.