Explotaciones basadas en convenciones de nombres

6

El libro Web Hacking Exposed tiene un número de casos en los que el atacante esencialmente podría identificar patrones En convenciones de nomenclatura para diseñar ataques.

¿Puede alguien dirigirme a cualquier estudio sobre vulnerabilidades de seguridad / privacidad basado en "convenciones de nomenclatura" ... como nombre de archivo, nombres de identificadores (pueden estar en javascript), parámetros de URL, etc.? ¿Diría que, en general, tales vulnerabilidades (vulnerabilidades de lectura) se limitan a las aplicaciones web?

    
pregunta Tathagata 07.04.2011 - 20:33
fuente

5 respuestas

6

Los nombres de host revelan información interesante, como posibles sumideros de código (por ejemplo, ldap1.internal.companyname.com sería LDAPi versus db1.internal.companyname.com, que sería SQLi). Estos se pueden extraer con la herramienta host-extract.rb .

Los parámetros revelan el mismo tipo de información e incluso pueden decir palabras sobre el tipo de consulta. Por ejemplo, a menudo veo ASC o DESC enumerados como nombres de parámetros (especialmente en los botones de clasificación en aplicaciones web), lo que indicaría un tipo de inyección ORDER BY o GROUP BY. A veces, los nombres de los parámetros están ordenados, agrupados o quizás ordenados o simplemente "orden" o "grupo". Estos son muy reveladores.

Además, algunos se denominan "límite" o "desplazamiento" que indica la parte de LÍMITE o DESPLAZAMIENTO de una consulta SQL. Un asesor de aplicaciones web generalmente asume que está inyectando en la cláusula WHERE, pero realmente podría estar en estos otros lugares.

Algunos nombres de parámetros proporcionan otras sugerencias, como si son un entero o una cadena.

A menudo, las herramientas de explotación de SQLi, como sqlmap , Marathon , y bsqlbf-v2 le permitirá configurar la consulta de ataque más específicamente, y sí, el conocimiento del parámetro actual ¡Las claves y los valores sin duda ayudan a probarlos, especialmente durante las pruebas de SQLi ciego!

Los nombres de archivos (a través de una divulgación de ruta) son aún más obvios. Se pueden usar para discernir si un paquete o componente popular de código abierto (o potencialmente de código cerrado si lees mucho código) está instalado en un servidor web. Por lo general, puede bajar a la versión específica. InspathX y WhatWeb utilizan estas técnicas - inspathx para identificar vulnerabilidades de revelación de rutas y WhatWeb, bueno, digamos que ¡WhatWeb puede hacer mucho!

Ya que aproximadamente la mitad de las herramientas que mencioné en esta respuesta citan las herramientas creadas por los miembros actuales del YGN Ethical Hacking Group , debe consultar su área de investigación y laboratorio (accesible desde su página web principal).

Los autores de "Hacking Exposed Web Applications, 2nd Edition" (Tenga en cuenta que la tercera edición ya está disponible, donde se encuentra disponible información actualizada adicional) se refieren principalmente a listas personalizadas de forzados brutos de directorios / archivos, también como Referencias directas a objetos (es decir, OWASP T10 La navegación forzada, OWASP T10 no restringe el acceso a URL, las referencias directas inseguras a objetos de OWASP o la ubicación de recursos predecibles de WASC TC).

En otras palabras, si ves algo como http://owaspbwa/external/ también puedes verificar la existencia de http://owaspbwa/internal/ o similar.

    
respondido por el atdre 08.04.2011 - 02:13
fuente
3

Otro aspecto que puede ser vulnerable (o habilitar otros ataques) es nombrar convenciones para los nombres de usuario.
Es decir. hace que sea posible la recolección de usuarios, los ataques dirigidos son más fáciles y, si va a realizar un bloqueo de cuenta DoS, es más fácil encontrar a su usuario objetivo o generar listas completas de usuarios. Por otro lado, también he visto lo contrario: una convención de nombres que revela la información privada de un usuario. Por ejemplo, usar algún tipo de identificador personal (piense en SSN o número de nómina) como parte del nombre de usuario. Ahora, cuando alguien ve el nombre de usuario (y en muchas organizaciones, la dirección de correo electrónico se basa en el nombre de usuario), se revela ese detalle.

    
respondido por el AviD 08.04.2011 - 01:32
fuente
2

Si está discutiendo el camino a través de las vulnerabilidades, hay muchos recursos en línea. El caso más común de recorrido de ruta es dentro de la inyección de SQL (es decir, si está ejecutando Apache, puedo adivinar dónde se basan sus documentos personales según la convención estándar del sistema operativo Linux / UNIX).

Puede encontrar más información en estos sitios (esta es la punta del iceberg de las fuentes):
- enlace
- enlace

Si está viendo los ataques que se generan de acuerdo con un esquema de denominación de, por ejemplo, un nombre de host, sería una aplicación muy específica (la aplicación aplica la lógica, no un ejecutable) y dependerá de la organización que está siendo apuntada.

Por otro lado, si está hablando de convenciones de nomenclatura relativas a los nombres de archivos reales de la aplicación maliciosa, es un concepto interesante. No estoy seguro si ese método de detección de malware es realmente una posibilidad. Esto no se debe a la falta de conocimientos técnicos, es más porque el malware está destinado a mantenerse oculto. Si el malware en realidad se llama "hacked.exe", entonces me sorprendería mucho. Incluso si este fuera el caso, los métodos de detección basados en firmas que la mayoría de las aplicaciones antivirus / antimalware emplean ahora deberían aplicarse. Por lo tanto, es equivalente a segmentar cuadrados cuando realmente quieres atrapar todos los rectángulos.

No sé qué es exactamente lo que estás buscando, por lo que esta es una pregunta difícil de responder. Amplíe su pregunta si desea más información.

    
respondido por el Ormis 07.04.2011 - 21:57
fuente
1

Es difícil entender tu pregunta, pero creo que Ormis tiene el problema clave para saber dónde están los artículos.

El único otro aspecto que veo razonablemente a menudo es en torno a hacer la vida fácil para los atacantes al nombrar a los servidores de finanzas como "finance001", etc. ...

Mejor no, eh :-)

Usa una convención de nomenclatura, claro, pero una que se adhiere a un sistema que no grita "¡Eh, aquí, hermoso objetivo!" - un elemento de seguridad por oscuridad (pero solo como una capa que ayuda, no para ser invocado)

    
respondido por el Rory Alsop 07.04.2011 - 23:43
fuente
-1

Encontré este recurso en línea. Espero que esto ayude!

enlace

    
respondido por el PalmerBomber 07.04.2011 - 21:33
fuente

Lea otras preguntas en las etiquetas