1 points par GN⁺ 2026-03-25 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Un fichier .pth exécuté automatiquement au démarrage de l’interpréteur Python est inclus, et il collecte puis exfiltre des informations sensibles comme des clés API, des clés SSH et des tokens cloud
  • Le script malveillant est dissimulé par un double encodage base64 et envoie les données collectées vers litellm.cloud après les avoir chiffrées en AES-256 puis protégées avec une clé publique RSA
  • En cas d’infection, les identifiants de l’environnement local, du CI/CD et des serveurs de production peuvent tous être exposés
  • La présence de code malveillant dans la version 1.82.7 a également été signalée, ce qui rend les deux versions dangereuses
  • La communauté sécurité recommande en urgence de supprimer le package, faire tourner les identifiants et renforcer la sécurité de la supply chain

Incident de sécurité lié au fichier malveillant litellm_init.pth dans le package PyPI de litellm 1.82.8

  • Le package wheel PyPI de la version litellm 1.82.8 inclut un fichier .pth malveillant (litellm_init.pth), provoquant l’exécution automatique d’un script de vol d’identifiants à chaque démarrage de l’interpréteur Python
  • Ce fichier s’exécute même sans la commande import litellm, et le cas a été confirmé comme une attaque de supply chain
  • Le fichier malveillant est mentionné dans le fichier RECORD du package
  • Analyse du comportement malveillant

    • Le fichier .pth exploite la caractéristique d’exécution automatique au démarrage de l’interpréteur Python
    • Le script malveillant est dissimulé via un double encodage base64 et, une fois décodé, exécute les étapes suivantes
  • Étape 1 : collecte d’informations

    • Informations système : hostname, whoami, uname -a, ip addr, ip route
    • Variables d’environnement : collecte de clés API, secrets, tokens, etc. via printenv
    • Clés SSH : principaux fichiers de clés et fichiers de configuration dans ~/.ssh/
    • Identifiants Git : ~/.gitconfig, ~/.git-credentials
    • Identifiants cloud : fichiers de configuration et tokens liés à AWS, GCP et Azure
    • Configuration Kubernetes : /etc/kubernetes/, ~/.kube/config, etc.
    • Configuration Docker : ~/.docker/config.json, etc.
    • Configuration des gestionnaires de paquets : .npmrc, .netrc, .vault-token, etc.
    • Historique shell : .bash_history, .zsh_history, etc.
    • Portefeuilles de cryptomonnaies : ~/.bitcoin/, ~/.ethereum/keystore/, etc.
    • Clés privées SSL/TLS : /etc/ssl/private/, fichiers .pem, .key
    • Secrets CI/CD : terraform.tfvars, .gitlab-ci.yml, Jenkinsfile, etc.
    • Identifiants de bases de données : fichiers de configuration PostgreSQL, MySQL, Redis, etc.
    • URLs de webhook : recherche d’URLs Slack, Discord, etc.
  • Étape 2 : chiffrement et exfiltration

    • Les données collectées sont enregistrées dans un fichier temporaire
    • Génération d’une clé de session AES-256 de 32 octets avec openssl rand
    • Chiffrement des données avec openssl enc -aes-256-cbc -pbkdf2
    • La clé de session est chiffrée avec une clé publique RSA 4096 bits codée en dur
    • Les deux fichiers sont regroupés dans tpcp.tar.gz puis envoyés
    • Destination de l’envoi : https://models.litellm.cloud/ (différent du domaine officiel litellm.ai)
  • Détails techniques

    • Le fichier .pth se trouve dans le site-packages/ de Python et est exécuté automatiquement au démarrage de l’interpréteur
    • La charge utile utilise un double encodage base64 pour échapper à la détection
    • L’attaquant exploite le domaine litellm.cloud comme serveur d’exfiltration de données
    • Début de la clé publique RSA : MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvahaZDo8mucujrT15ry+...
  • Portée de l’impact

    • En installant litellm==1.82.8, toutes les informations secrètes, comme les variables d’environnement, les clés SSH et les identifiants cloud, peuvent fuiter
    • Cibles concernées :
    • environnement de développement local
    • pipelines CI/CD
    • conteneurs Docker
    • serveurs de production
    • En outre, la version 1.82.7 aurait également contenu du code malveillant dans proxy/proxy_server.py
  • Mesures recommandées

      1. PyPI : supprimer immédiatement ou yanker litellm 1.82.8
      1. Utilisateurs :
    • vérifier la présence de litellm_init.pth dans site-packages/
    • faire tourner tous les identifiants sur les systèmes où cette version a été installée
      1. BerriAI : nécessité d’un audit de sécurité des identifiants de publication PyPI et du pipeline CI/CD
  • Environnement de découverte

    • OS : Ubuntu 24.04 (conteneur Docker)
    • Python : 3.13
    • Chemin d’installation : PyPI
    • Date de découverte : 24 mars 2026
  • Réaction de la communauté et discussions complémentaires

    • De nombreux développeurs ont mentionné que des milliers de personnes pourraient déjà être infectées
    • Certains utilisateurs ont confirmé que la version 1.82.7 était également infectée
    • Les experts sécurité soulignent la nécessité du pinning des dépendances et d’un renforcement de la sécurité de la supply chain
    • agnosticlines et d’autres ont pointé du doigt les faiblesses de GitHub Actions et la répétition des attaques de supply chain
    • MountainGod2 a averti que les dépendances devraient être figées par hash de commit et que les nouvelles releases ne devraient être utilisées qu’après vérification
    • Plusieurs projets (mlflow, home-assistant, morphik-core, etc.) ont figé ou supprimé la version de litellm

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.