Ir konstatēta ļaunprātīgas publikācijas ievietošana PyPI krātuvē LiteLLM bibliotēkai, kas tiek lejupielādēta 23 miljonus reižu nedēļā, kā arī ļaunprātīga koda iekļaušana oficiālajā projekta Docker attēlā. Tas nav pirmais līdzīgs incidents ar LiteLLM — šī gada martā uzbrucēji jau bija publicējuši ļaunprātīgas versijas pēc izstrādātāja akreditācijas datu notveršanas. Šoreiz uzbrucēji publicēja LiteLLM versiju 1.107.0, kurā bija iekļauts ļaunprātīgs kods attālināto komandu izpildei, kā arī informācijas un piekļuves atslēgu meklēšanai un nosūtīšanai.
Ļaunprātīgais kods tika iekļauts būvēšanas posmā, neizsastāvot git repozitoriju. Pēc instalācijas ļaunprātīgais kods aktivizējas pirms LiteLLM importa, ierakstot failus cook.pth, cook.py un sitecustomize.py Python bibliotēku direktorijā. Šie faili tiek izpildīti katru reizi, kad tiek palaists Python sistēmā, lietotājam neveicot nekādas darbības.
Vispirms Python izpilda failu cook.pth, kurā ir tikai viena rinda «import cook» lai importētu scriptu cook.py, kas apkopo akreditācijas datus. Pēc tam tiek importēts skripts sitecustomize.py, kas tiek izmantots ārējā koda fona ielādei (ielādes parametri tiek noteikti saistē «raw.githubusercontent.com/letters9813/pythonclient-test/main/domain.txt»). Ļaunprātīgais kods abos skriptos ir saspiests ar zlib un kodēts ar Base64 metodi. Kompromitācijas indikators var būt failu „/tmp/.pc_once_*” un „/tmp/remote_code_loader.lock” parādīšanās sistēmā.
Pēc aktivizēšanas fails cook.py veic skenēšanu attiecībā uz savienojuma parametriem ar mākoņpakalpojumiem, repozitorijiem un nepārtrauktas integrācijas sistēmām (AWS, Azure, Google Cloud, Kubernetes, Docker, GitHub CLI, Vault, Terraform, Packer), izstrādātāju kontiem, Git savienojuma parametriem, npm un PyPI iestatījumiem, failiem ar vides mainīgajiem, SSH, PGP un TLS slēgtajiem atslēgām, AI rīku iestatījumiem, pārlūkprogrammas datu bāzēm ar sīkdatnēm, saglabātajiem datiem un vēsturi, informāciju par procesiem un vides mainīgajiem. Atklātie dati tiek šifrēti, izmantojot AES-256-CBC + RSA-4096 algoritmus, un tiek nosūtīti kā pārbaudes pieprasījums vietnei litellm.dev, kuru izveidojuši noziedznieki.
Avots: opennet.lv
