script anti-spam

XenonDelee

WRInaute impliqué
Bonjour à tous,

J'ai mis au point un script entièrement en javascript pour éviter que les robots ne spam les adresses emails :

j'avais cherché sur Google et je n'avais trouvé que des trucs couplés javascript / php ... ( et donc utilisant les ressources serveur )

alors voilà , si ça vous intéresse :


pour la partie javascript à placer dans l'en tête ( <head> )
Code:
<script>
function ecrire(){

// découpage de l'adresse
adresse="#nom##";
adresse=adresse.replace(/#/,'mailto:',adresse);
adresse=adresse.replace(/#/,'@',adresse);
adresse=adresse.replace(/#/,'orange.fr',adresse);

// modification du lien bidon -> mailto:nom@orange.fr
document.getElementById('lelien').setAttribute('href',adresse);
}
</script>
et le lien à placer dans le document ( <body> )

Code:
<a href="lien bidon" id='lelien' onClick="ecrire();">pour m'écrire</a>

Je ne sais pas si j'ai beaucoup fait avancer le smilblick ...

A+
 

Koxin-L

WRInaute passionné
Le pb, ce sont les visiteur sans javascript.

Mais c'est toujours interessant de le rappeler à ceux qui haient les formulaires.
 

beal2912

WRInaute discret
Il existe une nouvelle méthode anti-spam pour les formulaires que j'ai décrite sur mon blog :-http://blog2.webdesign-tutoriaux.com/bordel/nouvelle-technique-anti-spam/

Et qui est totalement transparente pour l'utilisateur, Un certain nombre de site la test en ce moment et les résultats sont a priori plutôt positifs.

edit : après avoir relu ton post et surtout ton code... la méthode ne s'applique pas trop à toi puisque effectivement elle utilise des formulaires et donc des ressource php. désolé...
 

UsagiYojimbo

WRInaute accro
Sinon y'a une technique simple qui marche bien en general : rajouter un champ hidden vide dans le formulaire, et s'il est rempli lors du post du formulaire, stopper le script (un champ hidden vide, a part un bot y'a pas grand monde susceptible de le remplir).

On peut même pousser le vice et donner a ce champ hidden un nom qui va attirer le bot (genre email, message, etc).
 

beal2912

WRInaute discret
mahefarivony a dit:
quel rapport entre l'anti-spam de formulaire et l'anti-aspiration d'email ?

J'ai mis au point un script entièrement en javascript pour éviter que les robots ne spam les adresses emails :

j'avais cherché sur Google et je n'avais trouvé que des trucs couplés javascript / php ... ( et donc utilisant les ressources serveur )

Je me fais spamer mon adresse mail via mon formulaire de contact, je pensais au début (sans avoir le code du script) que c'était aussi son problème voilà...
 

XenonDelee

WRInaute impliqué
Merci à tous de vos réponses !

Il s'agit en effet d'une technique qui s'applique quand on ne veux pas utiliser de formulaire ...

( genre je suis fainéant et j'ai pas envie de me casser à créer un formulaire :lol: )

le reste du temps le php est largement capable de masquer les adresses Email !

A+

ps : UsagiYojimbo, amusant ta technique :p
 

UsagiYojimbo

WRInaute accro
XenonDelee a dit:
ps : UsagiYojimbo, amusant ta technique :p

Oui et très efficace. On a mis ça sur un site dont je suis modo et qui permet aux gens, sans être enregistré, de poster des avis sur des livres.

Résultat : plus aucun spam depuis (bien sûr on monitore ce qui est ecarté au cas où mais pas de souci à relever jusque-là).

Mais par contre en relisant le post je viens de me rendre compte que je suis un peu hors-sujet vu qu'a priori tu parles plus de méthodes pour empêcher les robots de spam de récupérer les email dans le html.
 

medium69

WRInaute passionné
Moi, j'ai plus de spam à partir de mon formulaire de contact ;)

j'attend certains terme de politesse ; si ils n'y sont pas, pas d'envoi ^^
 

DadouDuck

WRInaute impliqué
Les solutions que vous avez mis en place ne sont pas vraiment des solutions fiables : Pour la plupart elles permettent bien de bloquer les spammeurs, mais en général, elle bloque aussi un certain nombre de contacts réels.

Par exemple :
- Encrypter via javascript, oui, mais si mon navigateur est réglé en sécurité haute, je fais quoi???
- Cacher un champ (par css ou autre technique) : si j'utilise un logiciel de revue d'écran parce que j'ai des difficultés à lire ce qu'il y a ce l'écran (mal voyants, non-voyants...), le champs est quand même annoncé, puisque pour la plupart de ces logiciels la propriété display: none n'est pas interprété (de même que de vouloir sortir le champs avec une marge négative.
- Ajax : Cf mon premier exemple.
- Une image captcha : certains système de spam "lisent" mieux les images antispam que les humains, et toujours le problème des mal et non voyants.

Mais alors que faire? Actuellement, le système le plus fiable c'est de poser une question simple, qu'un être humain est à même de répondre, par exemple : quel est le cinquième mot de cette phrase? normalement vous devez répondre mot. Mais je crois que c'est une solution temporaire, tout comme les images captcha, les spammeurs vont mettre au point des algos d'intelligence artificielle afin de s'aider de google pour répondre.[/list]
 

djyb

Nouveau WRInaute
je pense que DadouDuck nous expose une réponse très geek :)

Je constate que les navigateurs qui n'utilisent pas javascript ou les utilisateurs qui utilisent l'option haute sécurité ne font pas légion et que celui qui n'utilise pas javascript actuellement ne pourront pas visiter correctement la moitié du web.

Javascript et Ajax règlent totalement le problème comme le prouve les résultats.

Encore, les captcha comme tu viens de citer sont une des meilleurs solutions actelles, mais il m'est dèja arrivé sur mon site que des spammeurs outrepassent cette étape alors que pour mon mail avec ajax jamais.

Faut reconsidérer tes points :)
 

DadouDuck

WRInaute impliqué
Non pas geek, mais ayant dans mon entourage des personnes travaillant avec des non-voyants, je t'assure que le javascript pose un réel problème pour les lecteurs d'écrans, tu remarqueras d'ailleurs que j'ai basé mon intervention essentiellement sur l'aspect des non-voyants.

Certes la majorité des sites leurs sont inaccessibles mais est ce pour autant bien de ne pas choisir une solution qui leur conviendrait plus.

Ensuite les utilisateurs qui sont en sécurité haute, il y en a beaucoup dans les gros groupes, et ou l'utilisateur ne peut repasser en sécurité moyen sans le concours de leur administrateur réseau. je ne sais combien de fois ais je entendu des clients me dire que certains de leurs contacts ne pouvaient valider leur formulaire, mais c'est suffisamment pour moi pour ne plus faire de la validation intrusive, hors c'est le cas avec ajax, donc en fin de compte, pour ta tranquillité, tu passes à coté de contact, mais parfois suivant le site, perdre un contact, c'est perdre un client (et donc de l'argent)
 

djyb

Nouveau WRInaute
Pour les non voyants t'as raison !

Mais dans ce cas il existe des captcha avec le son intégré qui te lit le code en streaming.

Si le visiteur ne peux pas voir le code il pourra l'écouter.

Avec un site étudié pour le grand public, il faut un code valid pour le lecteur de page web et des alternatives pour ce qui est de la sécurité.

Tout est possible si on veut bien faire.

Et je pense qu'en milieu professionnel, les potentiels clients et qui cherchent des contacts aura sous la main un navigateur sous sécurité moyenne et ne seront liées qu'a une dmz et pas aux serveurs d'une boite pour que cela ne constitue pas un obstacle ni à la sécurité de la boite ni aux commerciaux ou personnes qui veulent avoir accès aux informations qu'ils désirent.
 

DadouDuck

WRInaute impliqué
Oui, il existe des capcha avec le son intégré, mais si je vais au bout des choses : imagine, je suis mal-voyant, et mal-entendant, c'est rare, je te l'accorde mais cela existe, la solution va être valable pour un certain nombre de cas, elle réduira en effet le nombre de clients potentiels qui ne pourraient pas nous contacter, mais n'éliminerais pas autant le problème d'accessibilité.

Aujourd'hui, il n'existe AUCUN système anti-spam qui respecte toutes les règles d'accessibilité.

Par contre en milieu professionnel, je peux t'affirmer que tu te trompe, pour avoir côtoyer de gros groupe, les services informatiques ne baissent que très rarement les niveaux de sécurité (surtout pour internet), et leur mentalité, c'est plutôt, si cela ne marche pas avec ce prestataire, allez sur un autre.
 

Bool

WRInaute passionné
Mais alors que faire? Actuellement, le système le plus fiable c'est de poser une question simple, qu'un être humain est à même de répondre, par exemple : quel est le cinquième mot de cette phrase? normalement vous devez répondre mot. Mais je crois que c'est une solution temporaire, tout comme les images captcha, les spammeurs vont mettre au point des algos d'intelligence artificielle afin de s'aider de google pour répondre.

Quoi que, pour le coup c'est de la discrimination envers les blondes ; bien que pour un forum cela puisse fortement réduire la charge de modération, je pense qu'il faut y aller molo sur ce type d'approche. ;)

La solution du champ de type hidden (un vrai champ hidden, pas de visibility:hidden ou display:none) me semble la moins contraignante : certains robots passeront évidement au travers, mais ça élimine déjà pas mal de bots sans risquer de bloquer le moindre vrai client.

Dans la même optique, quid du disabled="disabled" ?

PS : sinon ce n'est qu'un avis perso, mais les formulaires "captcha" je trouve que ça em***de bien plus l'internaute que le bot. Moi même j'ai tendance à faire demi tour quand je suis confronté à ces cochonneries : je suis sûrement polio, mais je me plante 2 fois sur 3 face à un captcha.
 

DadouDuck

WRInaute impliqué
Aaah les blondes :)

Bien sûr qu'il faut y aller mollo sur les questions, moi même ayant déjà été confronté à un question dont je ne connaissait pas la réponse, et j'avais du utiliser Google pour répondre. Le choix de questions simple et primordial et surtout ne doit pas dépendre de culture générale.

Quand aux solutions de type hidden, visibility:hidden, display:none... sont des systèmes de programmatique, il est très simple d'ajouter aux algos des bots spammeurs les tests nécessaires pour les repérer.

Les seuls systèmes antispam fiables sont ceux qui reposent sur un contenu non perceptible par le robot. Un contenu "programmatique" est par définition perceptible...

Malheureusement les solutions les plus efficaces, gènent le visiteur, et les solutions comme les captcha images sont devenue perceptibles par les bot (système de reconnaissance de texte).

Une solution fiable mais contraignante : l'usage d'un système de confirmation par email avec validation e-mail: ça énerve un peu l'utilisateur qui doit renvoyer une deuxième fois son mail, mais au moins on est sûr qu'il s'agit d'un être humain puisque les robots sont trop bêtes pour fournir une adresse d'expéditeur valide.

Pour alléger le dispositif, il faudrait créer un organisme certificateur via la norme OpenID (est un système d’authentification décentralisé qui permet l’authentification unique, ainsi que le partage d’attributs. Il permet à un utilisateur de s’authentifier auprès de plusieurs sites (devant prendre en charge cette technologie) sans avoir à retenir un identifiant pour chacun d’eux mais en utilisant à chaque fois un unique identifiant OpenID), et ne valider les formulaires que de personnes utilisant l'OpenID.
 

Bool

WRInaute passionné
Note : les bots spameurs de forum phpBB arrivent très bien à activer leurs comptes via le lien reçu par email ;)
 

DadouDuck

WRInaute impliqué
Des bots réalisés spécifiquement pour spammer phpbb, mais c'est vrai, la confirmation par email est un système programmatique, donc facilement contournable
 

Discussions similaires

Haut