Diferencia entre XSS y CSRF

Diferencia entre XSS y CSRF

El diferencia clave entre XSS y CSRF es que, En XSS (o secuencia de comandos de sitio cruzado), el sitio acepta el código malicioso mientras, en CSRF (o falsificación de solicitud de sitio cruzado), el código malicioso se almacena en los 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 páginas web vistas por otros usuarios. Por otro lado, CSRF es un tipo de actividad maliciosa de un hacker o un sitio web que transmite comandos no autorizados en los que confiará la aplicación web del usuario.

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. Descripción general y diferencia de claves
2. Que es xss
3. ¿Qué es CSRF?
4. Comparación de lado a lado - XSS vs CSRF en forma tabular
5. Resumen

Que 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 del sitio 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 por el navegador.

Figura 01: Ataque XSS

Un idioma común para escribir código malicioso para XSS es JavaScript. XSS puede robar cookies del usuario. Puede modificar la página web para verse y comportarse 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 de 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. El 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, los 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 de CSRF engaña al usuario para interactuar con una página o un script en un sitio de terceros. 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 una ficha 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 está pirateada. Puede transferir dinero de su cuenta. La solicitud al banco se forja ya que utiliza la misma sesión 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 Scripting Cross Site y CSRF significa falsificación de solicitud de sitio cruzado. 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 vistas por otros usuarios. CSRF es un tipo de actividad maliciosa de un hacker o un sitio web que transmite comandos no autorizados en los que confiará la aplicación web del usuario. Además, XSS requiere que JavaScript escriba el código malicioso, mientras que el CSRF no requiere JavaScript.

Además, en XSS, el sitio acepta el código malicioso mientras está en CSRF, el código malicioso se almacena en los 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 de CSRF.

Resumen -XSS vs CSRF

XSS y CSRF son dos tipos de ataques a un sitio web. XSS significa Scripting Cross Site, mientras que CSRF representa la falsificación de solicitudes de sitio cruzado. La diferencia entre XSS y CSRF es que, en XSS, el sitio acepta el código malicioso mientras, en CSRF, el código malicioso se almacena en los sitios de terceros.

Referencia:

1.Drapstv. Tutorial de XSS #2 - Scripts no persistentes (XSS reflejado), Drapstv, 23 de enero. 2015. Disponible aquí  
2.¿Qué es CSRF??, Hacksplaining, 4 mar. 2017.  Disponible aquí 
3.Drapstv. Tutorial de XSS #3 - Scripts persistentes, Drapstv, 26 de enero. 2015.  Disponible aquí
4.Drapstv. Tutorial de XSS #1 - ¿Qué es Scripting Cross Site??, Drapstv, 22 de enero. 2015. Disponible aquí  

Imagen de cortesía:

1.'26393980275' B Christiaan Colen (CC By-SA 2.0) a través de Flickr