Comprensione di prevenzione CSRF

0

Stavo cercando informazioni sugli attacchi CSRF e sto pensando al concetto di prevenzione "token di forma casuale".

Diciamo che ogni form ha un "token nascosto" all'interno e il server controlla il token prima di ogni altra cosa. Ora diciamo che esiste una forma http://myWebsite.e.x/acccount/edit e che deve essere inviata.

L'attaccante può creare un iFrame di questo modulo sul suo sito web (generato token), nasconderlo e inviarlo tramite JavaScript (e i cookie della vittima).

Cosa mi manca qui?

    
posta Tsalikidis 21.02.2014 - 13:29
fonte

2 risposte

6

Ti manca la norma della stessa origine . Affinché lo scenario funzioni, gli autori di attacchi hanno bisogno del codice JavaScript dalla sua pagina per poter accedere a iFrame. Non è possibile.

Ricorda questa regola: una finestra / frame può non parlare con un'altra finestra / frame senza la finestra / frame di destinazione che lo consente (mediante l'uso di messaggio , ad esempio).

Nel tuo caso, il frame di destinazione non lo permetterà. Quindi l'attaccante non sarà in grado di accedere al DOM dell'iFrame per afferrare il token. Non può inviare moduli a livello di programmazione o inviare richieste tramite iFrame.

    
risposta data 21.02.2014 - 14:00
fonte
0

Quando l'utente visita il sito legittimo, il server genera un token casuale e lo incorpora nel modulo. Affinché il server accetti l'invio di un modulo, il token valido deve essere inviato insieme al resto dei dati.

Quando l'attaccante crea il falso modulo sul sito dannoso, non ha conoscenza di questo token e non può inserirlo. Ciò si traduce nel server di destinazione che respinge l'invio del modulo.

L'attaccante non userebbe un iframe per caricare il modulo originale. Creano e inviano il proprio modulo che eredita l'identità dell'utente. Il token consente al server di destinazione di sapere che l'invio non proviene da una forma legittima.

    
risposta data 21.02.2014 - 14:04
fonte

Leggi altre domande sui tag