- Python interpreter शुरू होते समय अपने-आप चलने वाली
.pth फ़ाइल शामिल है, जो API keys, SSH keys, cloud tokens जैसी संवेदनशील जानकारी इकट्ठा करके बाहरी सर्वर पर भेजती है
- दुर्भावनापूर्ण स्क्रिप्ट double base64 encoding से छिपाई गई है, और इकट्ठा किए गए डेटा को AES-256 से encrypt करके RSA public key से सुरक्षित कर
litellm.cloud पर भेजती है
- संक्रमण होने पर local environment, CI/CD, production server के credentials सभी उजागर हो सकते हैं
- 1.82.7 version में भी malicious code मौजूद होने की रिपोर्ट है, इसलिए दोनों versions जोखिमपूर्ण हैं
- security community ने पैकेज हटाने, credentials rotate करने, और supply chain security मजबूत करने की तुरंत सिफारिश की है
litellm 1.82.8 PyPI पैकेज की दुर्भावनापूर्ण litellm_init.pth फ़ाइल से जुड़ी सुरक्षा घटना
- litellm 1.82.8 version के PyPI wheel package में दुर्भावनापूर्ण
.pth फ़ाइल (litellm_init.pth) शामिल थी, जिसके कारण Python interpreter हर बार शुरू होने पर credential चोरी करने वाली script अपने-आप चलती है
- यह फ़ाइल
import litellm कमांड के बिना भी चलती है, और इसे supply chain attack के रूप में पहचाना गया है
- पैकेज की
RECORD फ़ाइल में यह malicious file दर्ज है
-
दुर्भावनापूर्ण गतिविधि का विश्लेषण
.pth फ़ाइल, Python interpreter शुरू होते समय अपने-आप चलने वाली विशेषता का फायदा उठाती है
- malicious script double base64 encoding से छिपी हुई है, और decode करने पर नीचे दिए गए चरण पूरे करती है
-
चरण 1: जानकारी संग्रह
- system information:
hostname, whoami, uname -a, ip addr, ip route
- environment variables:
printenv के जरिए API keys, secrets, tokens आदि का संग्रह
- SSH keys:
~/.ssh/ के भीतर प्रमुख key files और config files
- Git credentials:
~/.gitconfig, ~/.git-credentials
- cloud credentials: AWS, GCP, Azure से संबंधित config files और tokens
- Kubernetes config:
/etc/kubernetes/, ~/.kube/config आदि
- Docker config:
~/.docker/config.json आदि
- package manager config:
.npmrc, .netrc, .vault-token आदि
- shell history:
.bash_history, .zsh_history आदि
- cryptocurrency wallets:
~/.bitcoin/, ~/.ethereum/keystore/ आदि
- SSL/TLS private keys:
/etc/ssl/private/, .pem, .key files
- CI/CD secrets:
terraform.tfvars, .gitlab-ci.yml, Jenkinsfile आदि
- database credentials: PostgreSQL, MySQL, Redis आदि की config files
- Webhook URLs: Slack, Discord आदि के URLs की खोज
-
चरण 2: encryption और बाहरी सर्वर पर भेजना
- इकट्ठा किए गए डेटा को temporary file में सहेजा जाता है
openssl rand से 32-byte AES-256 session key बनाई जाती है
openssl enc -aes-256-cbc -pbkdf2 से डेटा encrypt किया जाता है
- session key को hardcoded 4096-bit RSA public key से encrypt किया जाता है
- दोनों files को
tpcp.tar.gz में बाँधकर भेजा जाता है
- गंतव्य:
https://models.litellm.cloud/ (आधिकारिक domain litellm.ai से अलग)
-
तकनीकी विवरण
.pth फ़ाइल Python के site-packages/ में मौजूद रहती है और interpreter शुरू होते ही अपने-आप चलती है
- payload double base64 encoding का इस्तेमाल कर detection से बचने की कोशिश करता है
- हमलावर
litellm.cloud domain का इस्तेमाल data exfiltration server के रूप में कर रहे हैं
- RSA public key की शुरुआती पंक्ति:
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvahaZDo8mucujrT15ry+...
-
प्रभाव का दायरा
litellm==1.82.8 install करने पर environment variables, SSH keys, cloud credentials सहित सभी secret जानकारी लीक हो सकती है
- प्रभावित स्थान:
- local development environment
- CI/CD pipeline
- Docker containers
- production servers
- अतिरिक्त रूप से, 1.82.7 version में भी
proxy/proxy_server.py के भीतर malicious code शामिल होने की रिपोर्ट है
-
सुझाए गए कदम
-
- PyPI:
litellm 1.82.8 को तुरंत हटाएँ या yank करें
-
- users:
site-packages/ में litellm_init.pth की मौजूदगी जाँचें
- इस version वाले systems के सभी credentials rotate करें
-
- BerriAI: PyPI distribution credentials और CI/CD pipeline की security audit आवश्यक
-
खोज का वातावरण
- OS: Ubuntu 24.04 (Docker container)
- Python: 3.13
- install path: PyPI
- खोज की तारीख: 24 मार्च 2026
-
community प्रतिक्रिया और अतिरिक्त चर्चा
- कई developers ने कहा कि “हज़ारों लोग पहले ही संक्रमित हो चुके हो सकते हैं”
- कुछ users ने 1.82.7 version भी संक्रमित होने की पुष्टि की
- security experts ने dependency pinning और supply chain security मजबूत करने की आवश्यकता पर ज़ोर दिया
agnosticlines आदि ने GitHub Actions की कमजोरियों और supply chain attacks के बार-बार होने की ओर इशारा किया
MountainGod2 ने चेतावनी दी, “dependencies को commit hash से pin करें, और नई releases को verify करने के बाद ही इस्तेमाल करें”
- कई projects (
mlflow, home-assistant, morphik-core आदि) ने litellm version pin या remove करने की कार्रवाई की
अभी कोई टिप्पणी नहीं है.