Une faille de sécurité critique dans l’un des frameworks web Python les plus largement utilisés a laissé des millions d’agents IA, d’outils d’apprentissage automatique et de services de production vulnérables aux attaquants non authentifiés. La vulnérabilité, identifiée sous le numéro CVE-2026-48710 et surnommée « BadHost », affecte Starlette, un framework open source qui reçoit 325 millions de téléchargements par semaine.
Ce n’est pas une erreur de frappe. 325 millions. Par semaine. Et comme Starlette sert de fondation à FastAPI et à un vaste écosystème de projets Python asynchrones, l’impact dépasse largement une seule bibliothèque.
Ce que BadHost fait réellement
Starlette reconstruit l'URL de la requête en prenant l'en-tête HTTP Host, que l'attaquant peut manipuler librement, et en le concaténant avec le chemin de la requête avant de re-analyser le résultat. Le framework ne valide jamais d'abord l'en-tête Host.
En injectant certains caractères comme /, ? ou # dans l'en-tête Host, un attaquant peut modifier l'emplacement des limites de chemin dans l'URL reconstituée. Cela lui permet de contourner tout middleware reposant sur des vérifications d'authentification basées sur le chemin. Aucune authentification nécessaire. Aucune chaîne d'exploitation sophistiquée. Seulement un en-tête HTTP falsifié.
Le résultat est une contournement complet de l'authentification sur les applications concernées. Les attaquants qui exploitent BadHost peuvent accéder à des points de terminaison protégés, consulter des données sensibles et potentiellement voler des identifiants pour des services tiers connectés à l'application vulnérable.
Le problème d'infrastructure IA
Ce qui rend cela particulièrement alarmant, c’est la liste des projets en aval qui dépendent de Starlette. FastAPI, l’un des frameworks les plus populaires pour construire des services web Python, repose dessus. Il en va de même pour vLLM et LiteLLM, deux frameworks largement déployés pour servir des modèles de langage à grande échelle dans des environnements de production. Les serveurs MCP, l’infrastructure du Model Context Protocol qui alimente les outils d’agents IA, sont également concernés. Des milliers de projets open source nécessitent Starlette pour fonctionner, créant un vaste réseau de dépendances transitives où une seule vulnérabilité se propage en cascade.
La vulnérabilité affecte toutes les versions de Starlette antérieures à 1.0.1. Des correctifs ont été publiés à partir de cette version, et un scanner gratuit pour identifier les applications concernées est disponible sur badhost.org.
Un motif, pas une anomalie
BadHost n’est pas apparu dans le vide. La divulgation intervient au milieu d’une vague croissante de problèmes de sécurité touchant les cadres d’agents IA tout au long de 2025 et 2026, notamment des attaques par injection de prompts et des vulnérabilités d’exécution de code à distance.
Un projet pourrait même ne pas importer directement Starlette, mais rester vulnérable car l’un de ses dépendances le fait.
Ce que cela signifie pour les investisseurs
L'implication immédiate est opérationnelle. Les équipes gérant des agents IA ou l'infrastructure de service LLM doivent vérifier leurs arbres de dépendances et passer à Starlette 1.0.1 ou une version ultérieure. Tout retard augmente l'exposition à une exploitation qui ne nécessite aucune authentification ni accès particulier pour être exécutée.
