Friday, December 30, 2005

ALGUNAS AMENAZAS DE LOS SITIOS WEB

ALGUNAS AMENAZAS DE LOS SITIOS WEB


La vulnerabilidad de las páginas web están generando problemas serios para las organizaciones. Las empresas a diario realizan miles de transacciones, muchas de ellas de carácter económico por miles de millones de pesos y sus sitios web son atacados por personas inescrupulosas que se dedican a revisarlos, a descubrir sus debilidades y a aprovecharlas en beneficio propio o de terceros.

Las técnicas de vulneración son conocidas como ataques (forma en la que se explota una vulnerabilidad de seguridad). Todos hemos escuchado algunos de ellos, como por ejemplo el DoS, desbordamiento de buffer o inyección de código SQL, por mencionar algunos que en el vocablo diario de los sistemas son tocados con regularidad.

Los expertos en estas materias han realizado muchos escritos sobre el tema. En particular hoy quiero contribuir con un resumen de la clasificación de esos ataques.


La siguiente clasificación fue tomada de un documento realizado por Web Application Security Consortium (Clasificación de Amenazas) que en mi criterio ayudará de forma amplia el entendimiento de conceptos que muchos de nosotros no manejamos adecuadamente.


TIPOS DE ATAQUES


Autenticación

Hace referencia a ataques cuyo objetivo es el mecanismo utilizado por un sitio web para validar la identidad de un usuario, servicio o aplicación. La autenticación es realizada bajo uno de estos tres mecanismos: "algo que se tiene ", "algo que se conoce" o “algo que se es ". Algunos ejemplos fuerza Bruta, autenticación insuficiente, débil validación y recuperación de contraseñas.


Autorización

Enfoca los ataques que tienen como fin un método de los sitios web para determinar si un usuario, servicio o aplicación tiene los permisos necesarios para ejecutar una acción solicitada. No debemos olvidar que un atacante puede obtener privilegios de ROOT lo que generaría graves inconvenientes. Ejemplos predicción de credenciales / sesión, autorización insuficiente, expiración de sesión insuficiente, fijación de sesión.


Ataques en la parte cliente

Su eje es la extralimitación o aprovechamiento de los usuarios de los sitios web. Cuando un usuario visita un sitio web, se establece una relación de fatuidad entre las dos partes, tecnológica y psicológicamente. El usuario espera que el sitio web que visita le entregue un fondo válido. El usuario también espera que el sitio web no le ataque durante su permanencia. Teniendo en cuenta estas ilusiones en la relación de fatuidad, un atacante puede emplear diversas técnicas para aprovecharse del usuario. Ejemplos: suplantación de contenidos, Cross-site Scripting.


Ejecución de comandos

Abarca los ataques diseñados para ejecutar comandos remotos en el sitio web. Todos los sitios web utilizan datos suministrados por el usuario para satisfacer solicitudes. A menudo los datos facilitados por el usuario son usados para crear comandos de construcción resultando en contenido activo de una página web. Si este proceso es hecho de forma no segura, un atacante puede modificar la ejecución de comandos. Ejemplos: desbordamiento del buffer, ataques de formato de cadena, inyección LPDA, comandos de sistema operativo, inyección de código SQL, inyección de código SSI .


Revelación de información

Hace hincapié en los ataques diseñados para adquirir información concreta del sistema sobre un sitio web. La información específica del sistema incluye distribución de software, números de versión y niveles de parcheado.

La información puede contener la ubicación de ficheros de backup y ficheros temporales. En muchos casos, no se requiere la divulgación de esta información para llevar a cabo las necesidades del usuario.

La mayoría de sitios web revelarán una cierta cantidad de datos, pero lo mejor es limitar, siempre que sea posible, la cantidad de datos que pueden ser revelados.

Cuanta más información acerca del sitio web disponga el atacante, más fácil le resultará comprometer el sistema. Ejemplos: indexación de directorio, fuga de información, localización de recursos predecibles y demás.



Ataques lógicos

Se centra en el abuso o explotación del flujo lógico de una aplicación web. La lógica de la aplicación es el flujo de procedimientos esperados para realizar una cierta acción.

Recuperación de contraseñas, alta de una cuenta, puja en subastas y compras en comercios electrónicos son ejemplos de lógica de aplicación. Un sitio web puede requerir a un usuario un proceso específico de varios pasos para completar una acción particular. Un atacante puede ser capaz de burlar o abusar de esas características para dañar un sitio web y a sus usuarios. Ejemplos: abuso de funcionabilidad, denegación de servicio y validación de proceso insuficiente.


Es importante el constante estudio de estos conceptos, toda vez que son muy dinámicos y por consiguiente lo que hoy vemos mañana seguramente será diferente. Por eso mi invitación a continuar investigando sobre el tema.



Referencias
Web Application Security Consortium:
Clasificación de Amenazas
www.webappsec.org
Versión: 1.00

0 comments: