Tengo una aplicación de formularios web ASP.Net (actualizada a framework 4.0) que tiene validación de solicitud en todas las páginas. Alguien que intente una inyección de script (al ingresar algo como <script>location.href=dangerurl;</script>
en un cuadro de texto y enviarlo) generará una excepción, ya que la validación de la solicitud de ASP.Net falla para el control de entrada.
En las páginas donde se utilizan los editores HTML (y la validación de la página está DESACTIVADA) el contenido de entrada se desinfecta utilizando la biblioteca antixss.
Pero cuando el sitio fue a revisión externa, señalaron que estos cuadros de texto aceptan texto como <% some text
y que se considera que ha almacenado el riesgo de XSS. La combinación de caracteres <%
está perdonada por el validador de solicitudes de ASP.Net de alguna manera.
No puedo ver una forma de montar un ataque con estos caracteres <%
. ¿Es correcta la observación de los evaluadores externos al decir que existe un mayor riesgo de XSS y, de ser así, cómo se puede crear un vector XSS?