Spina prova il math antispam con generazione random del codice
Per esempio prova qui
http://www.dabliutri.net/2005/10/24/chi ... di-google/
Moderatore: Staff

achenaz ha scritto:...
Ma come dicevamo prima, l'importante è non essere presi di mira...
<em>Quale animale è contenuto nella parola <strong>granaio</strong>?</em>
<input type="hidden" name="antispam" id="antispam" value="8" /><em>Quale animale è contenuto nella parola <strong>granaio</strong>?
".
conraid ha scritto:Spina prova il math antispam con generazione random del codice
Per esempio prova qui
http://www.dabliutri.net/2005/10/24/chi ... di-google/

spina ha scritto:conraid ha scritto:Spina prova il math antispam con generazione random del codice
Per esempio prova qui
http://www.dabliutri.net/2005/10/24/chi ... di-google/
Questo me lo devi spiegare, non ho provato, ma se è come penso io allora potrebbe esserci un errore di fondo. Che vuol dire con generazione random della chiave? Vuoi dire che cambi dinamicamente l'insieme delle risposte? Cioè, alla domanda "due+nove" la risposta, che tu dai in chiave hash, cambia di volta in volta? Cioè, se io apro il form ora e trovo la domanda:"due+nove" ho nel campo nascosco la risposta "5867s" ad esempio, se la faccio dopo, allora non ho più "5867s" ma un altra? E, soprattutto "5867s" non funziona più?
Spina






spina ha scritto:Anche se con questo tipo di protezione dovrebbe essere impossibile ricevere spam, l'errore di fondo che potresti aver commesso (e quando dico potresti, intendo dire che chi ha progettato il plugin potrebbe non aver considerato che tu lo usi così), è la concorrenza. Se dieci persone aprono il tuo form contemporaneamente allora l'insieme delle risposte è per tutti lo stesso. Se poi uno di loro esegue una risposta, allora l'insieme delle risposte è cambiato e i rimanenti nove form portano con loro una risposta sbagliata.
L'idea è carina, ma andrebbe implementata, e non so se chi ha scritto il plugin ha previsto conraid e i suoi colpi di genio
Spina


. Anche perchè la soluzione ottimale, come abbiamo visto non c'è...o, almeno per me, difficile da implementare, visto che non so come creare un immagine al volo con PHP. L'uso della sessione rende più difficile il compito ad un soggetto malizioso che ti ha preso di mira, ma l'antispam(-bot) va più che bene per i nostri sitini
. Però se non altro ci siamo fatti una bella chiaccherata ed abbiamo capito qualche cosa in più.
(no more coffee),
spina ha scritto:Bhé caro conraid, come in tutte le cose io penso che l'importante sia la consapevolezza. Io parlo parlo ma alla fine nel sito che gestisco metterò davvero:"inserisci 12". Anche perchè la soluzione ottimale, come abbiamo visto non c'è...o, almeno per me, difficile da implementare, visto che non so come creare un immagine al volo con PHP. L'uso della sessione rende più difficile il compito ad un soggetto malizioso che ti ha preso di mira, ma l'antispam(-bot) va più che bene per i nostri sitini
. Però se non altro ci siamo fatti una bella chiaccherata ed abbiamo capito qualche cosa in più.
Notte(no more coffee),
Spina





spina ha scritto:...Quello che puoi fare con i cookie, è non far sapere a me utente l'elemento dell'insieme domanda. Cioé, visto che non hai una sessione, sei costretto ad inserire:ovvero domanda: 'antispam=8', risposta:'rana'. Se avessi uno stato, tu potresti semplicemente avere un codice sorgente di questo tipo:
- Codice: Seleziona tutto
<em>Quale animale è contenuto nella parola <strong>granaio</strong>?</em>
<input type="hidden" name="antispam" id="antispam" value="8" />ovvero solo la risposta:"rana". Questo perchè lo script controllore può sapere qual'è la domanda, non c'è bisogno che glielo dica il form.
- Codice: Seleziona tutto
<em>Quale animale è contenuto nella parola <strong>granaio</strong>?
E' vero che io conosco un elemento dell'insieme risposte, nel senso che io so che esiste una domanda nel tuo database la cui risposta è "rana", però non conosco a priori qual'è la domanda che mi hai fatto, quindi posso anche tentare mandando al controllore sempre "rana", ma se il tuo database è vasto è la funzione che preleva le domande è una buona funione random, allora io ti manderò un messaggio corretto su tantissimi. Questo implica, sempre nell'ottica dell'uso della sessione, che tu puoi anche bannarmi dopo un tot di tentativi falliti.
La mia domanda alla fine è:"perchè usate i cookie dopo, e non li usate quando servono?" Molto probabilmente la rosposta è:"perchè io uso una cosa che non ho implementato io".
Io uso solo codice che ho scritto io carattere per carattere.
L'uso dei cookie diminuisce l'accessibilità, evidentemente, ma è anche vero che al giorno d'oggi tutti i browser possono accettare i cookie, e tutti i browser sono impostati di default ad accettare i cookie.
).
aschenaz ha scritto:...Comunque sia, ho fatto delle modifiche ed ho raddoppiato
la sicurezza. Prova ora: http://aschenaz.netsons.org/contatti


Ciao, quando torno a casa, se mi ricordo, ti spiego perchè non ho provatoaschenaz ha scritto:...@ spina: Fammi sapere se hai provato...
.
.
spina ha scritto:Quello che volevo spiegare, è che sotto queste condizioni, il non uso della sessione rende il nostro scopo impossibile. Ricordiamo che la sessione non implica per forza l'uso dei cookie, si potrebbe implementare la sessione anche attraverso il passaggio di una variabile 'sessione' come campo hidden di un form. Per sessione intendo dire che nel server c'è una sorta di 'stato' che caratterizza il client, ovvero, il server è a conoscenza della domanda che ha fatto al client, sia nella pagina del form, sia in quella in cui controlla la risposta.
Perchè è impossibile fermare questo tipo di attacco senza l'uso della sessione? Semplice, perchè se il server, nella pagina in cui controlla la risposta del client, non è a conoscenza della domanda che gli ha fatto, allora se la deve far dire dal client.


Visitano il forum: Nessuno e 3 ospiti