Injection d'en-tête Host
Qu'est-ce que Injection d'en-tête Host ?
Injection d'en-tête HostVulnérabilité où l'application fait confiance à l'en-tête HTTP Host (ou X-Forwarded-Host) pour construire des URLs, permettant de rediriger des utilisateurs ou d'empoisonner des caches.
L'injection d'en-tête Host survient quand le code serveur utilise l'en-tête Host — ou des variantes de proxy comme X-Forwarded-Host — pour construire des URLs absolues (liens de réinitialisation de mot de passe, redirections, src d'images, canoniques, callbacks OAuth) sans validation par liste blanche. L'attaquant manipule l'en-tête pour pointer ces liens vers un domaine hostile, ce qui conduit à l'empoisonnement de réinitialisation de mot de passe, à l'empoisonnement de cache, à du SSRF ou au routage de la réponse vers un hôte attaquant. Le défaut est courant avec les reverse proxies et les frameworks à entrées Host multiples. Mitigations : dériver les URLs depuis un hôte configuré de confiance, valider Host/X-Forwarded-Host par liste blanche, jeter les en-têtes forwarded inconnus en bord de réseau, utiliser HSTS.
● Exemples
- 01
Déclencher une réinitialisation de mot de passe envoyant un lien https://attacker.com/reset?token=... parce que l'app utilise Host.
- 02
Empoisonner un cache CDN en envoyant X-Forwarded-Host pour que /index émette des URLs de l'attaquant.
● Questions fréquentes
Qu'est-ce que Injection d'en-tête Host ?
Vulnérabilité où l'application fait confiance à l'en-tête HTTP Host (ou X-Forwarded-Host) pour construire des URLs, permettant de rediriger des utilisateurs ou d'empoisonner des caches. Cette notion relève de la catégorie Vulnérabilités en cybersécurité.
Que signifie Injection d'en-tête Host ?
Vulnérabilité où l'application fait confiance à l'en-tête HTTP Host (ou X-Forwarded-Host) pour construire des URLs, permettant de rediriger des utilisateurs ou d'empoisonner des caches.
Comment se défendre contre Injection d'en-tête Host ?
Les défenses contre Injection d'en-tête Host combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Injection d'en-tête Host ?
Noms alternatifs courants : Injection X-Forwarded-Host, Abus de virtual host.