[SPIP Zone] Lutte contre le SPAM

Assailli par le SPAM, j'ai décidé d'ajouter une lame au Couteau Suisse qui tente de lutter contre ces messages malveillants.

*Je lance un appel à vos expériences* afin de rassembler toutes les techniques de lutte.

Pour ce soir, je n'ai pas trouvé grand chose, mis à part analyser dans mes_options toutes les variables $_POST commençant par 'texte|titre|sujet|auteur|email'.
Heureusement, SPIP oblige une double validation, ce qui permet d'intercepter et d'analyser ces variables.

technique 1 : censurer les messages contenant des balises <a></a>
technique 2 : censurer les messages contenant des mots blacklistés
  (pour l'instant, j'ai mis que des mots anglais...)
technique 3 : la vôtre ?

Merci d'avance à tous !

Pat

* Pat tapotait, le 14/08/2007 03:42:

technique 3 : la vôtre ?

1 - désactiver tous les liens dans les messages <Connexion · GitLab;
2 - n'avoir que des forums avec «modération a priori» (ce qui est quasiment obligé en France depuis la LcEN).
3 - Olivier G. a un capcha sympa : 2 cases à cocher,
  1, je suis un humain,
  2, je suis un robot

--
RealET

Selon RealET <real3t@gmail.com>:

* Pat tapotait, le 14/08/2007 03:42:
> technique 3 : la vôtre ?
3 - Olivier G. a un capcha sympa : 2 cases à cocher,
  1, je suis un humain,
  2, je suis un robot

Ah oui, quelques précisions (une chance que je regarde ce sujet par hasard) :
les names des champs sont aléatoire, c'est un hash de la date et d'une chaîne à
déterminer à la main (vive CFG).

Le code derrière vérifie que le name du champ est bien celui du jour ou celui
d'hier (pour gérer les commentaires écrits avant minuit et postés après minuit).
Le commentaire est posté si le champ je suis un humain est rempli *et* si le
champ
je suis un robot ne l'est pas. Si aucun champ n'est rempli, ou les deux champs
le sont, on passe en mode preview, si seul le champ 'robot' est rempli, il y a
un die.

Voilà.
--

Olivier G.

Moi c'est le genre de fonctionnalité qui me fait bondir tellement ca devient lourd pour l'utilisateur de passer son temps à cocher ce genre de question, recopier des images etc ... à chaque formulaire rempli sur le web.
C'est le prototype de la fonctionnalité visible et encombrante qui apporte de la gêne à l'utilisateur.
Je bondis donc à chaque fois qu'un fan de captcha et autre formulaire de ce type sévit sur cette liste pour m'insurger contre.
Ce genre de solution simplifie la vie du développeur et complique celle des utilisateurs, alors que c'est le rôle des développeurs de se compliquer la vie pour simplifier celle des utilisateurs.

<troll>Moi j'utilise f&t et je n'ai que du spam humain sur mes formulaires de contact</troll>

Cédric

Olivier GENDRIN a écrit :

Selon RealET <real3t@gmail.com>:

* Pat tapotait, le 14/08/2007 03:42:
    

technique 3 : la vôtre ?
      

3 - Olivier G. a un capcha sympa : 2 cases à cocher,
  1, je suis un humain,
  2, je suis un robot
    
Ah oui, quelques précisions (une chance que je regarde ce sujet par hasard) :
les names des champs sont aléatoire, c'est un hash de la date et d'une chaîne à
déterminer à la main (vive CFG).

Le code derrière vérifie que le name du champ est bien celui du jour ou celui
d'hier (pour gérer les commentaires écrits avant minuit et postés après minuit).
Le commentaire est posté si le champ je suis un humain est rempli *et* si le
champ
je suis un robot ne l'est pas. Si aucun champ n'est rempli, ou les deux champs
le sont, on passe en mode preview, si seul le champ 'robot' est rempli, il y a
un die.

Voilà.
  

Selon "cedric.morin@yterium.com" <cedric.morin@yterium.com>:

Moi c'est le genre de fonctionnalité qui me fait bondir tellement ça
devient lourd pour l'utilisateur de passer son temps à cocher ce genre
de question, recopier des images etc ... à chaque formulaire rempli sur
le web.
C'est le prototype de la fonctionnalité visible et encombrante qui
apporte de la gêne à l'utilisateur.
Je bondis donc à chaque fois qu'un fan de captcha et autre formulaire de
ce type sévit sur cette liste pour m'insurger contre.
Ce genre de solution simplifie la vie du développeur et complique celle
des utilisateurs, alors que c'est le rôle des développeurs de se
compliquer la vie pour simplifier celle des utilisateurs.

