Journal Comment font les spammeurs de blogs ?

Posté par (page perso) .
Tags : aucun
0
26
juin
2006
Hello,

Alors que je reçois toujours entre 20 et 40 commentaires de spam par jour sur mon blog (heureusement tous détectés par spamplemousse), je me pose la question : comment font-ils ?

Je vous explique la stratégie que j'ai actuellement mis en place :

Trackbacks :
--------------------
- stratégie 102% efficace décrite sur mon blog (rechercher "dotclear spam" en suivant "page perso"). Le principe est simple : vérifier si l'IP du posteur du trackback est la même que l'IP qui héberge le site pour lequel il y a trackback.

Je dis 102% efficace car cela bloque certains trackbacks légitimes chez certains hébergeurs mutualisés. (problème contournable avec une whitelist, ces hébergeurs étant peu nombreux et facilement identifiables)

Résultat : 0 spams dans les trackbacks. Une nuit, par erreur, j'ai désactivé ce système, au réveil j'avais 190 trackbacks de spam...


Commentaires :
-----------------------

Là c'est une autre paire de manche. Je vais donner deux exemples : mon blog, avec un assez haut google rank et des visites du monde entier et le blog d'une amie, blog personnel uniquement consacré à sa famille et ses amis car elle est à l'étranger, blog peu connu.

Le blog de l'amie en question recevait une centaine de spams par jour dans les commentaires. J'ai donc instauré la solution suivante :

1) Ajout d'un champ de formulaire, caché par la CSS et portant l'attribut "nom". Si ce champ n'est pas vide, le commentaire est considéré comme spam.

2) renommage du champ initial comportant le nom du posteur. Ce champ doit être rempli pour que le commentaire soit validé.

Résultat : pas un seul spam en une semaine.

Voyons maintenant mon cas personnel :

1) Ajout d'un champ de formulaire, caché par la CSS et portant l'attribut "nom". Si ce champ n'est pas vide, le commentaire est considéré comme spam. Amélioration : le nom qui définit ce champ est un string aléatoire changé toutes les semaines !
A noter que si ce champ est rempli et que les cookies sont activés, sa valeur est sauvée exactement comme pour les "vrais" champs.

2) renommage du champ initial comportant le nom du posteur. Ce champ doit être rempli pour que le commentaire soit validé. Amélioration : le nom qui définit ce champ est, à une lettre près, le même que le champ caché à ne pas remplir.

3) Ajout d'un second champ caché, initialisé à "http://" et intitulé "website". Si le champ a une valeur différente que "http://", le commentaire est refusé.


Résultat : plus que 20-40 spams par jour, interceptés par spamplemousse.


Questions :
-----------------

1) Comment font-ils ? Comment savent-ils quels commentaires éviter ou non ? J'ai reçu un spam 2 minutes après avoir installé ces modifications donc ça implique que les robots évitent ce genre de problèmes.

2) Comment se fait-il que sur le blog de mon amie, une solution simple soit 100% efficace ? Y'a-t-il plusieurs générations de robots qui postent des spams et le son peu de google juice suffit-il à tenir les robots "avancés" hors d'atteinte ? Comment expliquer ce phénomène ?



Propositions de solutions
---------------------------------------

1) J'ai remarqué que les posteurs de spams n'apparaissent jamais dans mes statistiques bbclone (ou je ne l'ai jamais vu). BBclone est configuré pour ne m'afficher que les vrais visiteurs, pas les robots.
Est-ce que quelqu'un a une idée de comment bbclone établit une telle distinction ? (j'ai pas trouvé dans le code) Il "suffirait" de rejeter les commentaires provenant des robots, ça éliminerait déjà pas mal.

2) Une autre idée part du principe que les robots arrivent à passer la barrière des champs cachés en essayant plusieurs combinaisons de remplissage de champs. Si cela est vrai, l'idée serait donc de blacklister pour X minutes une IP convaincue de spam avec effet rétroactif. (les commentaires postés par cette IP dans les Y minutes précédentes sont aussi effacés).
Idée que j'ai formalisé ici :
http://www.dotclear.net/forum/viewtopic.php?id=18520


Conclusion
----------------
Voilà, je suis terriblement en guerre avec le spam qui représente plus de 80% des mails reçus sur fritalk, qui envahit mon blog et ceux dont je suis les commentaires par RSS, qui m'a forcé à fermer l'accès anonyme sur bien des forums et qui a condamné déjà deux adresses mails.

La technique tente de se simplifier pour se mettre au niveau des non-techniciens et voilà que le spam annéanti tous nos efforts : autour de moi, les non-geeks réutilisent de plus en plus le fax, les mails sont considérés comme non sûrs car pouvant être effacés par un filtre anti-spam trop puissant ou étant noyé dans du spam et donc non-vus. (et je compte pas le fait que ma connexion internet reçoit toutes les secondes (sans exagérer) une tentative de connexion d'un virus quelconque !)

Je déclare donc la guerre au spam et pour combattre un ennemi, il faut le comprendre. Si vous avez des tuyaux ;-)


*********

Y'en a marre du spam !
Ok C'était super le forward ... Au début
Mais les temps ont changé; il y a eu
Il abuse, on n'en peut plus, casse-toi tu pues
Le spam c'est la vermine et on le dit sans rire
Va .. va .. va mourir

Nous on lit nos mails
Et on tient à le faire
Nous on communique avec le monde
Tout le monde
Fini le spam
Et ces spammeurs de récupération
Vive SpamAssassin
De la nouvelle génération
SpamAssassin
Original, unique
Avec peu d'html
C'est beaucoup mieux
Bien plus léger

Y'en a assez des spammeurs à la noix
Ca suffit comme ça
Qui te saoule de pillules bleues
Ou de Xanax
Ca suffa comme ci

{Refrain:}
Y'en a marre du spam
Y'en a marre du spam
Faut-il que l'on t'le répète que ça rentre dans ta tête
Au cas où ça t'échappe?
Y'en a marre du spam

Y'en a marre du spam
La société en a eu saciété
Récupérée
Eh vous, pauvres spammeurs de toute la russie
Comme si vos emails le français les lit
Regardez-vous
Vous êtes tous moulés
Dans le même moule à ghetto
A cracher des promotions
Pour vendre de l'érection
Ghetti
Faites un goûter
Goûter

