2010-09-28 5 views
1

Nous avons modifié notre section customErrors pour nous protéger contre la récente vulnérabilité ASP.NET.HttpRequestValidationException montrant YSOD malgré la section customErrors

Notre problème est que les HttpRequestValidationException provoquent maintenant l'affichage d'un objet YSOD, d'autres exceptions et les erreurs de page non trouvée affichent notre page d'erreur personnalisée.

Si nous changeons le mode redirect en ResponseRedirect, tout fonctionne correctement.

Voici notre section modifiée:

<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/Error.aspx"/> 

Cette question n'a rien à voir avec la vulnérabilité récente ASP.NET Il est au sujet de la ResponseRewrite redirectMode en combinaison avec de HttpRequestValidationException. Nous savons qu'il y aura bientôt un correctif et que nous pourrions revenir à ResponseRedirect.

Cordialement, Martin

Répondre

1

Cela se produit lorsque votre page d'erreur génère une erreur. Assurez-vous de désactiver la validation des demandes sur votre page d'erreur. <% @ Page ValidateRequest = "false"%>

Vous devez bien sûr encoder toute entrée d'utilisateur qui s'affiche sur votre page d'erreur. par exemple. Server.HtmlEncode (ex.Message)

Questions connexes