[SOLUCIONADO] Duda sobre vulnerabilidad

Iniciado por davidhs, Julio 08, 2016, 02:00:00 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Julio 08, 2016, 02:00:00 PM Ultima modificación: Julio 09, 2016, 10:24:57 AM por Stiuvert
Hola foro de Underc0de, hoy vengo con una duda, que es que alguien me explique como funciona un poco la vulnerabilidad http-method-tamper, a parte de explicarmela como sería la explotación y solución.

Muchas gracias de ante mano. :P!
Un mundo construido sobre fantasía. Emociones sintéticas en forma de pastillas. Guerras psicológicas en forma de publicidad. Sustancias químicas que alteran la mente en forma de comida. Lavados de cerebro en forma de medios de comunicación. Agujas aisladas bajo control en forma de redes sociales.

Julio 08, 2016, 03:39:33 PM #1 Ultima modificación: Julio 08, 2016, 03:46:00 PM por grep
HTTP Method Tampering (o HTTP Verb Tampering) es una técnica de ataque y/o pentesting que intenta explotar un recurso, que debería estar controlado y solo accesible a usuarios autenticados, ofrecido por el servidor Web. En este caso, el ataque se enfoca en acceder al recurso a través de un request con un método no controlado por el servidor.

Estos problemas suelen tener los servidores Apache 2.2/PHP, IIS 6.0, Apache 2.2.8, y TomCat 6.0. Puedes suponer este caso de una restricción en un archivo de configuración web.xml para una aplicación Java EE:

Código: xml
<security-constraint>
  <web-resource-collection>
    <url-pattern>/admin/*</url-pattern>
    <http-method>GET</http-method>
    <http-method>POST</http-method>
  </web-resource-collection>
  <auth-constraint>
    <role-name>admin</role-name>
  </auth-constraint>
</security-constraint>


Las reglas aseguran que cualquier GET o POST a un recurso dentro de admin/ será bloqueado para usuarios que no tengan el rol admin. Pero cualquier request que no sea un GET o POST, por ejemplo un HEAD, no será bloqueado.


http-method-tamper si mal no entiendo es un NSE (Nmap Scripting Engine) script para nmap que intenta acceder a recursos que respondan con un estado 401 (Unauthorized) a traves de requests con diferentes verbos o metodos. Si a cualquiera de estos requests se obtiene otro código de estado, entonces se supone que la URI es vulnerable.

http-method-tamper identifica una dirección con respuesta 401, y entonces envía un HEAD request, despues un POST request y por último un request con un método cuyo string es generado aleatoriamente.


Solucion: configurar bien el acceso a tus recursos (a traves de .htaccess en un servidor Apache) o configura tu Web server para filtrar todos los métodos con excepción de GET y POST, que suelen ser los más utilizados en back-end's que no son RESTful.

Fuentes:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos

Muchísimas gracias, me ha servido de mucho la explicación grep :P
Un mundo construido sobre fantasía. Emociones sintéticas en forma de pastillas. Guerras psicológicas en forma de publicidad. Sustancias químicas que alteran la mente en forma de comida. Lavados de cerebro en forma de medios de comunicación. Agujas aisladas bajo control en forma de redes sociales.