PyPI ve Docker Üzerinden Dağıtılan Zararlı Sürüm
Saldırı, LiteLLM 1.107.0 sürümünü hedef aldı. Paket, PyPI üzerinden dağıtılan wheel dosyaları ve Docker imajları yoluyla kullanıcılara ulaştı. Tespitin ardından Python Package Index yönetimi ilgili sürümü karantinaya aldı, zararlı Docker imajları ise kayıtlardan silindi. LiteLLM tarafı ayrıca, yeni zararlı paketlerin yayımlanmasını engellemek için kamuya açık kayıtlardaki GitHub organizasyonuna yönelik güvenilir bağlantıları güncellediğini ve kaldırdığını duyurdu.Etkilenen dosyalar arasında yedi farklı wheel ve bir kaynak arşivi bulunuyor. Listelenen wheel dosyaları şöyle: litellm-1.107.0-cp310-abi3-macosx_10_12_x86_64.whl, litellm-1.107.0-cp310-abi3-macosx_11_0_arm64.whl, litellm-1.107.0-cp310-abi3-manylinux_2_28_aarch64.whl, litellm-1.107.0-cp310-abi3-manylinux_2_28_x86_64.whl, litellm-1.107.0-cp310-abi3-musllinux_1_2_aarch64.whl, litellm-1.107.0-cp310-abi3-musllinux_1_2_x86_64.whl ve litellm-1.107.0-cp310-abi3-win_amd64.whl. Ayrıca litellm-1.107.0.tar.gz arşivinde doğrudan zararlı yük bulunmadığı ancak pyproject.toml dosyasının tahrif edildiği belirtildi.
Saldırının Kaynağı: Çalınan GitHub Tokenları
Oliver Jensen, yapılan incelemede zararlı eylemlerin üç mühendisin GitHub hesapları üzerinden gerçekleştirildiğini ve bunun çalınan GitHub CLI OAuth tokenları yoluyla olmuş gibi göründüğünü söyledi. Jensen, tehdit aktörünün bir kullanıcının hesabını proje sürüm yayımlama işlemini tetiklemek için, bir diğer kullanıcının hesabını ise bu işlemi onaylamak için kullandığını ifade etti. Saldırıda rol oynayan tüm tokenların iptal edildiği açıklandı.Jensen, tehdit aktörünün ilgili tokenları nasıl ele geçirdiğine dair mekanizmanın henüz tespit edilemediğini, bu nedenle söz konusu GitHub hesaplarına yönelik erişimin tamamen kesildiğinin henüz doğrulanamadığını belirtti. Geçici bir önlem olarak, etkilenmeyen tek bir kullanıcı hariç tüm kullanıcıların GitHub organizasyonundan çıkarıldığı bildirildi. Soruşturmanın bu vektörü netleştirmeye odaklandığı aktarıldı.
Zararlı Yazılım Nasıl Çalışıyor: cook.pth ve İki Aşamalı Yük
Zararlı sürümün analizine göre paket iki aşamalı bir yük içeriyor. StepSecurity, ilk yükün kendini privcollect olarak adlandıran bir kimlik hırsızı olduğunu, ikinci yükün ise her saat başı bir GitHub dead drop adresini kontrol eden ve saldırganın sunduğu Python kodunu çalıştıran bir arka plan daemonu oluşturduğunu açıkladı.Zararlı yazılım, LiteLLM içe aktarılmadan önce bile Python yorumlayıcısı başlatıldığında otomatik olarak çalışacak şekilde tasarlandı. Bu, cook.pth adlı bir path dosyası aracılığıyla gerçekleştiriliyor. cook.pth dosyası tek bir satır içeriyor: import cook. Bu komut, kimlik toplayıcı yükünü başlatan cook modülünü tetikliyor. Aynı davranışın, Mart ayında yaşanan TeamPCP tedarik zinciri saldırıları kapsamındaki LiteLLM ele geçirilmesinde de gözlemlendiği kaydedildi.
Hangi Veriler Hedeflendi ve Veriler Nereye Gönderildi
cook modülü üzerinden çalışan kimlik hırsızı, geniş bir veri kümesini toplamayı hedefliyor. Hedefler arasında bulut tokenları, geliştirici hesapları ve özel anahtarlar, AI araçlarına ait kimlik bilgisi JSON dosyaları, Chromium ve Firefox ile ilişkili tarayıcı verileri ve ortam değişkenleri yer alıyor. Zararlı yazılım ayrıca LiteLLM dağıtımlarını hedef alarak proxy üzerinde kayıtlı kimlik bilgilerini ve model yapılandırmasını çıkarmayı amaçlıyor.Toplanan veriler GZIP ile sıkıştırılmış bir TAR arşivi halinde paketleniyor ve HTTP POST isteği yoluyla litellm.dev/healthcheck adresine gönderiliyor. Bu mekanizma, ele geçirilen sistemlerden toplanan hassas bilgilerin dışarı sızdırılması için kullanılıyor.
Arka Kapı Mekanizması ve Alınması Gereken Önlemler
İkinci yük, kalıcılık ve uzaktan kod çalıştırma işlevi görüyor. Zararlı yazılım, github.com/letters9813 adresindeki bir GitHub deposu içinde bulunan domain.txt adlı metin dosyasının içeriğini okuyacak şekilde tasarlandı. Dosyada bir alan adı bulunması halinde aynı hırsız yazılım yeniden çalıştırılıyor ve ardından <domain>/codepy adresine HTTP GET isteği gönderilerek dönen yanıt yürütülüyor. İnceleme sırasında söz konusu GitHub deposunun 404 hatası döndürdüğü görüldü.Zararlı sürümü indiren kullanıcılara yönelik öneri, ele geçirilmiş olabilecek kimlik bilgilerini temiz bir ortamdan iptal edip yenilemeleri ve 1.106.2 sürümüne digest ile sabitlemeleri yönünde oldu. PyPI tarafında karantina ve Docker imajlarının kaldırılması ile GitHub organizasyonundaki geçici kısıtlamalar, yeni yayımların önüne geçmek için alınan önlemler arasında yer aldı.

Siber Güvenlik
Siber Güvenlik
Siber Güvenlik
Yorumlar (0)
Yorum yapmak için giriş yapmalısınız.