Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Journal : Antispam pour blog et forum

Posté par Victor STINNER (page perso, ) le 22 avril 2008
Las du spam sur mon blog et sur le forum de ma société, j'ai écrit un antispam. Il utilise diverses règles générant une note globale pour le message : analyse des URLs, de mots clés, de l'adresse de courriel, de la longueur du message, etc. Pour commencer, une note négative est attribuée (ex: -5). Ensuite, chaque règle rajoute ou soustrait des points à la note globale.

Exemple de spam :
Par : swingers ads
Site Web : http://sexy.ads6x.com

Adult personal ads from swingers and swappers, couples, singles, bi,
http://sexy.ads6x.com >swingers ads and wives amateur couples Swingers Club

Et la sortie du programme antispam :
./antispam.py --verbose -c haypocalc.conf sexy
Match word (+2.0): sexy
Match word (+1.0): adult
Match word (+2.0): sexy
Match word (+1.0): amateur
Match URL (+1.5): http://sexy.ads6x.com
Match URL (+1.5): http://sexy.ads6x.com
Match email domain (+1.0): @gmail.com
sexy score: +7.00 ***SPAM***

L'antispam est écrit en Python et distribué sous licence GPL :
http://haypo.hachoir.org/trac/wiki/antispam

L'algorithme est expliqué sur la page web du projet en anglais. J'ai écrit un article en français qui présente l'algorithme, ses qualités et défauts :
http://www.haypocalc.com/blog/index.php/2008/03/10/137-un-no(...)

Pour l'intégration à Dotclear, punbb, etc. : c'est faisable, mais ces logiciels sont difficiles à patcher. Je ne distribue donc pas de patch automatique. Je peux tenter d'expliquer comment l'intégrer pour les gens intéressés. Pour les autres, regardez le dossier plugin. Niveau dépendance, il faut pouvoir exécuter Python 2.4.

> Lire le journal (49 commentaires, moyenne: 3,1).  

Vous avez demandé le commentaire #925326.

trier par pays ?

Posté par palm123 (page perso, ) le 23/04/2008 à 09:03. (lien). Évalué à 2.

Je lisais dans le Linux Max sur le serveur Mail que le tri par pays est efficace, malheureusement ce service proposé par maxmind est payant.

Geoiplookup qui est gratuit fonctionne avec une base à jour en 2002...

http://www.maxmind.com/app/products
Pour avoir un tri par pays c'est 50 $ la licence et 12 $ par mois.

Ca peut se justifier pour une entreprise qui va en plus vouloir savoir d'où viennent ses visiteurs.

Je suppose qu'il n'y a pas de base à jour libre.