A rabacher des buy me
Et faire du bla-bla
Ca suffit comme ça
Des mots qu'on comprend pas ce que ça signifie
Ca suffa comme ci
Et puis pour passer l'filtre
T'apparais sans prévenir
Ca c'est le pire

{Refrain:}
Y'en a marre du spam
Y'en a marre du spam
Faut-il que l'on t'le répète que ça rentre dans ta tête
Au cas où ça t'échappe?
Y'en a marre du spam

Oh yeah
Marre du spam
Heureusement qu'il y a nous
Nous et Spamassassin, bogofilter.
Qui ouvre a la technique
Une ère initiatique
Charismatique
Paroisse system
Epileptique
Fantasmagorique
Très sympathique
Hip hop Prisunic
T'as le ticket chic
Allons faire un pique nique
2 Qui la tienne et 3 trois qui la ...

Nous on lit nos mails
Et on tient à le faire
C'est nous qu'on utilise tous ces filtres
Spamassassin
C'est démodé le vieux spam à papa
Ca suffit comme ça
Le spam, c'était bon du temps des momies
Ca suffa comme ci

A tous les spammeurs
Spéciale dédicace en forme de tryptique
Il faut que tu bouges de là
Spammeur qui nous a emmerdé
Ou je dos ton server

{Refrain:}
Y'en a marre du spam
Faut-il que l'on t'le répète que ça rentre dans ta tête
Au cas où ça t'échappe?
Y'en a marre du spam
Faut-il que l'on t'le répète que ça rentre dans ta tête
Au cas où ça t'échappe?
Y'en a marre du spam
Faut-il que l'on t'le répète que ça rentre dans ta tête
Au cas où ça FEU FEU !
Y'en a marre du spam

