Analisis de las vulnerabilidades del top 10 de owasp

Solo disponible en BuenasTareas
  • Páginas : 22 (5293 palabras )
  • Descarga(s) : 0
  • Publicado : 30 de agosto de 2010
Leer documento completo
Vista previa del texto
INTRODUCCION

A medida que una estructura digital se hace cada vez más interconectada y compleja, la dificultad de lograr seguridad en las aplicaciones crece de manera exponencial. Por este hecho ya no se puede correr riesgos con problemas de seguridad relativamente simples como los presentados en el Top 10 de Owasp.
El objetivo de este es crear conciencia sobre la seguridad de lasaplicaciones web mediante la identificación de alguno de los riesgos más críticos a los que se enfrentan las organizaciones, además educar acerca de las consecuencias de este y proporcionar técnicas básicas para protegerse en contra de estas áreas de alto riesgo.
De a cuerdo a lo presentado por Owasp, para determinar el riesgo en una organización se evalúa la probabilidad asociada a cada amenaza agente,ataque y debilidad en la seguridad combinándola con una estimación del impacto técnico y comercial.

RIESGOS DE SEGURIDAD EN APLICACIONES WEB

1. Injection – Inyección

Las fallas de inyección, como SQL, sistema operativo, y la inyección LDAP, ocurren cuando los datos no son de confianza, se envían a un intérprete como parte de un comando o consulta,The attacker's hostile data can trick theinterpreter into executing unintended commands or accessing unauthorized data. donde datos hostiles del atacante pueden engañar al intérprete para que ejecute comandos no deseados o tener acceso a datos no autorizados.

Cualquier persona ya sea interno o externo a la empresa puede realizar simples ataques basados en texto que se aprovechan de la sintaxis del intérprete objetivo.

Las fallas deinyección se producen cuando una aplicación envía los datos en los que no confía a un intérprete. Injection flaws are very prevalent, particularly in legacy code, often found in SQL queries, LDAP queries, XPath queries, OS commands, program arguments, etc. Injection flaws are easy to discover when examining code, but more difficult via testing. Las fallas de inyección son muy frecuentes, sobretodo cuando existe código heredado, estas son fáciles de descubrir al examinar el código, pero es más difícil a través de la prueba. Puede producir pérdidas o corrupción de datos o denegación de acceso.

La mejor manera de averiguar si una aplicación es vulnerable a la inyección es verificar que el uso de intérpretes separa claramente los datos que no son de confianza del comando o consulta, laopción más recomendable para evitar este tipo de vulnerabilidad es usar una caja fuerte de la API, que evita el uso total del intérprete o proporciona una interfaz con parámetrosBeware of APIs, such as stored procedures, that appear parameterized, but may still allow injection under the hood., aunque alguna de las APIs, tales como procedimientos almacenados, que aparecen con parámetros, puedepermitir la inyección; otra manera de saber si la aplicación es vulnerable se da comprobando código por medio de herramientas de análisis para ver si la aplicación utiliza intérpretes con seguridad de una manera rápida y sencilla.

Ejemplo Inyección
The application uses untrusted data in the construction of the following vulnerable SQL call:La aplicación utiliza los datos en los que no confía para laconstrucción de la siguiente consulta vulnerable SQL:
String query = "SELECT * FROM accounts WHERE custID='" + request.getParameter("id") +"'";
The attacker modifies the 'id' parameter in their browser to send: ' or '1'='1.El atacante modifica el 'id' parámetro en su navegador para enviar: 'o '1' = '1. This changes the meaning of the query to return all the records from the accounts database,instead of only the intended customer's. Esto cambia el sentido de la consulta para devolver todos los registros de la base de datos de cuentas, en lugar de sólo un cliente determinado.
http://example.com/app/accountView?id=' or 1'='1
In the worst case, the attacker uses this weakness to invoke special stored procedures in the database, allowing a complete takeover of the database host.En el...
tracking img