jueves, febrero 25, 2016

La higiene en los mensajes de error de la web. Un ejemplo con Microsoft.com

A lo largo de los últimos años he hablado mucho de los mensajes de error en las aplicaciones web. Mucho y de muchas formas distintas, así que si quieres pasar un buen rato leyendo, hazte algunas búsquedas sobre los posts de los últimos diez años que seguro que te salen muchos resultados. Los mensajes de error son fabulosos en la fase de footprinting y fingerprinting de una auditoría de seguridad, y te pueden llevar a descubrir pequeños bugs en los sitios adecuados para conseguir encontrar el camino directo al gran bug, por eso yo suelo pedir a mis compañeros que sean muy cuidadosos con ellos.

Figura 1: La higiene en los mensajes de error. Un ejemplo con Microsoft.com

En el evento de ayer, en la Dot Net Conference, - donde he de reconocer que me lo pasé como un niño pequeño con tanto amigo y gente buena - utilicé como primera parte de la charla sobre "Some dirty, quick and well-known tricks to hack your bad .NET WebApps" una referencia y una demo a la importancia de la higiene con los mensajes de error. Aquí tenéis las diapos de la charla.


La primera de las demos la hice con la web de Microsoft.com, en la que, dependiendo de cómo fuerces los errores obtienes resultados diferentes. Estos son los ejemplos.

Figura 3: Error con redirección tras pedir https://www.microsoft.com/foca.aspx

Figura 4: Error controlado y consistente con el error controlado. Sin redirección

Figura 5: Error generado por el Engine de PHP. Totalmente inconsistente.

Figura 5: Error generado por Request Filtering

Figura 6: Error no controlado del framework .NET al detectar un ataque de HTML Injection

Figura 7: Error generado por el WAF. En este caso por el WAF de Akamai que gestiona la CDN

Como podéis ver, seis mensajes de error distintos para el mismo dominio. La culpa es porque hay muchos elementos que pueden interceptar la petición de error y dar la respuesta ante cada situación. Una buena política higiénica debería devolver siempre los mismos mensajes.

Figura 8: Momentos durante mi charla de ayer }:)

Aprovecho para mandar un saludo, un fuerte abrazo y un beso a tod@s los que os acercasteis a mí para saludarme, pedirme una foto o charlar un rato dentro del evento. Hicisteis que me volviera a sentir como esperaba sentirme cuando regresé de mis vacaciones. Si no te saludé, deberías haberte acercado a decir "hola", que seguro que me hubiera encantado hacerlo.

Saludos Malignos!

2 comentarios:

  1. Yo estuve y puedo asegurar que fue espectacular. Muchas felicidades por tu trabajo

    ResponderEliminar
  2. Ojalá hubiera podido estar....

    ResponderEliminar