LiteLLM Vulnerability Chain Lets Low-Privilege Users Take Over AI Gateway Servers

1 minute de lecture

Mis à jour :

Vulnérabilité critique dans LiteLLM : Escalade de privilèges et exécution de code

Des chercheurs en sécurité ont identifié une chaîne de trois vulnérabilités critiques (CVSS 9.9) permettant à un utilisateur à faibles privilèges de prendre le contrôle total d’un serveur LiteLLM, une passerelle AI largement utilisée.

Points clés

  • Risque majeur : Une fois le serveur compromis, l’attaquant accède à toutes les clés API (OpenAI, Anthropic, etc.), aux secrets de déchiffrement, aux logs complets (prompts et réponses) et peut intercepter/modifier les flux de données entre les agents IA et les modèles.
  • Impact : La compromission permet une exécution de code arbitraire sur le serveur et potentiellement sur les machines des utilisateurs via l’injection de réponses frauduleuses.

Vulnérabilités exploitées

  • CVE-2026-47101 (Contournement d’autorisation) : Un utilisateur peut générer une clé API personnalisée avec des routes illimitées (wildcard /*), contournant les restrictions de rôle.
  • CVE-2026-47102 (Escalade de privilèges) : En exploitant le bypass précédent, l’utilisateur peut modifier son propre rôle en proxy_admin via l’endpoint /user/update.
  • CVE-2026-40217 (Évasion de sandbox) : La fonctionnalité “Custom Code Guardrail” utilise une fonction exec() non sécurisée, permettant une injection de code Python et l’obtention d’un shell distant.

Recommandations

  • Mise à jour immédiate : Passer à la version v1.83.14-stable ou supérieure.
  • Audit de sécurité :
    • Vérifier les comptes ayant les privilèges proxy_admin.
    • Examiner les paramètres litellm_settings.callbacks dans config.yaml pour détecter toute persistance malveillante invisible via l’interface d’administration.
    • Auditer les règles de “Custom Code Guardrail”.
  • Rotation des secrets : En cas de compromission suspectée, révoquer et renouveler immédiatement toutes les clés API des fournisseurs, les identifiants de base de données et les jetons OAuth/MCP stockés.

Source