Vulnerabilidades Web Comunes: SQL Injection, Forgery y XSS
Clasificado en Informática
Escrito el en
español con un tamaño de 3,08 KB
Cómo se Construye un Ataque de SQL Injection Clásico
Aprovecha una vulnerabilidad de las aplicaciones que consiste en no validar los parámetros introducidos por el usuario. Primero, es necesario identificar el motor de base de datos y su versión (esta información a menudo se obtiene de los mensajes de error por defecto). A partir de ahí, se pueden realizar consultas para obtener información sensible como el nombre de usuario administrador, tablas del sistema, agregar o eliminar registros y tablas, o leer y descargar archivos.
Inyección a Ciegas (Blind SQL Injection)
Este ataque es más complicado de construir y automatizar, y considerablemente más lento. La técnica consiste en buscar algún aspecto de la respuesta de la base de datos que se modifique cuando las consultas son verdaderas o falsas, permitiendo construir el ataque a base de preguntas binarias.
Ataques de Tipo Forgery
Consisten en crear, imitar o adaptar un entorno, aplicación o servicio real con el propósito de engañar al usuario con intenciones maliciosas. Uno de los más comunes es el Cross-Site Scripting (XSS). Este tipo de ataque utiliza los componentes dinámicos de una aplicación web para lograr objetivos maliciosos.
Cross-Site Scripting (XSS): Tipos y Diferencias
XSS Local (DOM-based XSS)
Es posible que la aplicación sea segura en el lado del servidor, pero no en el lado del cliente. El ataque se realiza localmente, en algún momento desde que la página se descarga hasta que se muestra en el navegador, donde el código malicioso se incorpora directamente en el DOM.
XSS Reflejado (Reflected XSS)
La vulnerabilidad reside en el lado del servidor. La aplicación web utiliza un código JavaScript para acceder a un parámetro de la URL y lo inserta directamente en el HTML sin validación. El atacante realiza spoofing de la página web, y la víctima accede a una URL que parece legítima pero que contiene el código malicioso reflejado.
XSS Almacenado (Stored XSS)
Considerado el más potente. El código malicioso que el atacante inserta en un campo de entrada (por ejemplo, comentarios, foros) queda almacenado en el servidor web y, por lo tanto, es servido a todos los usuarios que acceden a la página afectada.
Ataque Cross-Site Request Forgery (CSRF) y su Objetivo
El atacante induce a la víctima a ejecutar un código malicioso con el objetivo de realizar acciones no deseadas en otra aplicación web o servicio en el que el usuario esté previamente autenticado. Este ataque puede facilitarse mediante XSS almacenado o reflejado.