XXE (XML External Entity)
hackingDéfinition
XXE, XML External Entity, est une vulnérabilité affectant les applications qui traitent des documents XML fournis par l'utilisateur au moyen d'un parseur mal configuré, autorisant par défaut la résolution d'entités externes définies dans le document, une fonctionnalité native du standard XML historiquement activée par défaut dans de nombreuses bibliothèques de traitement mais rarement nécessaire en pratique pour la majorité des usages applicatifs légitimes. Un attaquant peut exploiter cette fonctionnalité en soumettant un document XML malveillant définissant une entité externe pointant vers un fichier local du système, permettant sa lecture et son inclusion dans la réponse retournée par l'application, une technique classique pour exfiltrer des fichiers sensibles comme des fichiers de configuration contenant des identifiants. La même mécanique peut être détournée pour effectuer une attaque SSRF (Server-Side Request Forgery), en pointant l'entité externe vers une URL interne inaccessible depuis l'extérieur, permettant à l'attaquant de sonder ou d'interagir avec des services internes normalement isolés du réseau public. Dans certains contextes applicatifs spécifiques, l'exploitation d'XXE peut également conduire à un déni de service via des attaques de type entités récursives, voire dans de rares cas à une exécution de code arbitraire selon les bibliothèques et extensions présentes sur le serveur. La remédiation consiste à désactiver explicitement le traitement des entités externes et des DTD au niveau de la configuration du parseur XML utilisé.
Description
Le XXE (XML External Entity) exploite un parseur XML mal configuré acceptant les entités externes pour lire des fichiers système arbitraires, effectuer du SSRF ou provoquer un déni de service (Billion Laughs). Les parseurs XML avec DTD processing activé sont vulnérables par défaut.
Exploitation
Un payload ]>
Défense
- Désactiver le traitement des entités externes et DTD dans la configuration du parseur XML
- Migrer vers des formats plus simples comme JSON quand l'utilisation XML n'est pas indispensable
- Tester tous les endpoints acceptant du XML avec des outils comme XXEinjector dans les audits
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés. 2.1.7
Un projet cybersécurité ?
Expert dispo · Réponse 24h