Yapay zekâ geliştiricilerinin kullandığı LiteLLM'in yeni sürümüne şifre ve anahtar çalan zararlı yerleştirildi
Yüzden fazla yapay zekâ modeline tek bir arayüzden bağlanmayı sağlayan Python paketi LiteLLM'in 21 Ekim'de yayımlanan 1.107.0 sürümü zararlı içeriyordu. Paket kurulduğu makinedeki bulut anahtarlarını, SSH anahtarlarını, tarayıcı şifrelerini ve yapay zekâ servislerinin API anahtarlarını topluyor. Paket bu yıl ikinci kez ele geçirildi.
- Güncellendi:
- 4 dk okuma
- 6 kaynak

Kısaca
- Zararlı, LiteLLM 1.107.0'ın PyPI'daki bütün derlenmiş paketlerinde ve resmi Docker imajlarında bulunuyordu. Kötü sürüm kaldırıldı, temiz sürüm olarak 1.106.2 öneriliyor.
- LiteLLM 1.107.0'ı kuranların, zararlı v1.107.0 Docker imajını çalıştıranların ya da 21 Ekim'de "latest", "main-latest" veya "main-stable" etiketleri zararlı imajı gösterirken bu etiketlerle çekilen imajı çalıştıranların o makineyi ele geçirilmiş sayması ve makinenin erişebildiği bütün şifre ve anahtarları değiştirmesi gerekiyor.
Yapay zekâ uygulaması geliştirenlerin yaygın kullandığı açık kaynaklı Python paketi LiteLLM, bir tedarik zinciri saldırısının hedefi oldu. LiteLLM; OpenAI, Anthropic, Azure gibi yüzden fazla yapay zekâ sağlayıcısına tek bir arayüzden bağlanmayı sağlıyor. Geliştirici bilgisayarlarında, otomatik derleme hatlarında ve şirketlerin yapay zekâ servislerine giden trafiği yönettiği sunucularda çalışıyor. Bu sunucular genellikle bütün yapay zekâ servislerinin API anahtarlarını da tutuyor.
Güvenlik şirketi StepSecurity’nin analizine göre 21 Ekim’de Python paket deposu PyPI’a yüklenen LiteLLM 1.107.0’ın bütün derlenmiş paketlerine (macOS, Linux ve Windows) zararlı yerleştirilmişti. Aynı zararlı, LiteLLM’in GitHub ve Docker Hub’daki resmi Docker imajlarında da vardı. LiteLLM’in olay raporuna göre Docker Hub’daki “latest”, “main-latest” ve “main-stable” etiketleri de Türkiye saatiyle 14.46 ile 17.20 arasında zararlı imajı gösterdi. PyPI kötü sürümü kaldırdı, LiteLLM de zararlı imajları sildi.
Zararlı sürümün yayımlanması
StepSecurity’ye göre 1.107.0 sürümü, LiteLLM’in gerçek kod deposundan değil, adı tek bir tireyle ayrılan sahte bir GitHub deposundan (Berri-AI/litellm) derlendi. LiteLLM’in güvenlik direktörü Oliver Jensen, The Hacker News’in aktardığı açıklamasında, zararlı işlemlerin üç mühendisin GitHub hesabı üzerinden yapıldığını ve bunun büyük olasılıkla çalınmış GitHub CLI oturum anahtarlarıyla gerçekleştiğini söyledi. Saldırgan bir hesapla yayımlama sürecini başlatmış, başka bir hesapla da onaylamış. Anahtarların nasıl çalındığı henüz belirlenemedi. LiteLLM, ilgili bütün anahtarları iptal ettiğini ve önlem olarak GitHub organizasyonundan etkilenmeyen tek bir kullanıcı dışında herkesi çıkardığını açıkladı.
Bu, LiteLLM’in bu yıl ikinci kez ele geçirilmesi. Paket Mart ayında da benzer bir saldırıya uğramıştı.
Zararlı yazılımın işlevleri
Zararlı, Python’un her açılışta otomatik çalıştırdığı dosyalara yerleşiyor. Bu yüzden LiteLLM’i kodda kullanmaya bile gerek kalmadan, paketin kurulu olduğu ortamda Python her başladığında devreye giriyor. StepSecurity iki parça tespit etti:
- Bilgi hırsızı: Tarayıcılarda kayıtlı şifreleri, SSH ve GPG anahtarlarını, bulut hesaplarının erişim bilgilerini, çalışan programların ortam değişkenlerini, 20’den fazla yapay zekâ kodlama aracının ayarlarını ve LiteLLM sunucusunun veritabanında kayıtlı yapay zekâ servisi API anahtarlarını topluyor. Bunları şifreleyip gerçeğine benzeyen litellm[.]dev alan adına gönderiyor.
- Uzaktan kod yükleyici: Arka planda çalışan bir süreç bırakıyor. Bu süreç her saat GitHub’daki bir depoyu kontrol ediyor ve saldırganın oraya koyduğu Python kodunu çalıştırıyor.
Etkilenenler
StepSecurity’ye göre yalnızca 1.107.0 sürümü zararlı. 1.107.0’ın önceki aday sürümleri (rc1, rc2) ve 1.106.x ile daha eski sürümler temiz. LiteLLM son günlerde çok sık sürüm yayımladığı ve pek çok proje paketi sabit bir sürüme bağlamadan kullandığı için, 21 Ekim’de yeni kurulum yapan ya da bağımlılıklarını güncelleyen projeler zararlı sürümü almış olabilir. Docker tarafında etkilenenler, v1.107.0 etiketli imajı çalıştıranlar ile “latest”, “main-latest” ya da “main-stable” etiketleri zararlı imajı gösterirken, yani 21 Ekim’de Türkiye saatiyle 14.46 ile 17.20 arasında (GitHub’ın imaj deposu GHCR’de 16.51’e kadar) bu etiketlerle imaj çekip çalıştıranlar. Bu etiketleri takip eden LiteLLM sunucuları da o aralıkta yeniden başlatıldıysa zararlı imajı almış olabilir.
Önerilen önlemler
Projelerinizde ve sunucularınızda kurulu LiteLLM sürümünü kontrol edin. LiteLLM 1.107.0 kurulmuşsa, zararlı v1.107.0 imajını çalıştırdıysanız ya da yukarıdaki zaman aralığında “latest”, “main-latest” veya “main-stable” etiketleriyle çekilen imajı çalıştırdıysanız, StepSecurity o makineyi tamamen ele geçirilmiş kabul edip olay müdahalesi başlatmanızı öneriyor. Zararlı Python her başladığında devreye girdiği için, imajı yalnızca indirip hiç çalıştırmadıysanız o imajı silip temiz sürümü çekmeniz gerekiyor. Ele geçirilmiş sayılan makinelerde şu adımlar öneriliyor:
- LiteLLM’i 1.106.2 sürümüne sabitleyin. Docker kullanıyorsanız v1.106.2 imajını özet değeriyle (digest) çekin.
- Python ortamının site-packages klasöründen cook.pth, cook.py ve sitecustomize.py dosyalarını silin. /tmp/remote_code_loader.lock dosyasını tutan Python süreçlerini sonlandırın.
- litellm[.]dev alan adına giden trafiği engelleyin.
- Makinenin erişebildiği bütün şifre ve anahtarları temiz bir bilgisayardan değiştirin: bulut erişim anahtarları, SSH ve GPG anahtarları, tarayıcıda kayıtlı şifreler, yapay zekâ servislerinin API anahtarları (LiteLLM sunucusunda kayıtlı olanlar dahil), otomatik derleme hatlarındaki gizli bilgiler.
Bu olay, açık kaynak paketlerin her zaman en yeni sürümle kurulmasının riskini bir kez daha gösteriyor. Bağımlılıkları belirli sürümlere sabitlemek ve yeni sürümleri kısa bir süre bekledikten sonra almak bu tür saldırıların etkisini azaltabilir.
Kaynaklar
- StepSecurity, "litellm 1.107.0 Compromised on PyPI: Backdoored Wheels Drop a Credential Stealer and an Hourly Remote Code Loader"stepsecurity.io (başka siteye gider)
- The Hacker News, "LiteLLM Compromised in Supply Chain Attack Delivering Credential Stealer and Backdoor"thehackernews.com (başka siteye gider)
- LiteLLM, "Contained: Oct 21, 2026 LiteLLM release v1.107.0 Compromised"docs.litellm.ai (başka siteye gider)
- Wiz, "LiteLLM Compromised, Steals Credentials"wiz.io (başka siteye gider)
- LiteLLM, "The attack chain behind the v1.107.0 LiteLLM release" (23 Ekim 2026)docs.litellm.ai (başka siteye gider)
- The Hacker News, "Leaked LiteLLM Master Key Let Attackers Steal GitHub Tokens and Hijack Release Pipeline"thehackernews.com (başka siteye gider)