Système anti-spam (captcha) avec des mots

WRInaute occasionnel
Bonjour à tous,

J'ai programmé un système anti spam pour protéger un formulaire sur mon site. Vous pouvez le voir ici.

Comme vous pouvez le voir, j'ai fais en sorte de mettre des mots simples et compréhensibles.
Mais voilà que se pose un problème : un robot spammeur à maintenant une chance sur ... pour trouver le bon mot, par exemple en essayant sans arrêt le même mot jusqu'à temps qui tombe...

Donc vaut-t'il pas mieux mettre des combinaisons aléatoires ?
Avez-vous une solution ?

Merci d'avance.
 
WRInaute passionné
Oui, utilise un mot aléatoire, même si le robot n'as peux de change de le trouver, et prend un autre mot ! Comme anticonstitutionnelement (plus grand mots de la langue fr)
 
WRInaute occasionnel
J'utilise un mot aléatoire à chaque fois... mais le problème, c'est que si le gars qui a programmé le robot indique d'essayer le mot "internet" par exemple, car je l'utilise, jusqu'à tant que ça fonctionne... ça peut durer un certain temps, et me prendre beaucoup de bande passante...
 
WRInaute impliqué
Un controle sur IP ça vaut mieux je trouve. D'ailleur j'ai adopté cette solution dans la même situation que toi.

Plus de deux posts dans un laps de temps, et tu bloques.
 
WRInaute discret
Quelques remarques :

-un petit programme d'OCR (et ça commence à apparaitre) lira très facilement ton mot, il est en noir, avec les lettres bien séparée et une police classique.

-au lieu d'embêter les utilisateurs (c'est casse pieds les captcha) essaye de trouver un truc plus simple pour virer les bots/spam. Quelques méthodes :

*les bots ont tendances à utiliser comme pseudo/mail une adresse aléatoire avec ton ndd comme fin d'adresse, donc bloquer ce type de pseudo.
*filtrer sur quelques mots anglais (par exemple) ou sur des expressions non classique/mots choisis.
*virer les connexions trop proches sur les formulaires, au ceux qui attaquent directement les formulaires.
*une autre méthode qui marche assez bien : mettre un bouton radio non-coché invisble aux utilisateurs. Le bot va le cocher automatiquement (souvent) et apres tu supprimes si ce bouton est coché.
*bloquer les IP au fur et à mesure

Le seul problème de ce genre de méthode, c'est que tu dois te renouveler de temps en temps.
 
WRInaute impliqué
J'ai eu pas mal de spam dans mes formulaires et j'ai retrouvé des emails avec mon nom de domaine.

Tu penses que c'est dû à un bot, Dandu ? Parce que j'aime bien l'idée du bouton radio coché. Mais d'ailleurs pourquoi le robot va-t'il le cocher forcément ?
 
WRInaute occasionnel
Oui, c'est ce que je pensais faire.

Sinon pour la police, c'est pas grave ça se change :)
 
WRInaute discret
jai vu un truc sympa sur le net anti-spam....
tu met 3 images (ou plus) ki on un ordre (chronologique ou otre)... du genre pyramide, versaille, tour effel....
tan ke les images ne sont pa clicker dans lodre chronologique de leur construction...alors le boutton denvoi n'est pa clickable (disable)....tout ca en javascript...
 
WRInaute passionné
Tu as aussi la possibilité de poser une question à la con....

Quel est la couleur du cheval blanc d'henry IV?

Et tu contrôles la réponse.


Le controle d'ip + captcha est quand meme pas mal à mon avis
 
WRInaute discret
psychoreflex a dit:
J'ai eu pas mal de spam dans mes formulaires et j'ai retrouvé des emails avec mon nom de domaine.

Tu penses que c'est dû à un bot, Dandu ? Parce que j'aime bien l'idée du bouton radio coché. Mais d'ailleurs pourquoi le robot va-t'il le cocher forcément ?

