If an XSS vulnerability is a reflected XSS, can the XSS be scored with no impact to integrity?
No, il tipo di vulnerabilità XSS non ha alcun effetto sulle metriche di impatto.
Non importa se una vulnerabilità XSS è riflessa, archiviata o basata su DOM, o se richiede l'interazione dell'utente, o se è richiesto un account, o ... Questi fattori sono presi dalla complessità dell'accesso e dall'autenticazione metriche.
L'impatto d'altra parte è sempre lo stesso. Non importa come viene fornito il payload, una volta che JavaScript controllato dagli attacchi è in esecuzione nel browser delle vittime, ciò che può essere fatto è lo stesso.
why is XSS scored with PARTIAL impact to integrity instead of NO impact to integrity?
Nel valutare l'impatto, deve essere preso in considerazione solo l'impatto sull'host:
SCORING TIP #2: When scoring a vulnerability, consider the direct impact to the target host only. For example, consider a cross-site scripting vulnerability: the impact to a user's system could be much greater than the impact to the target host. However, this is an indirect impact. Cross-site scripting vulnerabilities should be scored with no impact to confidentiality or availability, and partial impact to integrity CVSSv2 spec
Posso pensare a due opzioni per il punteggio di integrità:
-
Con XSS, un utente malintenzionato cambia i dati che un host invia al suo utente, il che è un impatto diretto sull'integrità dell'host. Un utente malintenzionato può alterare i dati e quindi eseguire vari attacchi, come la visualizzazione un modulo di accesso per gli attacchi di phishing (un impatto indiretto sulla riservatezza che non è considerato in CVSSv2), leggere i dati lato client (come i cookie, che ancora non sono considerati un impatto diretto sulla riservatezza), ecc.
- Come suggerito da @one, un utente malintenzionato potrebbe modificare i dati in un'applicazione Web ignorando la protezione CSRF, che avrebbe un impatto parziale, ma ovviamente non completo, sull'host. Trovo questa spiegazione meno probabile, in quanto implicherebbe anche che ci dovrebbe essere un impatto sulla disponibilità (almeno per alcune applicazioni) e potrebbe anche in qualche modo implicare un impatto sulla riservatezza (vedi la mia domanda a riguardo here ).