SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Interactivité, communication > Protections antispams > Antispam

Plugin antispam

générique et personalisable

dimanche 22 octobre 2006, par tibo. Dernier ajout mardi 24 octobre 2006


Ce plugin remplacera automatiquement toute occurence de mail par un texte au fomat configurable.

Voir en ligne : La région du Salentin utilise ce plugin

Ce plugin permet de :
- Crypter les adresses e-mail du site
- Configurer la façon dont sont cryptées les adresses
- Conserver la fonction clic sur l’e-mail grâce à une fonction JavaScript également personnalisable


Installation du plugin antispam

  1. Placez le plugin, après l’avoir récupéré ci-dessous , dans un dossier nommé plugins à la racine de votre site SPIP.
  2. Allez dans l’espace privée du site : Configuration / Gestion des plugins en tapant l’url suivante :
    http://www.mondomaine.net/ecrire/?e...
  3. Cochez le plugin Antispam et validez

Vérifiez que vos squelettes possèdent bien la balise #INSERT_HEAD [1] dans la section HEAD de votre code. Ceci est nécessaire pour pouvoir inclure le code JavaScript de ce plugin. Plus de détail sur la doc officielle

Configuration du plugin

Les étapes précédantes ont pour effet de faire apparaître un nouvel onglet dans Configuration, avec une petite icone bleue :

C’est cette page qui permet de configurer le fonctionnement du plugin.

Vous pouvez d’une part configurer le cryptage du texte et d’autre part de l’action (via la fonction javascript) . 2texte2

Pour le texte, vous pouvez choisir un cryptage en image ou en texte.

  • image
    • Taille de la police utilisée
  • texte
    • textes de remplacement pour le . et le @ (par exemple ’point’ et ’chez’)
    • taille des textes aléatoire
    • Nous obtiendrons ainsi des adresses du type moimeme chez mondomaine point net ou moimeme zGfrt mondomaine pAshEz net.

2fonction javascript2

Vous pouvez choisir ou non d’activer cette fonction.
- Si elle est désactivée, les adresses ne seront tout simplement pas cliquable.
- En cas d’activation, vous devez fournir le nom de la fonction javascript automatiquement crée par ce plugin

Utilisation du plugin

Une fois le plugin configuré, il ne reste plus qu’à ce rendre sur une page (publique ou privée) contenant une adresse e-mail.

Un clic sur l’adresse nous ouvrira [2] notre logiciel de messagerie préféré avec l’adresse non-cryptée de notre corespondant.

Fonctionnement du plugin

Le principe de fonctionnement du plugin est assez simple. Tout d’abord on repère les mails ayant la forme générale mailto:moimeme@mondomaine.net on en extrait le moimeme, mondomaine et net, puis on le récrit en moimeme chez mondomaine point net ou moimeme zGfrt mondomaine pAshEz net .

La fonction JavaSript, elle, utilise une autre logique. Elle assemble les éléments dans un autre ordre ce qui donerait moimemenetmondomaine et ajoute en début de chaîne le nombre de caractères de chaque élément, pour un résultat final équivalent à 070310moimemenetmondomaine

Limitation du plugin

Bien que performant, ce plugin n’est pas infaillible. Un Hacker désirant s’approprier tous les e-mail de votre site pourrait assez facilement déterminer le principe d’encodage des e-mail de votre site et développer une application sur mesure. Il pourrait même le faire pour décrypter le système d’antispam [3] de spip.

Le plugin dans sa version actuelle ne crypte pas les e-mail dans les forums. Les squelettes de la distribution de spip 1.9, n’affichent d’ailleurs pas l’adresse e-mail des rédacteurs de messages. Si vos squelettes de forum affichent les adresses e-mail, il vous faudra les retoucher ou attendre la version 0.5 du plugin.

2Alors pourquoi ce plugin ?2

Les Hackers ont autre chose à faire que de développer une application pour récupérer une centaine d’adresses [4]. Ils préfèrent développer des applications génériques qu’ils peuvent lancer sur tout l’Internet.

Pour tester la robustesse du plugin je vous suggère de vous rendre sur aspirine et d’y indiquer soit l’adresse de votre site soit l’adresse http://www.salentin.ch/spip.php?rub... qui correspond à un article de mon site [5]