Sur le principe je suis d'accord avec toi. Dans mon cas concret, soit je
trouvait une solution efficace pour limiter le spam, soit je fermait
complètement mes commentaires, parce que je n'avais pas le temps de tout gérer
(oui, il y a des filtres bayesiens qui permettent de faire le tri, mais il y a
des faux positifs, par exemple un message de Fil, qui a crié à la censure du
coup).

--

Olivier G.

RealET a écrit :

* Pat tapotait, le 14/08/2007 03:42:

technique 3 : la vôtre ?

1 - désactiver tous les liens dans les messages <Connexion · GitLab;
2 - n'avoir que des forums avec «modération a priori» (ce qui est quasiment obligé en France depuis la LcEN).
3 - Olivier G. a un capcha sympa : 2 cases à cocher,
  1, je suis un humain,
  2, je suis un robot

1. En ce qui concerne les liens, j'y avais déjà pensé. Un message contenant une balise <a></a> est systématiquement refusé.
2. La «modération a priori» c'est LE grand moyen... Mais c'est du boulot supplémentaire et pas trop dans l'esprit...
3. Là, il s'agit d'une modif du formulaire lui-même, et une suspicion clairement exposée... Un moyen plus silencieux face au rédacteur serait l'idéal.

Il me semblait que limiter l'anti-SPAM à une analyse de certains $_POST qui transitent d'une page à l'autre pourrait suffire pour barrer la route à une majorité de robots...

Pat

cedric.morin@yterium.com a écrit :

Moi c'est le genre de fonctionnalité qui me fait bondir tellement ca devient lourd pour l'utilisateur de passer son temps à cocher ce genre de question, recopier des images etc ... à chaque formulaire rempli sur le web.
C'est le prototype de la fonctionnalité visible et encombrante qui apporte de la gêne à l'utilisateur.
Je bondis donc à chaque fois qu'un fan de captcha et autre formulaire de ce type sévit sur cette liste pour m'insurger contre.
Ce genre de solution simplifie la vie du développeur et complique celle des utilisateurs, alors que c'est le rôle des développeurs de se compliquer la vie pour simplifier celle des utilisateurs.

Oui, merci Cédric, je suis aussi de ton avis. Je pense qu'on n'est pas encore à court de techniques pour traquer les imposteurs sans importuner l'utilisateur humain.

<troll>Moi j'utilise f&t et je n'ai que du spam humain sur mes formulaires de contact</troll>

Faut-il que j'étudie ton code alors? lol
Comment fais-tu? Tu as blindé les formulaires?

Moi j'utilise les formulaires natifs de SPIP et le SPAM est plutot rare. Mais quand a arrive, c'est un vrai tsunami !

Pat

Olivier GENDRIN a écrit :

Selon "cedric.morin@yterium.com" <cedric.morin@yterium.com>:

Ce genre de solution simplifie la vie du développeur et complique celle
des utilisateurs, alors que c'est le rôle des développeurs de se
compliquer la vie pour simplifier celle des utilisateurs.

Sur le principe je suis d'accord avec toi. Dans mon cas concret, soit je
trouvait une solution efficace pour limiter le spam, soit je fermait
complètement mes commentaires, parce que je n'avais pas le temps de tout gérer
(oui, il y a des filtres bayesiens qui permettent de faire le tri, mais il y a
des faux positifs, par exemple un message de Fil, qui a crié à la censure du
coup).

Pour mon cas personnel, une simple liste de mots récurrents a bloqué l'attaque... C'est peut-être pas suffisant pour l'avenir, mais bon.

En tout cas les robots ont déjà bien compris la double validation de SPIP :wink:

Pat

On 8/14/07, Pat <patfr@ifrance.com> wrote:

Pour mon cas personnel, une simple liste de mots récurrents a bloqué
l'attaque... C'est peut-être pas suffisant pour l'avenir, mais bon.

En tout cas les robots ont déjà bien compris la double validation de
SPIP :wink:

Depuis que j'ai mis la modèration, ça c'est calmé chez moi, mais j'ai
aussi mis en place une verification du contenu des messages.
En général c'est par vague est les contenus sont assez facile à
identifier: tjs les mêmes urls, etc.. etc..
du coup, quand y'avais une nouvelle URL, je l'ajoutai à la main dans
le pattern...

J'avais regardé du côté d'un moteur d'apprentissage bayessien, mais ça
m'a parut overkill alors qu'un simple pattern arrivait assez bien à
tout attraper.

On pourrait imaginer un plugin qui s'oqp de cela et centralise une
liste noire/blanche de qu'il faut laisser passer...

