HTML Injection — HTB lab

Oscar Romero
2 min read5 days ago

La vulnerabilidad de HTML Injection se presenta cuando una aplicación web no sanitiza o limpia adecuadamente la información ingresada por el usuario. Al no tener control sobre estos datos, se puede inyectar código HTML o JavaScript, lo que permite alterar el sitio o ejecutar un ataque XSS (Cross-Site Scripting).

<body>
<button onclick="inputFunction()">Click to enter your name</button>
<p id="output"></p>
<script>
function inputFunction() {
var input = prompt("Please enter your name", "");
if (input != null) {
document.getElementById("output").innerHTML = "Your name is " + input;
}
}
</script>
</body>
</html>

Laboratorio — HTML Injection

En este laboratorio, responderemos una pregunta sobre el texto que se mostraría en la página al usar una carga útil específica como entrada

Target(s): Click here to spawn the target system!
+ 1 What text would be displayed on the page if we use the following payload as our input:
<a href="http://www.hackthebox.com">Click Me</a>

Desarrollo Paso a Paso

  1. Acceso al Target

Accedemos mediante el navegador web al sistema objetivo proporcionado:

  1. Inyección de Código HTML
  2. Ingresamos el siguiente código HTML en el momento en que se solicita el nombre:
<a href="http://www.hackthebox.com">Click Me</a>
  1. Resultado en el Sitio Web
  2. Observamos que el sitio web muestra el texto modificado al ingresar la carga útil:

Conclusión

Este ejercicio demuestra cómo una inyección de HTML puede manipular el contenido de una página web y potencialmente comprometer su seguridad. Para prevenir este tipo de vulnerabilidades, es crucial sanitizar adecuadamente todas las entradas de usuario y evitar incluir código HTML o JavaScript no seguro en la aplicación web.

--

--