Tengo una aplicación web ASP.NET que utiliza HTTPS y solicitud / respuesta basada en XML. Parece que la cookie de sesión de un usuario se puede recuperar a través de XSS, si se intercepta la solicitud / respuesta y se agrega un código JavaScript malicioso como carga útil.
Dado que es una solicitud-respuesta basada en XML, la carga útil debe estar codificada en HTML. Aquí hay un ejemplo:
"<iframe name="if(0){\u0061lert(1)}else{\u0061lert(document.cookie)}" onload="eval(name)"/>
¿Hay alguna forma en que pueda detener la ejecución de cualquier script malicioso?
- ¿Cómo identificar una solicitud / respuesta que contenga un script malicioso ? Noté que todos los scripts maliciosos deben contener
"
,&
,(
y)
, pero los datos del usuario también pueden contener estos caracteres. - ¿Cómo detengo la ejecución de este script en los navegadores de los usuarios? Ya he intentado decodificar todas las solicitudes / respuestas para corromper el script que funciona, pero mis solicitudes / respuestas contienen datos de usuarios que contienen caracteres como
&
. Esto lleva a que todo el XML se corrompa, lo que bloquea la aplicación.