Pierre

Pierre Andrews a écrit :

J'avais regardé du côté d'un moteur d'apprentissage bayessien, mais ça
m'a parut overkill alors qu'un simple pattern arrivait assez bien à
tout attraper.

J'ai eu la meme réaction :wink: Et puis un apprentissage bayesien, c'est bien mais faut l'assister humainement, car ce n'est pas infaillible.

On pourrait imaginer un plugin qui s'oqp de cela et centralise une
liste noire/blanche de qu'il faut laisser passer...

C'est ce que j'avais commmencé à faire. Pour ma part c'est facile, je ne surveille que des sites en français. Alors, tant que le SPAM est anglais, les mots anglais tendancieux, OUT !

Pat

Selon Pat <patfr@ifrance.com>:

2. La «modération a priori» c'est LE grand moyen... Mais c'est du boulot
supplémentaire et pas trop dans l'esprit...

Mais ça pose des problèmes légaux, car ça implique que le message a été lu par
l'administrateur, et donc que ce dernier c'est assuré qu'il ne contenait pas
d'injures ou de calomnie, par exemple...

--

Olivier G.

Olivier GENDRIN a écrit :

Selon Pat <patfr@ifrance.com>:

2. La «modération a priori» c'est LE grand moyen... Mais c'est du boulot
supplémentaire et pas trop dans l'esprit...

Mais ça pose des problèmes légaux, car ça implique que le message a été lu par
l'administrateur, et donc que ce dernier c'est assuré qu'il ne contenait pas
d'injures ou de calomnie, par exemple...

La loi prohibe-t-elle les forums à modération a posteriori ? Il s'agit souvent d'un délai de quelques heures...
Ca fait une très mauvaise impression lorsqu'on laisse un message sur un site et qu'il n'est publié qu'après vérification humaine... OK pour les sites officiels, sensibles ou très sérieux.. Mais personellement, je n'ai pas envie de l'imposer pour les sites associatifs...

Pat

<troll>spip-contrib est hors la loi !</troll>

Pat a écrit :

Assailli par le SPAM, j'ai décidé d'ajouter une lame au Couteau Suisse qui tente de lutter contre ces messages malveillants.

*Je lance un appel à vos expériences* afin de rassembler toutes les techniques de lutte.

J'ai utilisé avec succés des patterns pour filtrer.
Maintenant plus trop de problemes avec le filtre spip.

Mais un nouveau spam envahit l'espace privé :
le spam de réferer dans les pages de statistiques
des pages détaillées.
Avec en plus l'icone de l'écran referer capturé,
ça prend de la place et ça bousille complètement la page.
JLuc

<quote who='Pat' when='14/08/2007 12:34'>

1. En ce qui concerne les liens, j'y avais déjà pensé. Un message contenant une balise <a></a> est systématiquement refusé.

J'arrive avec du retard, pardon.

C'est embêtant de désactiver ça, parce que souvent quand je commente sur un site j'essaie de faire des liens propres, notamment avec le hreflang - et si on bloque systématiquent les liens, c'est mort.

--
Stéphane Deschamps
  http://www.nota-bene.org/
  http://www.paris-web.fr/
  http://www.pompage.net/

<quote who='cedric.morin@yterium.com' when='14/08/2007 10:15'>

<troll>Moi j'utilise f&t et je n'ai que du spam humain sur mes formulaires de contact</troll>

Pour nous autres simples mortels, c'est quoi f&t ? :slight_smile:

--
Stéphane Deschamps
  http://www.nota-bene.org/
  http://www.paris-web.fr/
  http://www.pompage.net/

Stéphane Deschamps a écrit :

<quote who='cedric.morin@yterium.com' when='14/08/2007 10:15'>

<troll>Moi j'utilise f&t et je n'ai que du spam humain sur mes formulaires de contact</troll>
    
Pour nous autres simples mortels, c'est quoi f&t ? :slight_smile:

f&t = plugin form et tables

---
Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000766-1, 17/08/2007
Analyse le : 18/08/2007 10:00:15
avast! - copyright (c) 1988-2007 ALWIL Software.

Stéphane Deschamps a écrit :

<quote who='cedric.morin@yterium.com' when='14/08/2007 10:15'>

<troll>Moi j'utilise f&t et je n'ai que du spam humain sur mes formulaires de contact</troll>

Pour nous autres simples mortels, c'est quoi f&t ? :slight_smile:

C'est le plugin Forms & Table, un outil très puissant quand on sait bien servir :slight_smile:

A voir : Forms & tables - carnet de notes - SPIP-Contrib

Fredo.