L’aute raison est que ayant utilisé et modifié la contrib :
Nouveaux raccourcis typographiques et antispam générique, je voulais en faire un plugin pour spip 1.9.1. Cela m’a permis de me familiariser avec la conception de plugin.

Amélioration du plugin

La version actuelle est une version de développement. Elle tourne parfaitement chez moi, mais j’attends de recevoir vos remarques, bugs et autres pour la passer en stable. Je l’ai volontairement réduite au minimum afin de pouvoir l’améliorer en fonctions de vos besoins.

Je vous liste néanmoins les améliorations auxquelles j’avais [6] pensé :
- Génération de textes aléatoires pour le remplacement du . et du @
- Remplacement du . et du @ par des images
- Ajout de caractères aléatoires entre les éléments de l’adresse codée pour la fonction JavaScript
- Utilisation d’un groupe de mots clés pour le nom de la fonction avec changement automatique du mot utilisé tous les jours
- Masquage complet de l’adresse mais possibilité d’écrire un message personnel (comme pour un auteur)

Cette dernière possibilité serait l’antispam absolu car il n’y aurait plus aucune possibilité via l’interface publique de connaître l’adresse du destinataire.

2Roadmap2 Voici une petite RoadMap provisoire des différentes versions déjà réalisées et des améliorations futures :

versionFonctionnalités
0.2 images pour . et @
0.22 textes aléatoires pour . et @ (version actuelle)
0.3 Ajout de filtres pour le cryptage d’éléments spécifiques dans les squelettes
0.4 Ajout de caractères aléatoires dans la fonction js
0.5 Cryptage des e-mails dans les forums
0.6 Changement automatique du nom de la fonction js
0.7 Masquage complet de l’adresse

Je n’y arriverais certainement pas tout seul, mais SPIP à la chance d’avoir une communauté plus que réactive ;)

Documents joints

  • Plugin antispam (v 0.1) Plugin antispam (v 0.1) (Zip - 29.5 ko)

    - Nom de la fonction js personnalisé
    - Remplace . et @ par du texte

  • Plugin antispam (v 0.22) Plugin antispam (v 0.22) (Zip - 31.4 ko)

    - Possibilité de désactiver la fonction js
    - Création d’images typographiques
    - Remplace . et @ par du texte aléatoire

  • Plugin antispam (v 0.23) Plugin antispam (v 0.23) (Zip - 30.8 ko)

    Corrige le bug des Headers déjà envoyés

Notes

[1] Les squelettes de la distribution possèdent cette balise

[2] si la fonction javascript a été activée

[3] via le filtre antispam

[4] voire un peu plus

[5] réalisé sous SPIP et utilisant le plugin antispam

[6] ainsi que d’autres


