Lo que ocurre con la inyección del encabezado del host es que puede permitir que un atacante controle parte de una respuesta. De un gran artículo en Acunetix :
El script PHP en el siguiente ejemplo es un uso típico y peligroso del encabezado del host.
<script src="http://<?phpecho_SERVER['HOST']?>/script.js">
Un atacante puede potencialmente manipular el código anterior para producir la siguiente salida HTML simplemente manipulando el encabezado del host.
<script src="http://attacker.com/script.js">
Pero si solo estás manipulando la respuesta que obtienes, esto no es muy inútil. Después de todo, XSS: ing mismo no es tan divertido. Debe cambiar la respuesta que recibe su víctima, pero no puede modificar el encabezado de host de su solicitud de víctimas. Que hacer Hay dos formas comunes:
- Intoxicación de caché: si la respuesta que carga un script de
attacker.com
se almacena en caché en algún servidor, también se servirá a otros. Bingo!
- Restablecimiento de contraseña: si puede modificar el enlace de restablecimiento de contraseña que se envía en los correos electrónicos, puede robar el token de restablecimiento de contraseña una vez que la víctima haga clic en él. (Tenga en cuenta que esto no es modificar la respuesta HTTP, sino un correo electrónico que envía el servidor).
Entonces, si nada de esto funciona, ¿significa que todo está bien y está bien? Realmente no. Probablemente significa que esto no puede ser explotado en este momento, al menos no de una manera fácil, pero sigue siendo malo y es algo que debe informarse en un informe de Pentest. Porque, ¿qué pasa si alguien cambia la política de chache un día? No quieres estar solo a un servidor que no sea reconfigurado para que no te pertenezca.