Ho un'applicazione web ASP.NET che usa HTTPS e richiesta-risposta basata su XML. Sembra che il cookie di sessione di un utente possa essere recuperato tramite XSS, se la richiesta / risposta viene intercettata e il codice JavaScript dannoso viene aggiunto come payload.
Poiché si tratta di una richiesta-risposta basata su XML, il payload deve essere codificato in HTML. Ecco un esempio:
"<iframe name="if(0){\u0061lert(1)}else{\u0061lert(document.cookie)}" onload="eval(name)"/>
C'è un modo per interrompere l'esecuzione di qualsiasi script dannoso?
- Come identificare una richiesta / risposta contenente uno script dannoso ? Ho notato che tutti gli script dannosi devono contenere
"
,&
,(
e)
, ma i dati utente possono contenere anche questi caratteri. - Come posso impedire che uno script di questo tipo venga eseguito sui browser degli utenti? Ho già provato a decodificare tutte le richieste / risposte per corrompere lo script che funziona, ma le mie richieste / risposte contengono dati utente che contengono caratteri come
&
. Ciò porta all'intero XML a diventare corrotto, che causa l'arresto anomalo dell'applicazione.