Oh Yeah
Oh Yeah
Unsubscribe
  • # Comment font les spammeurs de Linuxfr ?

    Posté par . Évalué à -8.

    Un exemple ci-dessus, qui passe à travers toutes les détections :(
    • [^] # Re: Comment font les spammeurs de Linuxfr ?

      Posté par . Évalué à -8.

      "ta gueule ploum"
    • [^] # Re: Comment font les spammeurs de Linuxfr ?

      Posté par . Évalué à 9.

      Pas d'accord termounet< ! Tu es cruel... Je trouve sincèrement ce journal intéressant et informatif, argumenté et précis.
      Qu'est-ce qui te gène ?
      • [^] # Re: Comment font les spammeurs de Linuxfr ?

        Posté par . Évalué à 10.

        C'est gniarf qui donne la réponse : ce journal a le tort impardonnable d'avoir pour auteur Ploum. Quel crime.
        • [^] # Re: Comment font les spammeurs de Linuxfr ?

          Posté par . Évalué à -4.

          et n'oublions pas 110 lignes d'une "chanson" atroce. enfin, si ça fait tomber la pluie, ça serait déjà ça.
          • [^] # Re: Comment font les spammeurs de Linuxfr ?

            Posté par . Évalué à 5.

            Si cette seconde partie ne t'intéressait pas, tu fais comme moi : tu ne lis pas. C'est incroyablement efficace :rolleyes:…
            • [^] # Re: Comment font les spammeurs de Linuxfr ?

              Posté par . Évalué à 5.

              si le spam sur le blog de ploum ne l'intéresse pas, il ne le lit pas.

              mh, non, y'a un truc qui cloche, là...
              • [^] # Re: Comment font les spammeurs de Linuxfr ?

                Posté par . Évalué à 8.

                Le truc qui cloche, c'est que les spams sont truffé un peu partout dans la suite du billet (qui plus est commentaires & trackpads, je ne les aurais pas imaginé aussi envahissants, c'est dingue), alors que la chanson de ploum est bien faite : un petit «******» pour te signaler clairement que c'est une autre partie, et après, on ne redémarre pas sur une partie sérieuse. Bref, tu sautes la chanson très facilement.

                Ploum est peut-être parfois d'un humour douteux, chacun ses goûts et c'est mon cas : je ne le trouve efectivement peu drôle, mais on sent que c'est un déconneur expérimenté : il sait faire en sorte que le lecteur sache très vite à quoi s'en tenir et puisse décider de lire ou non en consèquence.

                Le jour où la chanson sera tronçonnée et dispersée au milieu des paragraphes de la première partie, je serais en première ligne pour taper sur ploum. En attendant, je ne vais pas lui repprocher ses goûts, aussi douteux qu'ils me semble. Je n'ai pas la prétention d'être capable d'imposer aux autres le bon choix, ni même de simplement être absolument sûr que mon choix est effectivement le bon.

                Allez, si son humour est si nul, ne lui fait pas tant d'attention ;).
      • [^] # Re: Comment font les spammeurs de Linuxfr ?

        Posté par (page perso) . Évalué à 4.

        Tout à fait d'accord... Journal très interessant et qui touche tout le monde !!! Et ce n'es pas du déja vu alors... ON PEUT TROLLER À MORT !!
        • [^] # Re: Comment font les spammeurs de Linuxfr ?

          Posté par . Évalué à -5.

          Journal très interessant et qui touche tout le monde
          Pas moi, j'ai pas de blog.
          • [^] # Re: Comment font les spammeurs de Linuxfr ?

            Posté par (page perso) . Évalué à 4.

            je n'ai pas de bloc mais une boîte e-mail et un formulaire de contact sur mon site web que j'ai du protéger par une manipulation de ce genre associée à une blacklist.
            Donc, moi, ca me concerne :)

            Pour mon formulaire de contact sur mon site, j'ai commencé a recevoir du spam dessus, j'ai rajouté une checkbox qu'il faut décocher (les robots la cochent automatiquement apparament) si l'IP est dans ma blacklist.
            Et dés que je reçois un spam (ça n'arrive plus, c'est efficace), je met l'IP en blacklist et je regarde si le robot a su décocher (pour savoir si il faut que je corrige mon système)
  • # Le spam, l'autre sens de la vie...

    Posté par . Évalué à 10.

    Certains des spammeurs actuels "initialisent" les robots à la main. Grosso modo il y a un mec (un vrai avec 70% de flotte dans l'organisme) derrière un ordi qui va remplir les champs à la mano et ensuite répliquer ce qu'il a rempli dans les robots. C'est une technique assez lente mais qui marche très bien. Le dit humain (ou presque, c'ets un spammeur après tout) est prèvenu quand les sites "populaires" changent de formulaires ou d'aspect. Nous reviendorns sur comment les contrer dans un instant

    Après il y a les try and guess. Il s'agit de robots qui vont essayer toutes les combinaisons possibles jusqu'à réussir à refourger leur spam. Ils sont très faciles à stopper, il suffit de mémoriser dans la session (en pur server-side ca va de soit) le nombre d'essais (N) infructueux du robot et de créer N champs/checkbox/input aléatoires supplémentaires à chaque nouvel essai. En partant sur une base de 6 champs cachés, le robot s'épuise à essayer de poster avant d'abandonner ou de planter. Si ca consomme trop de bande passante il suffit de valider les commentaires aux troisième essai et de les détruire dans les dix secondes qui suivent.

    Il existerait également des robots plus intelligents capables de "comprendre" via les CSS quels sont les champs visibles et ceux qui sont cachés. Ils sont rare mais en voie d'expansion. La technique pour les contrer consisterait à mettre les champs "invalidants" en visible mais derrière une bannière ou une image, donc toujours techniquement invisible pour l'utilisateur. A noter que l'on peut aussi jouer du boutton submit à gogo un peu partout sur la page mais totalement absurdes pour l'utilisateur final, qui irait s'amuser à clicker sur ton ponpon alors qu'il y a un gros bouton "envoyer" à la fin du commentaire - a part un bot qui prend le premier < Input type="submit" ... > bien sur


    Au final une technique qui marche très bien pour les commentaires dans des sites très en vue, mais qui nécessite des sessions (idéalement serveur only) : on génére K+6 noms aléatoires que l'on stoque en base de données dans une table temporaire avec l'identifiant de session. Ensuite en lieu et place des nom de saisie on affiche en lieu et place les nom aléatoires en intercalant toujours aléatoirement quelque spans ou div que l'on masque (en l'envoyant hors champs ou avec l'attribut invisible façon zen garden CSS). Il en résulte un formulaire qui change tout le temps et ou il est impossible de savoir à quoi correspond le 3ème champs sans "lire" le site. Gros inconvennient de cette méthode : elle semble nuire à l'accessibilité (du moins d'après les moteurs d'évaluation).

    Sinon reste les habituels test de reconnaissances avec des textes ou des images et une seule solution possible. (Mais les images barbouillées sont à banir, elles sont terribles pour les gens qui ont des problèmes de vue)
    • [^] # Re: Le spam, l'autre sens de la vie...

      Posté par (page perso) . Évalué à 2.

      ça me rappelle des softs à la mode il y a quelques années comme wpoison ( http://www.monkeys.com/wpoison/ )
      l'idée est de générer, dans la page, un certains nombre de liens aléatoires, qui eux même redirigent vers d'autres liens, et cela de manière infinie... L'idée derrière ce principe est de piéger les robots de spam qui parcours toutes les pages du site à la recherche de formulaires (ou, comme pour wpoison, d'adresse email). Seul inconvenient : ça risque de pieger aussi les robots de recherche.
      Mais je suppose que depuis le temps que ça existe, les spammeurs doivent s'être protégés contre ce genre de système...
    • [^] # Re: Le spam, l'autre sens de la vie...

      Posté par . Évalué à 1.

      Et pourquoi ne pas générer aléatoirement, à la connection de l'utilisateur des nom pour les forms, les robots qui auront été initialisés avec des "vieux" noms ne trouverons pas les forms, il suffit par la suite d'envoyer directement avec les noms générés dans une fonction javascript qui se chargera de l'envoi du formulaire à la page d'insertion dans la base.
      Ceci couplé avec les forms cachées par CSS devrait obtenir une reussite de 100%.

      Enfin, bon moi je propose, certains diront que la méthode est crade
      • [^] # Re: Le spam, l'autre sens de la vie...

        Posté par (page perso) . Évalué à 2.

        C'est en gros ce que j'ai essayé avec un nom changé toutes les semaines. Le fait que j'ai reçu du spam 2 minutes à peine après le changement de nom tend à dire que ça ne marche pas...
      • [^] # Re: Le spam, l'autre sens de la vie...

        Posté par . Évalué à 1.

        Ce que tu proposes est surtout inutile.

        Si tu fournis le code javascript qui "fait ce qu'il faut", tu donnes aussi au robot
        la possibilité d'utiliser ce script pour "faire ce qu'il faut" aussi.
        • [^] # Re: Le spam, l'autre sens de la vie...

          Posté par . Évalué à 0.

          Sauf si tu génère le nom du form au chargement de la page, de manière aléatoire et que et que ce nom est reporté dans le javascript.
          Dans ce cas, le nom est introuvable, et plus de spam....
          • [^] # Re: Le spam, l'autre sens de la vie...

            Posté par . Évalué à 3.

            Reprenons depuis le début. Soit A un serveur et B un client.

            Quand B demande une page à A, A lui envoie avec la page tout pour que B puisse
            répondre ; c'est quand même le but. De plus, B ne communique pas pour faire sa
            réponse. B envoie quelque chose et A accepte ou A refuse. Le serveur peut utiliser
            son générateur de nombres aléatoires autant qu'il veut, ça ne change rien à ce
            fonctionnement.

            Si A fait ce que tu dis, tu "touilles" des trucs pour que les noms des champ du form
            soient illisibles sauf que tu donnes le dictionnaire: le script java-script. Pour savoir
            quels sont les champs piégés, le robot a deux méthodes :
            - faire une analyse du rendu de la page pour voir quels sont les liens cachés ;
            - utiliser le code java-script fourni pour savoir quels sont les champs qu'il renseigne.
    • [^] # Re: Le spam, l'autre sens de la vie...

      Posté par (page perso) . Évalué à 1.

      Sinon reste les habituels test de reconnaissances avec des textes ou des images et une seule solution possible. (Mais les images barbouillées sont à banir, elles sont terribles pour les gens qui ont des problèmes de vue)


      Ca me semble la solution la plus... simple.
      Vous connaissez des plugins pour WordPress (je sais pas avec quels mot-clé anglais chercher) ?
    • [^] # Re: Le spam, l'autre sens de la vie...

      Posté par . Évalué à 2.

      On a absolument pas besoin de variable de session pour faire ce que tu racontes.

      On génère des noms aléatoires de champs et on ajoute une variable cachée
      chiffrée comportant la correspondance. Le robot ne peut pas déchiffrer la variable
      et donc savoir quels sont les champs à renseigner. L'algo de chiffrement n'a même
      pas à être super robuste car le robot ne peut pas se permettre de prendre 10 pour
      faire son poste. Si cette variable est modifiée, le serveur s'en rend compte et rejette
      la requête. Sinon, le serveur n'a plus qu'a récupérer la correspondance pour faire
      la traduction.
      • [^] # Re: Le spam, l'autre sens de la vie...

        Posté par (page perso) . Évalué à 3.

        je comprends pas bien ce que tu veux dire. Tu pourrais essayer de préciser un peu parce que ça a l'air une bonne idée.
        • [^] # Re: Le spam, l'autre sens de la vie...

          Posté par . Évalué à 5.

          Imagine que tu aies des champs:
          Nom, Prénom, Adresse

          Tu te fais spammer violemment. Première technique pour repérer les
          méchant robots, tu ajoutes des champs aléatoires que tu caches par
          une méthode de ton choix pour que les utilisateurs ne les remplissent
          jamais. Tu as maintenant:
          Nom, Prénom, inczue, Adresse, sdkjfhz, icuznze

          Un robot basic ne va pas se rendre compte que les deux derniers liens
          ne sont pas visible et ne doivent donc pas être remplis. Ils vont mettre
          des trucs dedans et tu vas les avoir.

          Maintenant, si un spammer humain passe par là, il va se rendre compte
          du problème et il va régler le robot pour qu'il ne remplisse que les champs
          Nom, Prénom et Adresse.

          La technique avec variable de session consiste à envoyer
          - czieuf, zleriounc, eziud, sermo, cszezosiu

          en stockant sur le serveur la correspondance
          Nom=zleriounc; Prénom= sermo; Adresse= cszezosiu

          La seule façon pour savoir qui est qui force à calculer quels sont les champs
          visibles et quels sont les champs invisibles.

          Le problème, c'est qu'il faut utiliser des variables de session et certains peuvent
          ne pas vouloir faire ça. Or, on peut faire la même chose SANS variable de
          session.

          On envoie le formulaire avec les champs
          czieuf, zleriounc, eziud, sermo, cszezosiu

          et en plus, on ajoute une variable cachée toto qui contient
          la traduction des noms des champs.
          Sauf que comme on est pas con, on chiffre toto avec une clef
          secrète pour que le bot ne puisse pas accéder à la traduction

          Le robot ne sait pas déchiffrer toto et il ne sait pas non plus modifier
          toto pour choisir lui même les bons champs.


          Il faut cependant faire quand même attention à une chose, si le
          spammer humain passe par là, il peut très bien noter le nom
          des champs et la variable toto et décider de toujours utiliser ces
          variables. Pour éviter cela, il suffit de changer très souvent les
          clefs de chiffrement (toutes les n minutes). Pour éviter le problème
          du gars qui charge la page 10 secondes avant la révocation de la
          clef, et qu'on va envoyer chier on utilise 2 clefs qu'on entrelace.
          Ainsi, on est assuré que la clef utilisée dans une page fonctionnera
          entre n et 2n minutes.
          • [^] # Re: Le spam, l'autre sens de la vie...

            Posté par . Évalué à 4.

            Il faut cependant faire quand même attention à une chose, si le spammer humain passe par là, il peut très bien noter le nom des champs et la variable toto et décider de toujours utiliser ces variables. Pour éviter cela, il suffit de changer très souvent les clefs de chiffrement (toutes les n minutes). Pour éviter le problème du gars qui charge la page 10 secondes avant la révocation de la clef, et qu'on va envoyer chier on utilise 2 clefs qu'on entrelace. Ainsi, on est assuré que la clef utilisée dans une page fonctionnera entre n et 2n minutes.


            Je ne sais pas ce que ça donne en charge de calcul, mais on pourrait aussi générer des clés à usage unique. On génère à chaque connexion des noms aléatoires pour les champs (les vrai est les faux), on crée une clé permettant de mapper ces champs aléatoires aux champs réels, on stocke cette clé, (champ dans la page et sur le serveur), et à l'envoit du commentaire, on vérifie, et on efface la clé. Pas de problème au niveau de l'humain lent à poster, et "pas possible" à contourner (usage unique)

            Reste à voir si c'est pas trop lour pour le serveur.

            Note que la clé peut être aléatoire comme les champs, et le tout est stocké dans une table, la clé peut même être un bête index.
            • [^] # Re: Le spam, l'autre sens de la vie...

              Posté par . Évalué à 2.

              Au niveau calcul, je pense qu'un bête xor avec un hash de la date+un texte fixé
              suffit. Ce n'est pas ça qui va plomber le serveur.

              Par ailleurs, ton truc ne marche pas.

              Sans variable de sessions (ou truc du genre où on stocke des infos sur le serveur),
              comment veux-tu que le serveur se rende compte qu'une clef a déjà été utilisée ?

              Il peut juste faire un teste d'intégrité pour voir si le certificat est valide mais pas plus.

              De plus, les variables de sessions sont limitées dans le temps et c'est nécessaire
              sans quoi le serveur n'aurai aucun moyen de savoir quand libérer de la mémoire.
              • [^] # Re: Le spam, l'autre sens de la vie...

                Posté par . Évalué à 4.

                Je ne suis pas spécialiste du développement web, mais ce que je pense c'est :
                au chargement de la page par l'utilisateur, le site exécute du code php (ou autre) pour afficher les différentes infos (contenu du billet, affichage des commentaires existants, ...)
                Là on génère 5 clé :
                "AETQDG", correspondant à "nom",
                "13579", correspondant à "site",
                "azerty", correspondant au contenu du commentaire
                "foobar", correspondant au champ "ne pas changer 1"
                "blop", correspondant au champ "ne pas changer 2"

                De plus, on génère une clé (aléatoire, ou un index, disons "DLFP"). Toutes ces propositions changent aléatoirement. Dans une table de la base de donnée, appelée "antispam-map" par exemple, on à 7 colonnes : "clé", "nom", "site", "commentaire", "ne pas changer 1", "ne pas changer 2", "timestamp".

                Donc chaque fois qu'on génère la page, on crée un jeu de 6 identifiant, et on les place dans cette table, en rajoutant l'instant où ils sont crées.

                Dans la page en elle-même, on utilise ces nom comme nom des champs de formulaires. (la textaera "nom" s'appelle donc plutot "AETQDG") et ce pour les 5 noms cités.

                De plus, on introduit un champ "clé" caché, enfin, visible dans la source de la page, et sensé être renvoyé non modifié.

                Au submit, le navigateur renvoie donc clé="DLFP", AETQDG="yoda222", 13579="http://linuxfr.org", azerty="un commentaire passionnant", foobar="non modifié", blop="non modifié".

                Là sur le post ou get, le moteur php commence par vérifier la présence de la clé "DLFP" dans la table "antispam-map". Si elle n'existe pas, la requete est ignorée (c'est un spam, le robot à modifié la clé non visible)
                Si elle existe, on récupère les noms des champs (et leur correspondance avec "la réalité"), et on efface ce tuple. Ensuite, avec le nom des champs, on vérifie que les champs immuables sont restés identique à eux même. Si ils ont changé, c'est un spam, on ignore. Si ils n'ont pas changé, c'est un commentaire valable, on enregistre.

                Ensuite, à intervalle régulier, on fait un (c'est du sql imagé) "DELETE FROM 'antispam-map' where now-timestamp > 1 heure"

                Ainsi on efface les clés nom utilisées aant un temps limite (ici une heure). On a donc pas besoin de session, et c'est enregistré dans la BDD, et non pas en mémoire. Mais je rappelle que moi et le dev. web, c'est pas top ;-). Je ne sais pas si c'est faisable.
                • [^] # Re: Le spam, l'autre sens de la vie...

                  Posté par . Évalué à 2.

                  >Donc chaque fois qu'on génère la page, on crée un jeu de 6 identifiant, et on les place
                  > dans cette table, en rajoutant l'instant où ils sont crées.

                  Ton truc est très faisable mais. Paf. Là, tu stockes des trucs sur ton serveur. Toute
                  ma remarque vient du fait que ce n'est pas nécessaire.

                  A partir du moment où tu stocke des trucs sur ton serveur, il va falloir que tu décides quand
                  tu les libères. Or comme tout fonctionne en mode déconnecté, tu n'as aucun moyen de
                  savoir si le client prend juste du temps pour écrire son truc ou s'il est définitivement parti.
                  Tu vas donc mettre un limite de temps au bout de laquelle, si tu n'as pas de nouvelle
                  connection du client, tu zapes toutes les variables correspondantes.

                  Ce que je propose permet de ne rien stocker sur le serveur: pas de base de donnée,
                  pas de variables de session. Il y a aussi une limite de temps mais on ne peut pas la
                  supprimer. De plus, la gestion des variables de session ou d'une table SQL pour stocker
                  des trucs, ça a un coût qui augmente avec le nombre de connections.
                  Mon truc a un coût faible qui est constant.

                  > On a donc pas besoin de session, et c'est enregistré dans la BDD, et non pas en mémoire.

                  Parce que tu imagines que la BDD, elle n'a pas de cache mémoire et qu'elle écrit toujours
                  tout sur le disque ?
    • [^] # Re: Le spam, l'autre sens de la vie...

      Posté par . Évalué à 2.

      Mon hébergeur ne supportant pas la librairie GD (merci Nerim), je travail à l'implémentation d'un Captcha entierrement en HTML, pour Wordpress... Bon, pour l'instant je suis assez deçu.

      Le filtre antispam de Wordpress est tout de meme efficace : après un peu d'apprentissage, les commentaires spammant se retrouvent en "awaiting moderation".
  • # Fais un blog !

    Posté par . Évalué à -10.



    ,--, Suggestion : vous pouvez
    | | | Créer un blog
    |°_°| /¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    | | |
    | `-'

  • # C'est une bonne question !

    Posté par (page perso) . Évalué à 3.

    Je me demande également comment font les spammeurs de blogs... J'ai passé mon site perso sous dotclear il y a quelques temps, et effectivement, depuis quelques mois, les commentaires et les trackbacks sont pris d'assaut par du spam (de l'ordre de 10-15 par jour).

    Après une période pendant laquelle j'avais mis les commentaires sur modération uniquement (pas très convivial pour les utilisateurs non spammeurs), j'ai décidé d'installer spamplemousse. C'était super efficace pendant 2 semaines, mais depuis quelques jours les spams passent de nouveau... A chaque fois les mots clefs ne sont pas détectés ; alors je les rajoute, mais le lendemain c'est des nouveaux mots qui sont utilisés... A croire que quelqu'un surveille et adapte le contenu du commentaire pour contourner chaque nouvelle barrière ! C'est à devenir dingue oO !

    Et je confirme pour l'histoire du fax... Dans mon entourage aussi je vois cette antiquité revenir à la mode, parceque l'email "c'est pas pratique et puis c'est tout pollué on comprend rien". Un pas en avant, 2 pas en arrière...
    • [^] # Re: C'est une bonne question !

      Posté par (page perso) . Évalué à 5.

      Sauf que le fax aussi ça se fait spammer...

      Et c'est pire parce qu'on paye l'encre qui est utilisée par les spammeurs pour envoyer leur truc. Ma mère tient un magasin et son fax, elle est obligée d'enlever la cartouche et de la remettre lorsqu'ils attendent un fax bien précis.

      Bref, le spam ça existe depuis toujours.
      • [^] # Re: C'est une bonne question !

        Posté par (page perso) . Évalué à 2.

        oui mais là, t'as le numéro appelant et tu peux attaquer en justice. (c'est arrivé plus d'une fois)
      • [^] # Re: C'est une bonne question !

        Posté par (page perso) . Évalué à 2.

        On paie pas pour envoyer un fax normalement ? Le principe du SPAM, c'est qu'il suffit qu'un très faible pourcentage de gens soient interessés pour que ca fonctionne. Si il faut payer l'envoi du fax, ca perd tout son intéret. Y'a un moyen d'envoyer des faxs gratuitement ?
        • [^] # Re: C'est une bonne question !

          Posté par (page perso) . Évalué à 6.

          Tu peux appeler un fixe gratuitement (Free et la téléphonie IP)... donc je pense que tu dois pouvoir envoyer un fax gratuitement.
          • [^] # Re: C'est une bonne question !

            Posté par . Évalué à 3.

            Oui, et encore : Le SPAM n'est rentable par le nombre que lorsque l'on vend du V13GR4 ou autre, mais lorsque tu fais ta publicité en local en ciblant une liste d'entreprises, voire même que tu décroches ton téléphone pour appeler un particulier et tenter de lui fourguer une cuisine équipée, cela s'appelle du démarchage.

            Cela coûte cher, c'est une plaie pour les gens démarchés, le taux de rentabilité doit être grosso-modo le même que celui du spam e-mail pour un volume bien plus réduit, et pourtant il a fallu créer la liste orange pour que les abonnés du téléphone aient un semblant de tranquilité.

            Bref, faire sa pub semble être devenu une jungle impitoyable ...
          • [^] # Re: C'est une bonne question !

            Posté par (page perso) . Évalué à -1.

            Oui bien sûr, et tu envoi comment des datas sur de la VOIp ?
      • [^] # Re: C'est une bonne question !

        Posté par (page perso) . Évalué à 3.

        Moi je confirme que les fax aussi sont très très fortement spammés. Les particuliers, pas trop je pense, mais dès que vous avez une entreprise ou une assoce (qui en générale n'ont pas leur numéro en liste rouge, mais aisément diffusés et publics sur des listes), je peux vous assurer que vous recevez en permanence des fax de spam. Mais là où c'est encore plus chiant, c'est que -- comme dit plus haut -- l'encre et le papier coûte très cher.

        J'ai un ami dans ce cas. Il a un fax dans son bureau, et il reçoit en permanence du spam (il m'a dit pour au mini une cartouche d'encre par mois... et au prix de la cartouche!)... et ce même de nuit!! (vêcu, la nuit le fax sonne)
        En plus évidemment lui n'utilise jamais le fax (car contrairement à ce qui est dit dans le billet -- bien que je puisse aussi le comprendre -- le fax reste un truc archaïque et qu'il utilise uniquement son email, bien que spammé, mais au moins aisément filtrable) ou le tél. Mais parfois des contacts utilisent des fax pour envoyer des messages importants (même s'il comprend pas pquoi), donc il laisse le fax tourner.

        Donc voilà. Evidemment un informaticien conseillerait d'utiliser dans ce cas un ordi comme serveur pr recevoir les fax (et ainsi économiser papier et encre), mais comme il dort à côté de son bureau, et qu'il est pas informaticien, il veut pas dormir avec un bruit de ventilo à côté. Bon évidemment vous allez me répondre qu'on peut aussi trouver des systèmes d'ordi assez silencieux (je suis d'ailleurs en train de réfléchir à ce genre de système), mais bon c'est histoire de bien mettre en avant que ce n'est absolument pas une affaire si simple pour des gens qui n'ont pas le nez dans l'info et pour qui le fax est une vraie plaie quotidienne.

        Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

    • [^] # Re: C'est une bonne question !

      Posté par (page perso) . Évalué à 3.

      A chaque fois les mots clefs ne sont pas détectés ; alors je les rajoute, mais le lendemain c'est des nouveaux mots qui sont utilisés... A croire que quelqu'un surveille et adapte le contenu du commentaire pour contourner chaque nouvelle barrière ! C'est à devenir dingue oO !

      Je ne sais pas comment se passe exactement le refus, mais si le refus retourne un message d'erreur au lieu d'une véritable page d'acceptation (mais qu'en fait, le message spam n'est pas accepté et donc non mis dans la base), il suffit que le robots envoi un mail ou fasse une remontée de log directement à l'humain spammeur, et hop, il est prévènu dès qu'il y a un changement !!

      Alors, il suffit à l'humain spammeur d'adapter le robot !
      • [^] # Re: C'est une bonne question !

        Posté par (page perso) . Évalué à 2.

        A force je vais effectivement finir par croire que y'a un humain derrière le robot qui passe son temps à verifier si ces spams sont biens arrivés ou pas... Mais d'un autre côté, si c'était le cas, il verrait aussi que les spams ne tiennent jamais plus de 24h vu que je fais en sorte (comme tout le monde ici j'imagine) de les supprimer au plus vite du site !

        Et puis qui peut vraiment avoir envie de passer sa vie à surveiller les logs des robots de spam ? J'aurais un site avec des milliers de visites par jour je dis pas, mais enfin là faut pas exagerer. Bref, ça me dépasse ; le spammeur n'est pas humain surement...
        • [^] # Re: C'est une bonne question !

          Posté par (page perso) . Évalué à 2.

          Il n'y a certe pas un humain qui contrôle tous les PCs zombie de la planète, mais il y a sûrement un grand pourcentage de robots surveillés par un humain !

          Et tout comme ton blog est la cible de spammeur plutôt qu'un autre (certains dans ce journal disent ne pas être spammés), tu es tombé sur un robot qui est surveillé par un humain !

          De toute façon, les spammeurs savent bien que leur spam ne restent pas ! mais le but est de géner le monde et aussi le peu qui passe leur permet de faire un saut en avant dans les moteurs de recherches et donc d'attirer encore plus de monde sur leur site !

          De plus, le fait d'être un petit site les arrange : il n'y a pas une grosse boîte derrière avec les épaules solides pour mettre en place un système de remonté vers la source et ensuite attaque en justice !

          Une des preuves qu'un humain a bien une intervention dans le spam (au moins les mails) : je ne reçois pas la même quantité de spam pendant la semaine et les week-end, et pas non plus la même quantité de spam (et là, c'est beaucoup plus flagrant) pendant les périodes scolaires et les périodes de vacances !
    • [^] # Faire payer l'email ?

      Posté par (page perso) . Évalué à 1.

      Et je confirme pour l'histoire du fax... Dans mon entourage aussi je vois cette antiquité revenir à la mode, parceque l'email "c'est pas pratique et puis c'est tout pollué on comprend rien". Un pas en avant, 2 pas en arrière...


      Il y aurait bien une solution radicale mais un peu difficile à mettre en place techniquement (encore que)... Elle de plus en plus étudiée : la régulation par le marché, en rendant l'email payant.

      Je ne suis pas tout à fait convaincu par cette solution qui cumule beaucoup de désavantages :
      - difficile à mettre en place
      - retour en arrière (fin de la gratuité d'un service « historique » d'Internet)
      - comment choisir un prix qui soit à la fois juste vis-à-vis des gentils internautes, et contraignant pour les spammeurs ?
      - qui récoltera/décidera cette taxe ?
      • [^] # Re: Faire payer l'email ?

        Posté par (page perso) . Évalué à 7.

        et ça pose le problème des listes de diffusion. Posons le prix d'un email à 1. Si tu envoies un email sur debian-devel, ça te coùte 1.

        Mais le serveur envoie cet email à 1000 personnes ! Et donc pour chaque mail, Debian doit débourser 1000 !!!
        • [^] # Re: Faire payer l'email ?

          Posté par . Évalué à -3.

          Et pourquoi c'est Debian qui dois payer hein...?

          et pourquoi pas Ubuntu, ils ont de l'argent eux au moins...

          Toujours Debian...


          ..oo0O°O0oo.. je sors...
      • [^] # Re: Faire payer l'email ?

        Posté par (page perso) . Évalué à 3.

        Salut,

        je n'ai jamais été d'accord avec cette solution, ne serait-ce que parce que dans notre vie, on a tendance à tout vouloir capitaliser... comme si la solution, c'est toujours le fric. Or pour moi cette société a beau tout vouloir régler ainsi, j'ai l'impression qu'on a bien vu que ce n'est pas ça qui change quoi que ce soit. Mais bon je dois être le seul à avoir cette impression sans doute parce que les gens continuant à agir dans cette optique.
        Notez que mon message plus haut expliquant que le spam pour fax est très très répandu donne bien un exemple de cela. On sait tous que le tél est payant. Ca n'empêche pas les spammeurs d'envoyer leur pub de merde. Et après tout, c'est que ça doit leur être profitable quand même s'ils continuent à payer des comms téls (parce qu'il est évident que certaines personnes doivent se "faire avoir" à ces pubs).
        Ben là à mon avis, les spammeurs emails, ça doit sûrement être la même chose. Ca les empêchera pas de spammer. Ils feront peut-être un peu plus gaffe, c'est sûr. Seulement ils auront désormais un budget "spam". Puisqu'on est une société basant tout sur l'argent, il est normal que les entreprises spammant pensent de la même façon que cette société où elles vivent. Il n'y a donc aucune raison qu'elles ne soient pas capable de s'en arranger, bien au contraire.

        Mais bon sinon y a de nombreuses autres raisons bien plus simples:
        - Les mails utilisent des protocoles et formats ouverts. Cela signifie que quiconque a droit de l'utiliser tel qu'il le souhaite. Ainsi si certaines personnes veulent faire payer l'envoi de mail, qu'ils le fassent (certains le font d'ailleurs, puisqu'il existe des webmails payants depuis de très nombreuses années). Mais rien ne devrait empêcher qui que ce soit d'avoir un serveur privé, ou bien d'avoir un serveur public et proposer un service gratuit.
        C'est la définition même des protocoles ou formats ouverts, et le mail ne doit pas faire exception.
        Je rappelle une définition officielle française d'un format ouvert:

        On entend par standard ouvert tout protocole de communication, d’interconnexion ou d’échange et tout format de données interopérable et dont les spécifications techniques sont publiques et sans restriction d’accès ni de mise en ½uvre.

        cf http://www.legifrance.gouv.fr/WAspad/UnTexteDeJorf?numjo=ECO(...)
        Ainsi rendre le mail payant implique "restriction d'accès", donc rendre l'email format fermé (au sens admis de façons générale dans le monde et légalement défini en France en particulier). En plus, l'état français n'est nullement l'inventeur des proto et formats constituant l'ensemble de la chaîne d'envoi des emails. Je doute donc que légalement il serait très honnête d'en restreindre l'accès ainsi de manière obligatoire. Surtout que normalement quelque chose qui a été ouvert (donc libéré) un jour ne peut plus être fermé théoriquement. (ce genre de chose n'est pas rétroactif, c'est à la base même de nos sociétés. On ne peut pas autoriser un jour une utilisation totale et sans contrainte, puis un autre jour rendre ça illégal. C'est d'ailleurs une des différences majeures entre les formats ouverts ou fermés (mais gratuits), les seconds fournissant en général une licence disant en gros "nous sommes gratuits pour l'instant, mais nous nous réservons le droit de modifier cela à tout moment et vous pourrez rien faire, et en plus vous avez pas le droit d'utiliser notre technologie en dehors du cadre qu'on vout fournit".

        - Ce qui a fait le succès du mail, c'est la même chose qui a fait le succès du web en général: l'ouverture. Cela implique notamment la possibilité de gratuité. Ce fut voulu ainsi pour le web par Tim Berners Lee (et par extension le W3C). Ca devrait être la même chose pour le mail.
        Franchement pensez-vous que le mail aurait été une technologie si employée si d'une part elle avait été payante obligatoirement, d'autre part si elle avait été limitée? Bien sûr que non.
        C'est donc une énorme hypocrisie de faire payer cela après coup.

        - On sait tous ici que techniquement, c'est de ttes façons infaisable. A part espionner ouvertement les flux de réseau, on ne pourra empêcher les gens de créer des serveurs privés. Donc je dis pas, les grosses entreprises, ou bien les fournisseurs de mails seront surveillés, mais pas tout un chacun (enfin... espérons. C'est vrai que dernièrement on peut parfois se demander si les pires rêves de certains dictateurs sont pas en train de devenir réalité).

        - En plus, si jamais on se met à rendre les emails payants, qui sait les dérives que cela pourrait entraîner si ce n'est pas très bien pensé et régulé? Genre service moins cher pour envoyer en intra-serveur (d'où enfermement du client dans un système fermé autour d'une boîte), mais mail plus cher pour envoyer à un serveur concurrent. En gros, toutes les complications, et les "injustices" de services de téls à l'heure actuelle par exemple. On rejoint là potentiellement le blem de la "neutralité du net" (sujet politique d'actualité aux USA, cf http://savetheinternet.com/ pour plus d'infos).

        - Finalement y aura peut-être un peu moins de spam, mais y en aura forcément encore (cf plus haut, et notamment le parallèle avec les fax et le courrier postal, pourtant payants depuis belle lurette, et sûrement plus que le seraient les emails si un tel système se faisait). Et les gens utiliseront sûrement aussi beaucoup moins les mails (ils utiliseront à raison des alternatives comme les IMs. Moi même je sais que j'utiliserai plus les mails si c'était payant). Donc finalement moins de spam, mais moins d'utilité aux mails (on aura trouvé remplacement), soit un rapport utilité/bruit -- je pense -- égal. Pour le peu qu'on devra utiliser les emails, il est évident que ça semblera particulièrement pénible de devoir relever uniquement du spam (bien que moins). Ca ne fait que décaler le blem, absolument pas l'éliminer. Et au final, le plus emmerdé dans l'histoire sera l'utilisateur de base qui aura perdu un moyen de communication utile, simple, rapide, aisé d'accès (pour tous), etc.

        - Pleins d'autres trucs auxquels je pense pas là comme ça...

        En conclusion, rien ne vous empêche de créer des services payants d'emails comme beaucoup l'ont fait et le font encore (meilleur qualité de service peut-être, des options spécifiques dispo, comme webmail, pop3, smtp, transferts, répondeurs, filtres anti-spam, etc.). Par contre il ne faut pas rendre cela obligatoire. Les emails sont et reposent entièrement sur des formats ouverts, par pitié gardons un minimum de décence et protégeons ce genre d'acquis. Comme si on n'avait pas déjà assez de mal à ouvrir des formats, de même qu'à rendre les gens conscients de la nécessité de l'ouverture pour en plus devoir se soucier de sauvegarder ce qui est déjà. Ce serait un lamentable retour en arrière.

        Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]

        • [^] # Re: Faire payer l'email ?

          Posté par . Évalué à 3.

          Il y a surtout quelque chose que l'on ne met jamais en évidence, c'est que l'e-mail n'a pas besoin en soi d'être payant, contrairement au courrier postal qui lui est financé par les seuls envois.

          - Le courrier est financé par le timbre !
          - L e-mail est financé par l'abonnement que l'on verse à son fournisseur d'accès, dans le cadre du fonctionnement global du réseau.

          Cela me dérange que l'on essaie de faire faire l'amalgame dans l'esprit des gens, et encore plus que cela prenne.

          C'en est même assez inquiétant : on est habitué à payer pour certaines choses et pas pour d'autres, mais on ne sait plus pourquoi !

          Personnellement, une "taxe de principe", ça me dérange.
  • # et la vraie question...

    Posté par . Évalué à 3.

    Est-ce que ca marche ? Les spammeurs arrivent vraiment a booster leur pagerank avec ca ?

    Parce qu'un site qui a un bon pagerank est souvent un site bien maintenu, et les commentaires de spam ne restent jamais tres longtemps...
    • [^] # Re: et la vraie question...

      Posté par (page perso) . Évalué à 4.

      en plus dans dotclear, les liens dans les commentaires sont en "no follow"...

      Mais bon, les spammeurs ne visent pas un bon rendement. Avec des milliars de spams partout, 1% de succès serait déjà une réussite énorme !
  • # Peut-être déjà dit ...

    Posté par (page perso) . Évalué à 2.

    Celà a peut être déjà été évoqué, j'ai eu la flemme de lire tous les commentaires mais peut-être que les robots lisent la CSS. C'est pas si compliqué (il suffit de se concentrer sur la propriété hidden par exemple, ou sur les balises de formulaire et les classes utilisées dans les formulaires) et ca marche à priori pour toutes tes propositions.
  • # LA solution

    Posté par (page perso) . Évalué à 10.

    Moi j'ai un blog, et il n'y a jamais de spam.
    En fait, il n'y a jamais personne non plus.
    • [^] # Re: LA solution

      Posté par (page perso) . Évalué à 3.

      Tu veux dire qu'il est installé en local?
    • [^] # Re: LA solution

      Posté par (page perso) . Évalué à 2.

      J'ai aussi un blog et n'est jamais spammé.
      Je ne comprend pas, il est pourtant tres indexé (70% des visites sont celles de moteurs de recherches )
      • [^] # Re: LA solution

        Posté par . Évalué à 2.

        Le contenu de ton blog ne doit pas faire référence à ce que les bots cherchent. Les seuls trackbacks de spams que j'avais sur mon ancien site étaient pour de rares posts où je parlais de trucs connus, comme Les Simpson. Le reste ne recevait aucun spam.
        • [^] # Re: MA solution

          Posté par (page perso) . Évalué à 1.

          Pas convaincu ...
          Un billet spamé via trackbacks était le premier billet (first-post)
          Avec comme contenu « Ceci est le premier billet ».

          Je voulais aussi dire a ploum que sur le forum Vanilla installé chez campux.org (comme on se retrouve ;), il y a(vait) une page de feedback pour reporter les bugs rencotrés.
          Un formulaire de contact tout bête quoi ... Mais le mail envoyé à l'admin du forum contient l'User-Agent.

          J'ai reçu quelques spam, et l'User-Agent est :
          Agent utilisateur: libwww-perl/5.805
          Ça doit pas être très difficile à contourner, mais apparemment, les spammeurs ne corrigent pas ce détail...

          Un coup de grep dans les logs d'apache ...

          Ci joint, un exemple de ce que je recevais :
          ====================
          Agent utilisateur: libwww-perl/5.805
          Votre nom: Tommy
          Votre adresse email: agustin@e-mailanywhere.com
          URL où le bug est survenu: htp://adressespam.com/ro-----o/
          Qu'étiez-vous en train de faire quand vous avez rencontré le bug ?: a>hmef="http://www533.--------.com/pe------ons/"> pegasustorchons /a>, etc.

          Comme quoi, les spammeurs savent où mettre un nom, une adresse email, et un champ libre ...

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.