Oui, c'est des bots les spams formulaire avec to nom de domaine en e-mail. C'est assez simple à bloquer, d'ailleurs.

les trucs coché, c'est une constatation, les bots ont tendances à remlir tous les paramètres, et donc de cocher les boutons automatiquement.
 
WRInaute impliqué
Ok
Je vais appliquer ton idée de bouton à cocher en hidden alors. J'avais déjà lu un truc comme ça je crois, ça confirme.

Quand tu dis que c'est assez simple à bloquer, tu penses justement à cette soluce ou à autre chose encore ?
 
WRInaute impliqué
Un truc simple, dîtes moi si c'est bon :

On affiche simplement une série de lettre au hasard, et on demande au visiteur de les recopier dans l'ordre inverse.

C'est vachement léger ok, mais est-ce que c'est tout de même complètement bidon ?
 
WRInaute accro
Le système de l'inversion est un classique.
Si le robot peut lire le mot, il peut être programmé pour tester son inversion et toutes les permutations.
Mais c'est une bonne idée ... tout dépendra de la qualité du robot spammeur :)
 
WRInaute accro
J'avais fais un système comme celui-ci.

Il est également possible de mettre certain éléments supplémentaires aléatoirement, comme par exemple recopier tout dans l'ordre inverse sauf le premier caractère (ou le dernier, etc..).

Mettre certains caractères d'une couleur et d'autres d'une autre couleur et ne demander que ceux de la couleur souhaité, etc...

Il y a beaucoup de possibilités...


Pour l'accèssibilité, il faut bien entendu exclure les couleurs.
 
WRInaute impliqué
Il est également possible de mettre certain éléments supplémentaires aléatoirement, comme par exemple recopier tout dans l'ordre inverse sauf le premier caractère (ou le dernier, etc..).

Pas mal le coup de la première lettre en moins. En farfouillant un peu on doit pouvoir trouver plus amusant encore.

Mais n'est-ce point rébarbatif pour le visiteur qui remplie le formulaire ? Remarquez cela ne m'a jamais empêché de m'inscrire quelque part mais bon. Et les aveugles ? D'ailleurs, est-ce que ceux-ci s'inscrivent en général, sur les forums ?
 
WRInaute discret
Oui, enfin pour l'accessabilité, il faut virer les captcha.

Dans le genre innacessibles...

-On surfe sans image, ça marche pas
-On voit mal, ou pas, ça marche pas
-Dans l'absolu, quand on essaye de faire un truc efficace, ça devient illisible. Si on fait du simple, un bot évolué peut le lire.

Les systèmes autres que retaper les lettres/chiffres, genre mettre dns l'ordre, ou trouver l'intrus, c'est très lourd pour pas mal de gens : les étrangers comprennent pas nécessairement (si langue pas compries) et c'est lourd de lire et d'essayer de comprendre le but (pas nécessairement clair).

Mais évidemment, je me rends bien compte que pour le moment, c'est une des solutions les plus efficaces, à défaut d'être pratique.

N'empêche que en analysant un peu ce qu'un bot fait, et en filtrant sur le contenu, la majorité des Spams sont virés. Par contre, ça demande plus de boulot, parce que les bots évoluent.
 
WRInaute discret
J'ai répondu.

Faut pas mettre un champ de type "hidden", faut le cacher par css. Les bots n'analysent pas les css en général.


Pour la protection, j'ai eu que 3 type de spam par bot sur mes sites :

Spam de commentaires, mais le bot s'enregistrait avec comme pseudo ou mail "xxx@monndd", donc facile à bloquer (sur 4 sites différents).

Spam de formulaire de contact pour envoyer un mail en injection de header, et utiliser le script comme relais. facile à bloquer en virant certains caractères des messages (les \n par exemple)

Spam tout con de visites avec un referer de pub, en espérant que ce soit ptis comme trackback (plus maintenant). La, je filtrais à la main.
 
Discussions similaires
Réponses
3
Affichages
3K
mathieukassovitz
M
Haut