Alguien (probablemente un bot) envió una solicitud a la siguiente dirección URL para mi aplicación ASP.NET 4.0 formularios web (que se ejecuta en IIS 7.0):¿Por qué usar una URL que contiene dos puntos considerados como una "solicitud potencialmente peligrosa"?
http://ipaddress-of-my-applications-domain/bla1.bla2.bla3.bla4.bla5:)
Esto causó un System.Web.HttpException
. Recibí un correo electrónico de registro de ASP.NET HealthMonitoring que había configurado, diciéndome:
Se detectó un valor Request.Path potencialmente peligroso desde el cliente (:).
Seguimiento de la pila era:
System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)
¿Por qué es de dos puntos en la URL "potencialmente peligroso"? ¿Qué cosas peligrosas se pueden hacer con dicha URL? ¿Tengo algún agujero de seguridad aquí del que no tengo conocimiento?
¡Gracias por dar una explicación por adelantado!
Editar
He probado que los dos puntos en una cadena de consulta (como http://mydomain.com?Test=9:)
) no causa esta excepción.
Ver esta pregunta - http://stackoverflow.com/questions/2053132/is-a-colon-safe-for-friendly-url-use - No creo que sea un duplicado como tal, pero sí discute en dos puntos URL – ChrisF
esta página en [URL codificación] (http://www.blooberry.com/indexdot/html/topics/urlencoding.htm) enumera los dos puntos en su tabla de caracteres reservados, pero no explica por qué se utiliza para. – ChrisF
¡Gracias por el enlace! Pero esta pregunta parece más discutir si un dos puntos es "seguro" con respecto a la codificación URL. La excepción de ASP.NET que tuve parece más bien que podría haber una amenaza a la seguridad. – Slauma