Ingeniera De Software Ing. Juan Norberto Carren Hernndez
Ingeniera En Sistemas Computacionales
Jos Leodegario Saldaa Luna 11224003
6 semestre Rioverde S.L.P. 29/05/2014
Introduccin
En el siguiente documento hablaremos sobre los 10 riesgos y/o problemas ms comunes y peligrosos al desarrolla y utilizar aplicaciones web. Esta informacin es obtenida por los documentos creados en el proyecto OWASP de la empresa Aspect Security, que adems recibe informacin de otras empresas para poder informar a los programadores, diseadores y dems involucrados que generan software para que puedan evitar todas estas vulnerabilidades en sus aplicaciones y as prevenir ataque de seguridad hacia los usuarios de sus aplicaciones al momento de utilizarlas, adems tambin poder cuidar a los dems usuarios que puedan ser afectados en cadena o hasta al mismo sistema de la aplicacin o pgina.
Estas 10 vulnerabilidades son las ms sobresalientes de ms de 500,000 vulnerabilidades y son comunes y peligrosas porque debido a ellas muchos usuarios son vctimas de robo de informacin, fraude y hasta robo de identidad.
Desarrollo
A1Inyeccin Las fallas de inyeccin, tales como SQL, OS, y LDAP, ocurren cuando datos no confiables son enviados a un intrprete como parte de un comando o consulta. Los datos hostiles del atacante pueden engaar al intrprete en ejecutar comandos no intencionados o acceder datos no autorizados.
A2 Prdida de Autenticacin y Gestin de Sesiones Las funciones de la aplicacin relacionadas a autenticacin y gestin de sesiones son frecuentemente implementadas incorrectamente, permitiendo a los atacantes comprometer contraseas, claves, token de sesiones, o explotar otras fallas de implementacin para asumir la identidad de otros usuarios.
A3 Secuencia de Comandos en Sitios Cruzados (XSS) Las fallas XSS ocurren cada vez que una aplicacin toma datos no confiables y los enva al navegador web sin una validacin y codificacin apropiada. XSS permite a los atacantes ejecutar secuencia de comandos en el navegador de la victima los cuales pueden secuestrar las sesiones de usuario, destruir sitios web, o dirigir al usuario hacia un sitio malicioso.
A4 Referencia Directa Insegura a Objetos Una referencia directa a objetos ocurre cuando un desarrollador expone una referencia a un objeto de implementacin interno, tal como un fichero, directorio, o base de datos. Sin un chequeo de control de acceso u otra proteccin, los atacantes pueden manipular estas referencias para acceder datos no autorizados.
A5 Configuracin de Seguridad Incorrecta Una buena seguridad requiere tener definida e implementada una configuracin segura para la aplicacin, marcos de trabajo, servidor de aplicacin, servidor web, base de datos, y plataforma. Todas estas configuraciones deben ser definidas, implementadas, y mantenidas ya que por lo general no son seguras por defecto. Esto incluye mantener todo el software actualizado, incluidas las libreras de cdigo utilizadas por la aplicacin.
A6 Exposicin de datos sensibles Muchas aplicaciones web no protegen adecuadamente datos sensibles tales como nmeros de tarjetas de crdito o credenciales de autenticacin. Los atacantes pueden robar o modificar tales datos para llevar a cabo fraudes, robos de identidad u otros delitos. Los datos sensibles requieren de mtodos de proteccin adicionales tales como el cifrado de datos, as como tambin de precauciones especiales en un intercambio de datos con el navegador.
A7 Ausencia de Control de Acceso a Funciones La mayora de aplicaciones web verifican los derechos de acceso a nivel de funcin antes de hacer visible en la misma interfaz de usuario. A pesar de esto, las aplicaciones necesitan verificar el control de acceso en el servidor cuando se accede a cada funcin. Si las solicitudes de acceso no se verifican, los atacantes podrn realizar peticiones sin la autorizacin apropiada.
A8 -- Falsificacin de Peticiones en Sitios Cruzados (CSRF) Un ataque CSRF obliga al navegador de una vctima autenticada a enviar una peticin HTTP falsificado, incluyendo la sesin del usuario y cualquier otra informacin de autenticacin incluida automticamente, a una aplicacin web vulnerable. Esto permite al atacante forzar al navegador de la vctima para generar pedidos que la aplicacin vulnerable piensa son peticiones legtimas provenientes de la vctima.
A9 Utilizacin de componentes con vulnerabilidades conocidas Algunos componentes tales como las libreras, los frameworks y otros mdulos de software casi siempre funcionan con todos los privilegios. Si se ataca un componente vulnerable esto podra facilitarla intrusin en el servidor o una perdida seria de datos. Las aplicaciones que utilicen componentes con vulnerabilidades conocidas debilitan las defensas de la aplicacin y permiten ampliar el rango de posibles ataques e impactos.
A10 Redirecciones y reenvos no validados Las aplicaciones web frecuentemente redirigen y reenvan a los usuarios hacia otras pginas o sitios web, y utilizan datos no confiables para determinar la pgina de destino. Sin una validacin apropiada, los atacantes pueden redirigir a las vctimas hacia sitios de phishing o malware, o utilizar reenvos para acceder pginas no autorizadas.
Conclusin Existen miles de vulnerabilidades posibles para todo sistema, y al hablar de las aplicaciones web que manejan datos delicados o de suma importancia para sus usuarios tales como sus nombres, sus cuentas bancarias, contraseas, etc. Es importante ser muy cuidadosas y responsables con sus perfiles. Ya que con toda la informacin que proporcionan pueden ser afectados de diferentes maneras que les pueden afectar seriamente, por lo tanto es necesario evitar que los usuarios se arriesguen con su informacin, adems de que el poder proporcionarles seguridad a estos riesgos nos da una ventaja competitiva sobre los dems programadores o diseadores. Tambin todas estas vulnerabilidades son buscadas por personas con bajos escrpulos o con intenciones de daar a otras personas. Adems estas avanzan al par de la tecnologa, ya que cuando una de estas vulnerabilidades es resuelta, aparece una nueva capaz de daar el sistema o al usuario asi que creo que las vulnerabilidades as como son malas, tambin tienen algn punto bueno como puede ser el que motiva a los programadores y diseadores a mejorar su trabajo.