La vulnerabilidad más común en la categoría OWASP Referencia de objeto directa insegura es de directorio transversal. ¿Cuáles son las otras vulnerabilidades que entran en esta categoría?
La vulnerabilidad más común en la categoría OWASP Referencia de objeto directa insegura es de directorio transversal. ¿Cuáles son las otras vulnerabilidades que entran en esta categoría?
Es importante entender por qué OWASP clasifica el recorrido del directorio como IDOR: el parámetro que acepta la aplicación es una referencia directa a un archivo (en lugar de una referencia indirecta que, por ejemplo, apunta a una base de datos). entrada, que a su vez apunta a un archivo). Al pasar una referencia directa diferente, un atacante puede leer archivos arbitrarios.
CWE , que es más detallado que el Top 10 de OWASP, por ejemplo, utiliza una clasificación:
El término "Referencia Insegura de Objetos Directos", como se describe en el Top Ten de OWASP, es más amplio que este CWE porque también cubre el recorrido de la ruta (CWE-22). Dentro del contexto de la teoría de la vulnerabilidad, existe una similitud entre el concepto OWASP y CWE-706: Uso de nombre o referencia incorrectamente resueltos.
Algunos clasificarían open redirects (aunque OWASP no lo hace, ya que está cubierto por Redirects sin validar y Adelante)
IODR es básicamente un problema de autorización.
El otro ejemplo más común es una referencia directa a los índices de la base de datos. Por ejemplo, tiene una funcionalidad que muestra un mensaje privado:
id = [userinput];
message = getMessage(id);
showMessage(message);
function getMessage(id) {
return query("SELECT message FROM messages WHERE id = ?", id);
}
La idea es que cada usuario solo pueda leer sus propios mensajes. Pero como los identificadores son referencias directas al mensaje y porque no hay una verificación de autorización, un atacante puede leer los mensajes de todos los usuarios. Tenga en cuenta que la autorización adecuada solo solucionaría el problema, pero también lo haría con referencias indirectas (es decir, cada usuario tiene mensajes con ID 1 a x, por lo que no hay posibilidad de acceder a otros mensajes).
Lea otras preguntas en las etiquetas web-application appsec penetration-test owasp owasp-top-ten