Cómo obtener una URL detrás del estilo REST

3

He hecho la misma pregunta en StackOverflow, pero el tema no se ha respondido, excepto algunos comentarios, así que intentaré hacer la misma pregunta aquí, ya que probablemente sea más específica para la seguridad. El único (posible) duplicado que encontré es uno aquí y aquí . Además, la primera pregunta está dirigida a Apache y .htaccess (regla de reescritura para ocultar la extensión del archivo). La segunda pregunta apunta más a hacer una inyección directa de SQL a un sitio web de estilo de descanso específico y no recopilar las URL detrás de él.

Mi pregunta:

¿Hay alguna forma en que un atacante pueda descubrir qué hay detrás de las URL de estilo REST? Por ejemplo, SWIM tiene un usuario "eg", ubicado en la base de datos, que consulta desde mode.php. Una vez realizada la consulta, la página se imprime "p. Ej." En el sitio web.

http://example.com/mode.php?user=eg

SWIM CMS utiliza una técnica de estilo REST y mientras el usuario navega por el sitio web de SWIM, el usuario no puede ver los parámetros ni el archivo que se está procesando. A continuación se muestra un ejemplo.

http://example.com/mode/user/eg

Hay una forma en que un atacante puede descubrir qué se esconde detrás de /mode/user/eg y, de esa forma, tratar de explotar la aplicación web mediante una inyección o cualquier tipo de ataque. Por ejemplo, si descubre que la URL real es como en el primer ejemplo donde el parámetro y su valor son visibles, puede intentar hacer una inyección SQL.

Referencias :
* enlace
enlace
SWIM = alguien que no soy yo

    
pregunta sensation 11.09.2013 - 03:33
fuente

2 respuestas

3

Es poco probable que el uso de una URL de estilo REST disuade a un atacante, ya que es un patrón de desarrollo relativamente conocido en estos días con una serie de marcos populares que lo utilizan.

Cuando estoy probando aplicaciones basadas en REST (generalmente bastante fáciles de detectar debido al formato de la URL), siempre borro las rutas de las URL (por ejemplo, usuario y modo) en este ejemplo, ya que se espera que sean va a ser transformado en algún lado del servidor.

Herramientas como eructar tienen opciones específicas que pueden configurarse en sus motores de escaneo para orientar las aplicaciones de estilo REST.

Desde el archivo de ayuda de BURP

  

Parámetros de URL de estilo REST: los valores de todos los tokens de directorio y nombre de archivo dentro de la parte de la ruta del archivo de la URL. Probar cada uno de estos puntos de inserción puede imponer una sobrecarga significativa y solo debe usarse si cree que la aplicación está utilizando estas ubicaciones para transmitir datos de parámetros.

    
respondido por el Rоry McCune 11.09.2013 - 10:59
fuente
2
  

¿Hay alguna forma en que un atacante pueda descubrir qué se esconde detrás de / mode / user / eg

si conoce la aplicación web utilizada, entonces sí. De lo contrario, probablemente no. podría intentar adivinar si se trata de una aplicación basada en php / rails / lo que sea para aplicaciones php-bases; esto funciona el 90% del tiempo, debido a las configuraciones predeterminadas:

Si SABES que es PHP y encuentras que lo anterior NO funciona, entonces tu contraparte al menos piensa en lo que está haciendo.

RAILS /: your_favourite_app_server_here entrega, si no se suprime, a menudo un encabezado X-Powered-By personalizado, que indica qué servidor http se utiliza, por ejemplo, WEBRick, Passenger, etc., pero estos son fáciles de eliminar.

otra forma sería verificar de dónde provienen los recursos estáticos (url); Esto podría ser un indicio de qué tecnología se utiliza.

    
respondido por el that guy from over there 11.09.2013 - 09:18
fuente

Lea otras preguntas en las etiquetas