jueves, 18 de febrero de 2016

Qué es Cross-site scripting o XSS y Cómo funciona?

cross site scripting xss

XSS es un ataque de inyección de código malicioso para su posterior ejecución que puede realizarse a sitios web, aplicaciones locales e incluso al propio navegador.
Sucede cuando un usuario mal intencionado envía código malicioso a la aplicación web y se coloca en forma de un hipervínculo para conducir al usuario a otro sitio web, mensajería instantánea o un correo electrónico. Así mismo, puede provocar una negación de servicio (DDos).
Regularmente la mejor manera de llevar a acabo un ataque xss es haciéndose desde un formulario que no tiene filtros o verificación de contenido, a esto me refiero a que cuando un programador crea una pagina web, en muchos casos cuando pone un formulario, no utiliza filtros o algún sistema que no permita que los caracteres o el texto que el usuario envía por el formulario  interactúe con el código de la pagina, cuando el contenido del formulario se almacena directamente en una base de datos, esto hace que un ataque xss sea aun mas peligroso, ya que puede afectar permanentemente la estructura o el comportamiento de una pagina web hasta que el programador borre esta información de la base de datos, esto sucede gracias a que si nosotros almacenamos código html, css, javascript...  en una base de datos, si sacamos esta información a la vista del usuario, el navegador interpreta el contenido, como código fuente, mas no como texto y este es un gran problema si el formulario no tiene filtros, veamos un ejemplo para que esto quede bien claro, si tenemos un formulario de un solo campo de texto, digamos que es para dejar nuestro correo para recibir información de la pagina y este campo de texto no tiene un sistema de filtrado de caracteres, si algún usuario mal intencionado ingresa por ejemplo el siguiente código javascript :  <script>alert("esto es un ataque xss");</script>  en vez del correo, cuando el administrador del sitio entre en la pagina donde puede ver los correos de los usuario, le aparecerá un recuadro que dice esto es un ataque xss y debe dar en el botón aceptar para que el aviso se cierre y esto sucederá cada vez que entre o recargue la pagina donde puede ver los correo. 
También se puede hacer con código css, por ejemplo si en vez del correo se pone: 
<style> *{display:none;}</style> esto producirá que todo el contenido de la pagina desaparezca cada vez que el administrador ingrese o recargue la pagina donde puede ver los correos registrados . Este tipo de ataques es muy común y en algunos casos puede ser muy peligroso tanto para los usuarios que visitan la pagina como para los administradores o el dueño de la pagina web.
Este post es solo una pequeña explicación de lo que es y de como funciona un ataque XSS, si deseas saber mas sobre el tema, te recomiendo dar click a los siguientes enlaces.

0 comentarios:

Publicar un comentario