Diferencia entre XSS y CSRF

los diferencia clave entre XSS y CSRF es que, en XSS (o Cross Site Scripting), el sitio acepta el código malicioso, mientras que, en CSRF (o Cross Site Request Forgery), el código malicioso se almacena en sitios de terceros. El XSS es un tipo de vulnerabilidad de seguridad informática en aplicaciones web que permite a los atacantes inyectar scripts del lado del cliente en las páginas web que ven otros usuarios. Por otro lado, CSRF es un tipo de actividad maliciosa de un pirata informático o un sitio web que transmite comandos no autorizados en los que la aplicación web del usuario confiará..

El desarrollo web es el proceso de programación de un sitio web de acuerdo con los requisitos del cliente. Cada organización mantiene sitios web. Estos sitios web ayudan a mejorar el negocio y obtener ganancias. Al mismo tiempo, puede haber amenazas que afecten la funcionalidad del sitio web. Dos de ellos son XSS y CSRF..

CONTENIDO

1. Resumen y diferencia clave
2. ¿Qué es XSS?
3. ¿Qué es CSRF?
4. Comparación lado a lado - XSS vs CSRF en forma tabular
5. Resumen

¿Qué es XSS??

XSS es un ataque de inyección de código que inyecta código malicioso en el sitio web. Es uno de los ataques de sitios web más comunes. Puede afectar el sitio web y también puede afectar a los usuarios de ese sitio web. En otras palabras, cuando hay un ataque XSS en el sitio web, ese código se ejecutará en los usuarios de ese sitio web mediante el navegador..

Figura 01: Ataque XSS

Un lenguaje común para escribir código malicioso para XSS es JavaScript. XSS puede robar las cookies de los usuarios. Puede modificar la página web para que se vea y se comporte de manera diferente. Además, puede mostrar descargas de malware y cambiar la configuración del usuario..

Hay dos tipos de ataques XSS. Se llaman persistentes y no persistentes. En ataque XSS persistente, El código malicioso se almacena en la base de datos del sitio web. El usuario puede acceder a él sin ningún conocimiento. los ataque XSS no persistente es tambien llamado XSS reflejado. Envía el script malicioso como una solicitud HTTP. Esos son los dos tipos principales en XSS..

¿Qué es CSRF??

En un sitio web, hay un lado del cliente y el lado del servidor. Las páginas web, formularios están en el lado del cliente. El lado del servidor realiza una acción cuando el usuario actúa. El lado del servidor también recibe solicitudes de otros sitios web.

El ataque CSRF engaña al usuario para interactuar con una página o un script en un sitio de terceros. Se generará una solicitud maliciosa al sitio del usuario. Pero el servidor asume que es una solicitud de un sitio web autorizado. Cuando el usuario lo acepta, un atacante puede tomar el control sobre el uso de los datos enviados en la solicitud.

Un ejemplo es el siguiente. Un usuario inicia sesión en su cuenta bancaria. El banco le proporciona un token de sesión. Un hacker puede engañar al usuario para que haga clic en un enlace falso que apunta al banco. Cuando el usuario hace clic en el enlace, utiliza el token de sesión anterior. Luego, la solicitud del hacker se ejecuta, y la cuenta de usuario es hackeada. Él puede transferir dinero de su cuenta. La solicitud al banco se falsifica, ya que utiliza el mismo token de sesión del usuario. En general, es importante saber cómo proteger el sitio web del ataque CSRF en el desarrollo web.

¿Cuál es la diferencia entre XSS y CSRF??

XSS significa Cross Site Scripting, y CSRF significa Cross Site Request Forgery. XSS es un tipo de vulnerabilidad de seguridad informática en aplicaciones web que permite a los atacantes inyectar scripts del lado del cliente en páginas web que ven otros usuarios. CSRF es un tipo de actividad maliciosa de un pirata informático o un sitio web que transmite comandos no autorizados en los que confiará la aplicación web del usuario. Además, XSS requiere JavaScript para escribir el código malicioso mientras que el CSRF no requiere JavaScript.

Además, en XSS, el sitio acepta el código malicioso, mientras que en CSRF, el código malicioso se almacena en sitios de terceros. Esta es la principal diferencia entre XSS y CSRF. Por lo general, un sitio que es vulnerable al ataque XSS también es vulnerable al ataque CSRF. Sin embargo, un sitio que tiene protección contra XSS todavía puede ser vulnerable a los ataques CSRF.

Resumen - XSS vs CSRF

XSS y CSRF son dos tipos de ataques a un sitio web. XSS significa Cross Site Scripting, mientras que CSRF significa Cross Site Request Forgery. La diferencia entre XSS y CSRF es que, en XSS, el sitio acepta el código malicioso mientras que, en CSRF, el código malicioso se almacena en sitios de terceros.

Referencia:

1.DrapsTV. XSS Tutorial # 2 - Scripts no persistentes (XSS reflejado), DrapsTV, 23 de enero de 2015. Disponible aquí  
2. ¿Qué es CSRF?, Hacksplaining, 4 de marzo de 2017.  Disponible aquí 
3.DrapsTV. Tutorial XSS # 3 - Guiones persistentes, DrapsTV, 26 de enero de 2015.  Disponible aquí
4.DrapsTV. XSS Tutorial # 1: ¿Qué es el uso de secuencias de comandos entre sitios ?, DrapsTV, 22 de enero de 2015. Disponible aquí  

Imagen de cortesía:

1.'26393980275 'b Christiaan Colen (CC BY-SA 2.0) vía Flickr