Lavoro per un'azienda che ha un negozio online e dobbiamo costantemente confrontarci con molte recensioni di prodotti spam e account cliente fasulli. Questi sono tutti creati da sistemi automatici e sono più di una seccatura che altro.
Quello che sto pensando (al posto di captcha, che può essere rotto) sta aggiungendo una sorta di soluzione chiave per moduli a tutte le forme pertinenti. So per certo che alcuni spammer usano XRumer e so che raramente richiedono una pagina prima di inviarci i dati del modulo (è questa la definizione di CSRF?), Quindi penserei che legare una chiave a ogni modulo richiesto sia almeno arginare la marea. So anche che gli spammer sono pigri e non controllano il loro lavoro, altrimenti vedrebbero che non abbiamo mai pubblicato una recensione di spam e non hanno mai ottenuto entrate dal nostro sito.
Riuscirebbe a ridurre significativamente il volume delle recensioni dei prodotti di spam e delle creazioni degli account dei clienti che stiamo vedendo?
EDIT: per chiarire cosa intendo per "Form Keys": Mi riferisco alla creazione di un identificatore univoco (o "chiave") che verrà utilizzato come un campo di forma statica invisibile. Questa chiave verrà inoltre memorizzata nel database (relativamente alla sessione utente) o in una variabile cookie. Quando il target del modulo riceve una richiesta, la chiave deve essere convalidata affinché i dati del modulo vengano elaborati. Quei robot fastidiosi non avranno la chiave perché non caricano il javascript che genera il modulo (inviano solo una richiesta cieca al target) e anche se hanno caricato il javascript una volta, avranno solo una chiave valida e non sono sicuro che utilizzino anche i cookie.