Tabla de contenido:
Definición - ¿Qué significa XSS Hole?
Un agujero XSS es una aplicación web que presenta contenido dinámico a los usuarios con una vulnerabilidad de seguridad informática. Esta aplicación es scripting entre sitios (XSS) y permite a un atacante explotar los datos confidenciales de un usuario sin pasar un mecanismo de control de acceso como una política del mismo origen. Este defecto se conoce más apropiadamente como un agujero XSS.
Techopedia explica XSS Hole
Por ejemplo, el usuario puede encontrarse con un hipervínculo en una aplicación web que apunta a algún contenido malicioso. El usuario puede hacer clic en el enlace y acceder a otra página que contiene un boletín o correo electrónico. Esta página recopila información del usuario en forma de contraseña. También genera una página de salida maliciosa que indica alguna respuesta falsa adaptada para que parezca genuina para el usuario. O los datos ingresados por el usuario pueden ser mal utilizados o la sesión del usuario puede ser secuestrada por robo de cookies. En función de la sensibilidad de los datos recopilados, las secuencias de comandos entre sitios pueden variar desde una simple vulnerabilidad hasta una laguna de seguridad grave. Después de la explotación de la vulnerabilidad XSS, el atacante puede pasar por alto las políticas de control de acceso de la organización.
El concepto de secuencias de comandos entre sitios se basa en la misma política original. Las mismas políticas originales establecen que un navegador web que usa JavaScript puede acceder a diferentes propiedades y métodos que pertenecen al mismo sitio sin restricciones. Los atacantes maliciosos pueden explotar el concepto de la misma política original al inyectar código malicioso en un sitio web usando JavaScript. Cuando los usuarios ven las páginas web, los atacantes pueden recopilar información útil para el usuario, como un nombre de usuario o contraseña.
Según las estadísticas recopiladas por Symantec en 2007, las secuencias de comandos entre sitios representan el 80 por ciento de todos los ataques de seguridad ejecutados usando computadoras. Hay tres tipos de secuencias de comandos entre sitios:
- XSS no persistente: el tipo no persistente de secuencias de comandos entre sitios se ve durante las solicitudes HTTP en las que el cliente incrusta datos en una solicitud HTTP. Cuando el servidor utiliza datos enviados por el cliente para generar páginas, los agujeros XSS pueden estar activos si la solicitud no se ha desinfectado correctamente. Las páginas HTML están compuestas de contenido y presentación. Si el usuario malintencionado agrega contenido que no ha sido validado, se produce una inyección de marcado. El usuario comprometerá su seguridad al ingresar la información solicitada por el código malicioso. El atacante puede inducir a error al usuario a una URL diferente, que puede contener un virus más sofisticado y adquirir información importante del usuario.
- XSS persistente: el contenido malicioso inyectado por el atacante se guarda en el lado del servidor y todas las solicitudes adicionales del cliente acceden al contenido modificado, lo que representa un grave riesgo de seguridad. Por ejemplo, algunos foros permiten al usuario publicar mensajes con formato HTML. Por lo tanto, un atacante puede incrustar un código JavaScript para presentar un cuadro de texto malicioso para recopilar información, como una contraseña. El atacante también puede configurar el código JavaScript para guardar y transmitir cada contraseña ingresada en el campo de texto.
- XSS basado en DOM: El modelo de objeto de documento (DOM) es una estructura de árbol que representa todas las etiquetas que aparecen en un documento que cumple con los estándares XML. DOM se usa en JavaScript para acceder y manipular etiquetas HTML y el contenido dentro de las etiquetas. Un atacante puede inyectar una pieza maliciosa de código JavaScript que contiene declaraciones DOM apropiadas para acceder y modificar información importante del usuario. Por ejemplo, el atacante puede usar DOM para redirigir la información del usuario mediante un envío incorrecto a un sitio web malicioso de terceros.
