CSRF Protezione Hosting Drupal

Ho alcuni script PHP POST che ho bisogno di proteggere dagli attacchi CSRF e hanno più domande:

1) Se posso inviare richieste POST di PHP utilizzando jQuery senza un modulo HTML, essere solo ottenendo valori direttamente dagli elementi HTML e inviarli utilizzando jQuery, sto ancora a rischio di CSRF?

2) Quando un utente accede al sito web, devo conservare il loro unico token in una variabile di sessione. Nello script PHP POST verifico se questa variabile di sessione è impostata e ha lo stesso valore ho impostato prima. Non è abbastanza? perché è necessaria per il token da inserire nel form HTML come bene?

CSRF protezione Drupal hosting che corrisponda a quella in

ha chiesto 15 novembre '14 a 23:43

  1. Sì. Non importa come si costruisce la richiesta, l'attaccante può costruire uno nello stesso modo. (In teoria si potrebbe fare le caratteristiche di una richiesta complessa (che fanno scattare una richiesta di verifica preliminare CORS) obbligatorio, in modo che un altro sito non ha potuto ottenere il browser dell'utente di duplicare l'intera richiesta, ma non si vuole dipendere da quello) .
  2. No

Il punto del token è quello di verificare che la pagina che contiene il codice di responsabilità di decidere ciò che accade nella richiesta (vale a dire la forma o il JavaScript) è una pagina sul tuo sito web.

Se il modulo (o JavaScript) in grado di leggere un gettone (che corrisponde a quello della sessione) dal codice HTML della pagina e metterlo nella richiesta, allora si conosce il codice che ha costruito la richiesta è venuto dal tuo sito.

Se basta controllare che sia nella sessione, allora tutto si sta verificando è che l'utente ha causato un token da generare (che di solito significa semplicemente visitare qualsiasi pagina del tuo sito ... che potrebbe essere in un frame nascosto).

ok. che dire se l'attaccante ha un JS che può includere il modulo HTML reale dal mio sito web in un iframe nascosto. L'ho visto in un altro esempio, non il token da inserire nel modulo se l'utente visita il sito attaccante mentre si è connessi? In questo caso la richiesta sarebbe autentica come il token è lì nella forma e nella sessione o mi sto perdendo qualcosa? - Michael Samuel 15 novembre '14 a 23:58

No. Se si mette un frame all'interno di un modulo, i campi nella pagina caricata dal telaio non verranno inclusi nei dati del modulo. Non è possibile leggere i dati tra domini attraverso una cornice con JavaScript (a meno che il sito ha cooperato con postMessage, che non sarebbe). - Quentin 16 novembre '14 a 00:02

Sì, è ancora pericoloso

Un token CSRF dovrebbe essere un segno di fresco generato per ogni volta che si genera un modulo. Ha bisogno di essere unico e imprevedibile per ogni richiesta. Un token di sessione impostata da login è unico solo per l'intera sessione registrato.

E se non si registra il token generato per controllare, in cui si fa a controllare che? È abbinare il token di sessione con. Il motivo per cui è perché si può ancora dare alla gente la possibilità di fare una richiesta di contraffazione, se il token non viene inviato con la richiesta in sé, ma tutti i controlli vengono effettuati per sessione / cookie. Se si seleziona solo la sessione non fa nulla contro CSRF. Ha bisogno di essere inviato nella richiesta stessa e controllato se corrisponde la sessione. Quando si genera un token univoco per ogni richiesta, i cattivi non possono forgiare richiesta di qualcuno.

Protezione drupal CSRF di hosting browser per

risposto 15 novembre '14 alle 23:55

Guarda questo video!

Articoli Correlati

Drupal hosting con SSLHTTPS è un protocollo che cripta le richieste HTTP e le loro risposte. Questo assicura che se qualcuno fosse in grado di compromettere la rete tra il computer e il server si richiede ...
Aegir servizi di Hosting DrupalPicking Drupal hosting può essere un compito arduo se non siete sicuri di ciò che è a vostra disposizione. In alcuni casi, si potrebbe andare bene con qualcosa di simile a un ambiente di hosting condiviso che Hostgator o ...
Modifica tabella di prefisso Hosting DrupalHo un sito Drupal 7 in esecuzione su un server web, si sta utilizzando un database che è stato creato con un prefisso. Sto tentando di ripristinare tale database a una nuova istanza di Drupal da un ...
Miglior hosting di temi di DrupalChe cosa è Drupal? Drupal è una piattaforma di gestione dei contenuti open source che può essere scaricato e utilizzato gratuitamente. È costituito da un nucleo centrale di file che sono di serie su tutte le installazioni, ...
Combell Hosting Drupal ukDrupal facile Se avete deciso che questo è il sistema di gestione dei contenuti che si desidera utilizzare per creare il tuo sito, perché non utilizzare anche il proprio indirizzo web perfetta con esso? Ottenere il vostro sito web ...