Répondre à cet article

  • Plugin antispam

    12 septembre 2007 12:57, par Marc VALLETEAU de MOULLIAC

    Bonjour,

    après installation de la version la plus récente du plugin sur une 192b[10065], et effectué les opérations exposées, j’ai du mal capter quelque chose, car il ne se passe rien après avoir activé le plugin (choisi image et activation javascript) ... J’ai essayé sur Safari (Mac) 2, et sous Firefox (Mac aussi), et rien ...

    D’ailleurs, même en allant sur le site d’exemple (qui s’affiche (texte et images non visibles) très mal sous Safari 2), je n’ai pu trouver un exemple valide ...

    Peut-être ce plugin ne fonctionne-t-il que sous spip 191 ?

    Ce serait dommage, car il pourrait être très utile pour "simplement" éviter les spam ...

    A+

    Marc

    Répondre à ce message

    • Plugin antispam 19 septembre 2007 15:09, par mp

      bonjour

      pour te repondre : je viens d installer ce plugin sur une v192b et ça marche ( j ai configuré pour le remplacement de la chaine de caractere : @ = chez et . par point)

      dans espace prive, en mofication de ton article , ecrire : mailto:moi@domaine.fr

      je suis sous IE7 et ça fonctionne

      faut que je teste sur mozilla et IE6

      je n ai rien constaté d anormal par ailleurs sur mon interface privée ( je n utilise pas encore le multilinguisme)

      voila

      j espere que ça pourra aider

      mpaule

      Répondre à ce message

    Retour au début des forums

  • Plugin antispam : efface des éléments de menu

    25 avril 2007 09:17, par Sylvain

    Bonjour,

    avec SPIP 1.9.2a [8878] et la version 0.23 du Plugin antispam, j’ai constaté que cela effaçait certains éléments de navigation dans l’interface de rédaction, ce que j’appellerais les onglets dans les pages de configuration de SPIP :

    • dans : Configuration > Gestion des langues
      « Sauvegarder/restaurer la base » et « Effacer la base »
    • ainsi que dans : Configuration > Maintenance du site
      « Langue principale du site » et « Multilinguisme » et « Fichiers de langue »

    en gros quand je veux accéder à ces menus je dois désactiver le Plugin antispam

    sinon ce plugin est superbement efficace et bien fichu :-)

    Répondre à ce message

    Retour au début des forums

  • Plugin antispam

    27 novembre 2006 11:29, par Ziala

    Bonjour,

    intéressant ce plugin, mais pour ma part les spams n’arrivent pas sur les emails des commentaires, mais directement dans les commentaires des articles ! Les forums sont pris d’assaut par les spams, je ne peux même plus les supprimer à la main tellement il y en a. Je les supprime directement dans la base de données.

    Je suis donc à la recherche d’un anti-spam pour les forums de SPIP, un anti-spam qui bloque les messages à caractères "médicaux" des robots anglophones (comme d’hab...). Est-ce que quelqu’un a une piste à ce sujet ? Je ne trouve rien sur le net.

    Merci

    Ziala

    Répondre à ce message

    • Plugin antispam 6 décembre 2006 17:40, par Flo

      La version 1.9 de Spip propose un anti-spam que j’ai recopié dans ma version 1.8 (je n’ai pas encore migré). Il suffit de modifier le squelette formulaires/formulaire_forum.html en ajoutant un champ invisible à l’écran mais visible par les robots (donc piège à robot)

      [(#REM) Piege a robots spammeurs ]
              <p style='display:none;'><label for="nobot">Veuillez laisser ce champ vide&nbsp;:</label>
              <input type="text" name="nobot" value="[(#ENV*{nobot})]" size="10" /></p>

      et modifier le fichier spip qui traite les messages inc-messforum.php3, juste avant la ligne

              // Entrer le message dans la base

      ajouter :

              // ajout d'une nouveauté de la 1.9 bien utile : Antispam : si 'nobot' a ete renseigne, ca ne peut etre qu'un bot
              if (strlen(_request('nobot'))) {
                      return $retour_forum; # echec silencieux du POST
              }

      Répondre à ce message

      • Plugin anti-spam pour les messages des articles et des brèves 19 janvier 2007 15:20, par François Daniel Giezendanner

        Bonjour,

        je n’avais pas relevé le fait que SPIP 1.9 était équipé d’un anti-spam qui permettait de filtrer les commentaires indésirables dans les forums des articles et des brèves. Avez-vous des informations et/ou des références à ce sujet ?

        J’ai en effet un site SPIP que je n’ai pas encore migré en 1.9.1 et les forums des brèves sont spammés à outrance par des messages très indésirables. De plus les brèves présentent l’inconvénient de ne pas bénéficier de la notification qui nous informe de l’arrivée des nouveaux messages alors que les articles en bénéficient, si bien que l’on peut mettre un certain temps (dirait Fernand Reynaud) avant de s’en apercevoir.

        Si cette fonctionnalité anti-spam n’existe pas pour SPIP 1.9.1, un plugin serait très utile !

        Cordialement

        François Daniel Giezendanner

        Répondre à ce message

        • j ai eu le même problème sous SPIP 1.8. j ai désactivé les brèves, mis une modération a priori, mais les robots continuent de solliciter les forums de brèves ce qui brouille le stats du site même si rien n apparaît plus sur le site public. Je suis depuis passé en spip 1.9.2 et il semble que moins de robots passent mais il en passe toujours, gonflant artificiellement les stats de visites. je serais aussi très demandeur d un plugin anti-spam sur les forums. Quelqu un aurait une info ?

          Répondre à ce message

    Retour au début des forums

  • toujours une erreur dans les headers

    12 mars 2007 18:23, par erational

    bonjour,

    il reste encore une erreur dans les headers qui provoque un bug et fait sauter les onglets (par exemple le menu à onglets des langues saute). dans antispam.php

    function antispam_ajouter_onglets($flux) {
     if($flux['args']=='configuration')
     {
       $flux['data']['antispam']= new Bouton('../'._DIR_PLUGIN_ANTISPAM.'/img_pack/mailcheck24.png', _T('antispam:module_titre'),
            generer_url_ecrire("antispam_admin"));

            return $flux;
     }
    }

    il faut corriger par :

    function antispam_ajouter_onglets($flux) {
     if($flux['args']=='configuration')
     {
       $flux['data']['antispam']= new Bouton('../'._DIR_PLUGIN_ANTISPAM.'/img_pack/mailcheck24.png', _T('antispam:module_titre'),
            generer_url_ecrire("antispam_admin"));

     }
             return $flux;
    }

    cela serait bien que tu déposes ton plugin sur la zone. Cela permettrait à toute la communauté de travailler dessus.

    Voir en ligne : http://www.erational.org

    Répondre à ce message

    Retour au début des forums

  • Plugin antispam

    23 février 2007 17:42, par mz412

    salut chez moi la version 0.1 de ce plugin fonctionne, mais rien à faire pour les autres versions, notament en ce qui concerne le cryptage par image. une idée ? merci

    Répondre à ce message

    Retour au début des forums

  • Plugin antispam - balise #INTRODUCTION ?

    20 février 2007 15:49, par erational

    bonjour,

    merci pour ce plugin qui fonctionne bien. bon boulot :)

    il y a une petite amélioration à faire : les champs calculés du type #INTRODUCTION laissent encore voir des emails en clair.

    Répondre à ce message

    Retour au début des forums

  • Warning : Cannot modify header information

    9 décembre 2006 15:51, par nico

    Bonjour et merci pour ce travail,

    Avec la version 0.22 sur SPIP 1.9.1 [7385], je rencontre un petit problème, par exemple en modifiant les auteurs d’un article : Warning : Cannot modify header information - headers already sent by (output started at /home/.../plugins/antispam/antispam.php:44) in /home/.../ecrire/index.php on line 198

    Quelqu’un a déjà rencontré ce type de problème ?

    Répondre à ce message

    • Warning : Cannot modify header information 17 décembre 2006 19:29, par marabbeh

      J’ai la même erreur (version 1.9.1 officielle). C’est sur ma page 404, qui est presque la réplique de ma page plan, où je n’ai pas cette erreur. Les seules différences sont des <:xxx :>.

      Répondre à ce message

      • Warning : Cannot modify header information 20 décembre 2006 19:59, par marco

        Merci pour ce plugin "salvateur" Reste en effet à corriger ce problème : pour moi le message "warning..." apparait dans l’interface de modification quand je tente de faire changer de rubrique une sous rubrique ou un article... embêtant ! Mais ça n’empèche pas de faire les changements souhaités, ouf !

        Warning : Cannot modify header information - headers already sent by (output started at /home/www/plugins/antispam/antispam.php:44) in /home/www/ecrire/index.php on line 198

        Répondre à ce message

    • Warning : Cannot modify header information 30 janvier 2007 09:50, par tibo

      Salut,

      J’ai trouvé la cause du problème : Il y avait une ligne vide après ma balise ?> à la fin de mon code. Je l’ai corrigé (v 0.23).

      Si j’ai mis du temps à trouver c’est que je n’arrivai pas à reproduire le problème.

      Répondre à ce message

    Retour au début des forums

  • Plugin antispam

    21 novembre 2006 12:07, par marabbeh

    J’ai testé ce plugin,. Il semble bien marcher. Mais le problème est qu’il utilise javascript afin que les textes/images soient cliquables. C’est gênant pour mes sites que je tente de rendre accessibles aux handicapés. Ne serait-il pas envisageable d’utiliser PHP pour renvoyer les liens sur une page de contact en mettant l’adresse e-mail en GET mais crryptée ?

    Répondre à ce message

    • Plugin antispam 6 décembre 2006 11:38, par tibo

      Le problème avec ce système c’est que les robots peuvent suivre le lien et donc récupérer l’adresse e-mail.

      Tu peux pour l’instant désactiver la fonction javascript (dans les options de configuration du plugin) et mettre un texte de remplacement pour le @ et le point (c’est une protection légère contre le SPAM).

      L’idéal serait d’afficher automatiquement un formulaire de contact sur chaque lien. Je vais avoir besoin de jquery dans un premier temps (je suis en train de travailler dessus). Et là, la possibilité de rediriger vers une page php permettant d’envoyer un message à la personne concernée et tout à fait envisageable.

      Répondre à ce message

    Retour au début des forums

  • Plugin antispam : petits ajouts

    30 novembre 2006 14:57, par julesbourvil

    J’ai ajouté quelques choix de configuration du plugin lorsque l’on utilise la fonction image_typo :

    • Famille de police
    • couleur de police
    • texte alternatif

    Cela fonctionne correctement sous Windows XP, néanmoins la fonction du texte alternatif ne passe pas bien avec Opera 8. A priori c’est ok avec IE7 et Firefox 2.

    On peut voir le résutat sur mon site (en reconstruction).

    Encore à faire : créer un style css pour le lien car l’image est décalée par rapport au texte.

    Les fichiers modifiés sont téléchargeables pour que l’on puisse faire des essais sur d’autres navigateurs/systèmes d’exploitation.

    Merci d’avance de vos retours.

    Répondre à ce message

    Retour au début des forums

  • Plugin antispam

    15 novembre 2006 11:22, par chtibzh

    Salut,

    Plugin intéressant, mais qu’en est-il des références du type :

    <a href="mailto:moi@mon.domain" title="nous contacter">e-Mail</a>

    qui ne semblent pas être remplacées par ton antispam, mais qui sont facilement détectable par un robot.

    Pourquoi ne pas y appliquer le même traitement ?

    Répondre à ce message

    Retour au début des forums

  • Plugin antispam

    23 octobre 2006 15:45, par asso.bachant

    Bonjour a vous ; j’ai besoin d’un coup de pouce ...

    j’ai tenté d’installer le plugin et hélas sur aspirine avec comme url http://www.bachant.info ;j’ai le résultat suivant :

    http://www.bachant.info Adresses trouvées dans les en-têtes de la requête HTTP 1.9.1@www.spip.net Adresses trouvées dans la page HTML asso.bachant@laposte.net

    Donc quelquechose m’échappe ........

    Installation du plugin antispam ==> ça c’est fait...

    Vérifiez que vos squelettes possèdent bien la balise #INSERT_HEAD [1] dans la section HEAD de votre code. Ceci est nécessaire pour pouvoir inclure le code JavaScript de ce plugin. Plus de détail sur la doc officielle

    ==> sur la page sommaire ... SPIP 1.9.1 [7502]

    <head>
            <title>[(#NOM_SITE_SPIP|textebrut)]</title>
            [<meta name="description" content="(#DESCRIPTIF_SITE_SPIP|couper{150}|textebrut)" />]
            <INCLURE{fond=inc-head}>
    </head>

    serait ce par ici que ce trouve le hic... ?

    Voir en ligne : Association - B@CH@NT

    Répondre à ce message

    • Plugin antispam 23 octobre 2006 18:17, par tibo

      La balise INSERT_HEAD est uniquement utile pour la fonction javascript.

      Dans ton squelette, entre les balises <head>...</head>

      Il faut ajouter le code #INSERT_HEAD (après le INCLURE par exemple) ou vérifier dans ton cas s’il se trouve dans le fichier inc-head.

      Le problème vient, je pense, du fait que le remplacement du @ par chez et du . par point est trop simpliste pour Aspirine. Utilise le cryptage remplaçant le texte par une image, c’est le plus performant (de ce que j’ai pu remarquer). Choisi donc cette option en priorité pour tes tests (et vérifie par là même que les e-mails sont bien remplacés par des images (texte non séléctionnable).

      Répondre à ce message

    Retour au début des forums



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et vie SPIP-Contrib | SPIP | L'autre.net