XSS e CSRF. Una grande differenza

1

Quindi, c'è "solo" una differenza tra XSS e CSRF.

E cioè che XSS impone l'esecuzione di uno script (o forza l'azione da intraprendere in qualche modo), mentre CSRF effettua una richiesta HTTP.

Lo script (azione) in XSS può essere bloccato (ad esempio da NoScript), ma la richiesta HTTP non può essere bloccata.

La mia domanda è, è corretto (sì o no). Se questo non è corretto, dov'è il mio errore.

PS: c'è qualche altra opzione per l'attivazione di XSS (cos'altro potrebbe essere l'azione per attivare un XSS), o è specificamente attivata da Javascript.

Grazie

Modifica: questo post può essere cancellato. Ha posto una domanda più "corretta" sul link sottostante dove ho trovato la risposta che stavo cercando. Grazie per l'aiuto però:)

XSS e CSRF - differenza di base

    
posta DrDoom 14.06.2017 - 07:49
fonte

1 risposta

4

La principale differenza tra XSS e CSRF è la prospettiva:

  • XSS: sfrutta la fiducia che l'utente ha in un determinato sito web
  • CSRF: sfrutta la fiducia che il sito Web ha per il browser dell'utente

XSS ha una dipendenza da javascript sì, ma non è limitato a quell'ambito. Quello che voglio dire è che hai bisogno di javascript per il payload, ma i payload sono noti per essere eseguiti non solo da JS stesso, ma anche da activeX, flash, VBScript e html per nominarne alcuni. Tutto dipende da ciò che il sito permetterà agli utenti di cambiare sul sito stesso. Quindi noscript è un ottimo modo per impedire l'esecuzione di script di livello superiore (si pensi a <script>attackmeplease()</script> ) ma a seconda del sito qualcuno può diventare davvero intelligente inserendolo nel supporto flash che l'utente consente di eseguire perché è un sito di condivisione video (un grezzo esempio, ma hai un'idea, l'ingegneria sociale ha un ruolo).

CSRF non ha tale dipendenza da javascript ed è progettato per inviare una richiesta ad altri siti Web senza che gli utenti ne siano a conoscenza. Dipende molto dalla capacità del browser di ottenere ed eseguire il pacchetto di attacco. Un'altra differenza è che può venire in più forme come tag immagine HTML, oggetti immagine javascript, documenti word, film, e-mail, ecc ... La richiesta stessa non può essere bloccata se il pacchetto viene eseguito no, ma il sito può convalidare la richiesta.

Alcune altre differenze sono i requisiti per l'istanziazione, in uno l'utente deve visitare un sito specifico, nell'altro devono usare un materiale contaminato che può provenire da una varietà di fonti, non solo da un sito. Anche l'ultimo punto di errore è diverso, in XSS l'utente è l'ultimo punto di errore, mentre in CSRF il server è.

Un'altra grande differenza è che un sito vulnerabile a XSS è quasi certamente vulnerabile a CSRF, mentre essere protetto da XSS anche completamente non significa che tu sia protetto da CSRF.

    
risposta data 14.06.2017 - 08:33
fonte

Leggi altre domande sui tag