--
Les logiciels libres ne sont pas à la portée des non-spécialistes, dit Microsoft. Si même un gendarme ou un député est capable de se servir d'un PC sous Gnu/Linux...
  • [^]Re: trier par pays ?

    Posté par Larry Cow () le 23/04/2008 à 09:38. (lien). Évalué à 4.

    Je lisais dans le Linux Max sur le serveur Mail que le tri par pays est efficace

    Jusqu'à ce qu'il ne le soit plus... le souci avec la lutte antispam, c'est que rien n'est définitif, et que toute solution qui se vendrait comme telle est une arnaque potentielle.

    Le seul truc qui pourrait éventuellement durer, c'est de restreindre le réseau (par exemple, aux gens que tu connais). Mais dès que tu permet une ouverture (aux gens qui connaissent des gens que tu connais, par exemple) tu t'exposes à nouveau au spam.

    • [^]Re: trier par pays ?

      Posté par ptifeth (page perso, ) le 23/04/2008 à 10:19. (lien). Évalué à 8.

      Les concepteurs des réseaux de confiance ont pensé à la transitivité : chacun accorde à son prochain un niveau de confiance, et la confiance décroît avec la distance entre les nœuds du réseau.

      On peut même imaginer un réseau de confiance spécialisé dans le spam qui serait initialisé avec des valeurs arbitraires (se souvenir que la confiance que j'accorde à un nœud de distance n est en gros égale à la confiance que lui accorde le nœud de distance (n-1) multipliée par la confiance que j'accorde moi-même à ce nœud :
      ·m'a envoyé 1 hoax : -1%
      ·a continué à m'envoyer des hoax malgré explications : -20%
      ·utilise outlook : -20%
      ·développe des logiciels en Python : +20%
      ...

      Du coup, pour les valeurs de confiance faibles on peut laisser les outils traditionnels de filtrage être plus cruels (spam_threshold--).

    [^]Re: trier par pays ?

    Posté par Gniarf () le 23/04/2008 à 11:03. (lien). Évalué à 3.

    euh ?

    la base dite GeoLite Country est à coté : http://www.maxmind.com/app/geolitecountry et suffit largement pour dégager, enfin scorer très négativement pas mal de coins du monde (europe de l'est, chine, brésil...) actuellement très pollueurs.

    sinon tu peux utiliser une paire de ressources qui ont la même finalité. une finesse est de séparer les clients de FAI (disons FT ou Free ici, des utilisateurs légitimes comme des gens vérolés - et pour certains pays tu peux te dire 99 % de gens vérolés) des utilisateurs d'entreprises (les gens qui surfent au bureau, en général légitimes) et enfin des ip de datacenters (une véritable plaie : ce sont à 99% des serveurs vérolés, ou pire encore)

    --
    Windows has no users. It has hostages.
    • [^]Re: trier par pays ?

      Posté par plagiats () le 24/04/2008 à 10:55. (lien). Évalué à 2.

      Super discriminant comme méthode je trouve, moinsser directement quelqu'un juste parce qu'il poste depuis le nigeria, le congo, ou la lituanie .. pas top pour le "world wide web". :-/

      --
      La mort est un phénomène naturel qui se produit par l'avalement répété de petites quantités de salive au cours d'une grande période de temps. - George Carlin
      • [^]Re: trier par pays ?

        Posté par Victor STINNER (page perso, ) le 24/04/2008 à 11:42. (lien). Évalué à 3.

        Par expérience, sur mon blog écrit uniquement en français, quand je reçois une URL qui se termine en ".cn" ou ".ru", c'est pour du spam. Je donne donne +3 points à de telles URL (au lieu de 1,5 point). Mais là je parle des liens externes, pas de géolocalisation de l'IP.

        [^]Re: trier par pays ?

        Posté par Gniarf () le 24/04/2008 à 13:31. (lien). Évalué à 1.

        bah trouve-moi une solution efficace au spam et on en reparle \o/

        à la fin de la journée - ou du mois - c'est juste une histoire de statistiques, le taux d'utilisateurs légitimes que je perds est inférieur (nul, en fait :) au taux d'erreur que je me permets.

        je conçois que pour d'autres usages que le mien ou pour d'autres personnes ça ne soit pas une méthode envisageable, mais ce n'est pas mon cas.

        --
        Windows has no users. It has hostages.
        • [^]Re: trier par pays ?

          Posté par plagiats () le 24/04/2008 à 16:54. (lien). Évalué à 3.

          Tu trouves pas que ta solution, c'est comme dire "expulser hors du territoire toute personne qui perd son emploi, c'est une solution efficace au chômage!" ?

          --
          La mort est un phénomène naturel qui se produit par l'avalement répété de petites quantités de salive au cours d'une grande période de temps. - George Carlin
          • [^]Re: trier par pays ?

            Posté par Gniarf () le 24/04/2008 à 17:38. (lien). Évalué à 3.

            ma solution, comme tu dis, s'applique à mon cas particulier et concerne les problèmes qui se posent à moi, et j'ai bien pris soin de dire que pour d'autres personnes ayant d'autres priorités (genre, au hasard, vouloir fournir une boite aux lettres et un webmail secure anonyme tout ça ouverts à tout le monde, Tibet compris...) ça irait pas forcément.

            donc ton analogie trollesque ne sert à rien et est en fait d'une naïvité affligeante, comme ton commentaire encore au dessus (indique-moi d'ailleurs où tu habites et où tu caches les clés quand tu es en déplacement, merci, et laisse une petite réserve de pognon pour mes besoins personnels au passage)

            si (par exemple) je gère un jeu ou un forum en français pour des français et assimilés, je ne vois aucune raison légitime de laisser passer des ips de pays absolument pas francophones : un peu d'expérience permet de juger très vite à la tête du client, et c'est absolument du délit de sale gueule. car ensuite si d'aventures j'apprends qu'un membre de ce forum part y faire un séjour ou un stage ou me demande d'inscrire un copain qui y est déjà, là je rajoute une exception à la main (car oui il est possible de laisser à coté un moyen de recours, comme un formulaire de contact, les inscrits et les non-inscrits peuvent encore communiquer par d'autres moyens, etc etc...)

            en gros l'administration de mon serveur revient à faire la police et à virer les géneurs : "world wide web" ne veut pas dire "viendez tous chier dans mon jardin !". on a vu ce que ca a donné pour l'email et le spam. libre à toi de laisser la porte ouverte à la botaille de toute la galaxie, moi je préfère m'en passer.

            --
            Windows has no users. It has hostages.
            • [^]J'habite au 1, rue de la banquise 75001 paris

              Posté par plagiats () le 24/04/2008 à 17:56. (lien). Évalué à 2.

              Tu as raison, et si ta solution te conviens parfait.

              --
              La mort est un phénomène naturel qui se produit par l'avalement répété de petites quantités de salive au cours d'une grande période de temps. - George Carlin
              • [^]Re: J'habite au 1, rue de la banquise 75001 paris

                Posté par Gniarf () le 24/04/2008 à 18:17. (lien). Évalué à 2.

                elle est pas parfaite, c'est un choix, un compromis. il y a des garde-fous pour les bavures éventuelles, pour l'instant ça passe.

                vu le nombre de machines vérolées chez Wanadoo et dans une mesure à peine moindre chez les autres FAI français, on n'est pas à l'abri d'une utilisation massive un peu finaude qui contournerait ce type de filtrage.

                pour l'instant ça passe. plus tard, il faudra sûrement trouver autre chose.

                --
                Windows has no users. It has hostages.
                • [^]Re: J'habite au 1, rue de la banquise 75001 paris

                  Posté par chimrod (Jabber id, page perso, ) le 25/04/2008 à 10:12. (lien). Évalué à 2.

                  Il y avait quelques temps, un journal avait été posté, dans lequel l'auteur indiquait avoir mis en place un filtrage, mais les ips filtrées étaient redirigées vers serveur statique, qui affichait un message sur le pourquoi du blocage.

                  Désolé je ne retrouve pas le lien, mais il avait redirigé les ip en local, sur un serveur maintenu par bind.

                  L'avantage est que cela annonce aux personnes pourquoi elles sont bloquées, et laisse la possibilité d'un contact si besoin est.

                  --
                  It is no bug, it's future

    [^]Re: trier par pays ?

    Posté par Victor STINNER (page perso, ) le 23/04/2008 à 11:46. (lien). Évalué à 3.

    J'ai pensé filtrer selon l'IP et/ou la tranche horaire. Mais je crains que ça bloque des utilisateurs légitimes (ex: leur machine héberge un client d'un botnet :-)). Et puis, les règles actuelles sont déjà pas mal efficaces.

    [^]Re: trier par pays ?

    Posté par Grégoire G (Jabber id, page perso, ) le 23/04/2008 à 12:52. (lien). Évalué à 2.

    Tiens, mais j'ai ce problème.

    J'ai des clients chinois, et, si j'héberge mon site chez un hébergeur français, il n'est pas visible depuis la Chine continentale.

    Pour les e-mails, c'est le même genre de galère, parfois je reçois les messages, et rarement mon correspond m'indique sur MSN (ben oui, c'est long de leur apprendre ce qu'est Jabber) que je n'ai pas répondu à son dernier e-mail.

    Le filtrage par géolocalisation, s'il est mis en place, doit être configurable utilisateurs par utilisateurs.

    Enfin, la plaie, c'est les postes sous Windows, ceux qui ouent un serveur dédié sans savoir le configurer (ou pire, sous Win), et enfin, les sites hackés.

    Je trouve que jabber, pour s'envoyer des messages est très bien, reste plus qu'une solution agréable de rangements des messages dans l'historique, par exemple : pouvoir lister les sujets, et, mieux, avoir la possibilité de passer des pièces jointes en différé.

    A bientôt
    G