¿Qué es JavaScript malicioso? Consecuencias

¿Qué es JavaScript malicioso? Consecuencias. Al principio, la capacidad de ejecutar JavaScript en el navegador de la víctima puede no parecer particularmente maliciosa. Después de todo, JavaScript se ejecuta en un entorno muy restringido que tiene un acceso extremadamente limitado a los archivos del usuario y al sistema operativo.

De hecho, podría abrir la consola de JavaScript de su navegador ahora mismo y ejecutar cualquier JavaScript que desee, y es muy poco probable que cause daños a su computadora.

Sin embargo, la posibilidad de que JavaScript sea malicioso se vuelve más clara cuando se consideran los siguientes hechos:

JavaScript tiene acceso a parte de la información confidencial del usuario, como las cookies.

JavaScript puede enviar solicitudes HTTP con contenido arbitrario a destinos arbitrarios mediante el uso de XMLHttpRequest y otros mecanismos.

JavaScript puede realizar modificaciones arbitrarias en el HTML de la página actual usando métodos de manipulación DOM.

Estos hechos combinados pueden causar violaciones de seguridad muy graves, como explicaremos a continuación.

Las consecuencias del JavaScript malicioso.

Entre muchas otras cosas, la capacidad de ejecutar JavaScript arbitrario en el navegador de otro usuario permite a un atacante realizar los siguientes tipos de ataques:

Robo de Cookies

El atacante puede acceder a las cookies de la víctima asociadas con el sitio web utilizando document.cookie, enviarlas a su propio servidor y usarlas para extraer información confidencial, como los identificadores de sesión.

Keylogging

El atacante puede registrar un detector de eventos de teclado utilizando addEventListenery luego enviar todas las pulsaciones de teclas del usuario a su propio servidor, lo que podría registrar información confidencial como contraseñas y números de tarjetas de crédito.

Suplantación de identidad

El atacante puede insertar un formulario de inicio de sesión falso en la página mediante la manipulación de DOM, configurar el atributo «action» del formulario para que apunte a su propio servidor y luego engañar al usuario para que envíe información confidencial.

Aunque estos ataques difieren significativamente, todos tienen una similitud crucial: debido a que el atacante ha inyectado código en una página del sitio web, el JavaScript malicioso se ejecuta en el contexto de ese sitio web. Esto significa que se trata como cualquier otro script de ese sitio web: tiene acceso a los datos de la víctima para ese sitio web (como las cookies) y el nombre del host que se muestra en la barra de URL será el del sitio web. Para todos los efectos, el script se considera una parte legítima del sitio web, lo que le permite hacer cualquier cosa que el sitio web real pueda hacer.

Este hecho destaca un tema clave:

Si un atacante puede usar su sitio web para ejecutar JavaScript arbitrario en el navegador de otro usuario, la seguridad de su sitio web y sus usuarios se ha visto comprometida.

Leer también: Consecuencias de un ataque XSS, daños ; Tipos de ataques XSS, clases, variantes ; Descripción de los ataques XSS

This post is also available in: Español