Conseils pour prévenir le spam

:bookmark: Cette documentation fournit un guide complet sur la prévention du spam dans les forums Discourse, et inclut des informations sur divers paramètres et outils conçus pour aider à maintenir un environnement communautaire exempt de spam.

:person_raising_hand: Niveau d’utilisateur requis : Administrateur

Sur la plupart des forums, le spam est rare. Cependant, si vous rencontrez des problèmes de spam sur votre site, Discourse propose de nombreux outils pour vous aider à prévenir automatiquement le spam.

Le guide suivant offre des recommandations sur la façon dont vous pouvez aider à prévenir le spam, tout en maintenant un environnement positif et accueillant pour votre communauté.

Détection du spam avec Discourse AI

La détection du spam par l’IA de Discourse est l’une des meilleures fonctionnalités de Discourse pour la détection automatisée du spam. Contrairement à d’autres outils, elle peut bloquer automatiquement les utilisateurs et les publications sur la base de règles préconfigurées. La détection du spam par l’IA est disponible pour tous les utilisateurs sur l’hébergement Discourse, et sur les sites auto-hébergés avec un LLM configuré.

Les avantages de la détection du spam par l’IA incluent :

  • Automatisation : Aucune intervention manuelle n’est nécessaire pour bloquer les spams évidents.
  • Personnalisation : Vous pouvez l’adapter aux besoins uniques de votre communauté.
  • Évolutivité : Fonctionne bien même lorsque les communautés subissent de lourdes attaques de spam.
  • Compatibilité étendue : Gratuit (sur l’hébergement Discourse) et des LLMs économiques comme GPT-4, Claude 3.5 et Gemini Flash peuvent gérer efficacement la détection du spam.

Configuration de la détection du spam par l’IA

:megaphone: Ceci est désormais activé par défaut pour les clients Starter et Standard

Activez-le simplement dans les paramètres d’administration → plugins → IA → Gestion du spam (détails ici).

Par défaut, il utilise un prompt que Discourse a adapté pour nos sites, mais vous pouvez ajouter des instructions personnalisées spécifiques à votre site.

Exemple de prompt adapté

:information_source: Avec Discourse AI, vous pouvez également utiliser le bot créatif IA pour générer des prompts adaptés spécifiques aux besoins de votre site.

Niveaux de confiance par défaut

Le niveau de confiance par défaut pour les nouveaux utilisateurs sur votre site peut être ajusté sur la page .../admin/site_settings/category/trust, cependant, nous recommandons de maintenir le niveau de confiance par défaut défini sur 0.

Si vous avez modifié la valeur de ce paramètre, nous vous recommandons vivement de le remettre à 0 : nouvel utilisateur, car modifier ce paramètre peut mettre votre site à risque sérieux de spam, en raison de la manière dont les niveaux de confiance interagissent avec les paramètres liés au spam de Discourse.

Paramètres de site liés au spam

:warning: Sauf si vous rencontrez spécifiquement des problèmes de spam, nous recommandons de maintenir les paramètres suivants à leurs valeurs par défaut.

Discourse dispose de plusieurs paramètres de site liés au spam auxquels vous pouvez accéder sur la page .../admin/config/spam de votre site.

Ces paramètres peuvent être ajustés pour augmenter ou diminuer la sensibilité de la détection du spam, et la rigueur des conséquences associées à la publication de spam.

Voici quelques-uns des paramètres liés au spam les plus couramment ajustés qui ont un impact notable sur la façon dont le spam est géré sur un site.

Les valeurs par défaut de tous les paramètres sont affichées ci-dessous.

Masquer les publications

Les paramètres sensibilité de masquage des publications et minutes de récupération après masquage des publications contrôlent la probabilité qu’une publication signalée soit automatiquement masquée par Discourse, et la durée pendant laquelle un utilisateur doit attendre avant de pouvoir modifier une publication signalée et masquée.

Mettre en silence les nouveaux utilisateurs

Discourse dispose d’un paramètre de site nombre d'utilisateurs pour mettre en silence un nouvel utilisateur, qui mettra automatiquement en silence un nouvel utilisateur si ses publications sont signalées comme spam par un certain nombre d’utilisateurs uniques.

Par défaut, cela est défini sur 3, vous voudrez peut-être donc envisager de réduire cette valeur si vous rencontrez régulièrement des problèmes de spam provenant du même/des mêmes utilisateur(s).

Limiter les liens

Discourse limite le nombre de publications qu’un nouvel utilisateur peut faire contenant des liens vers un domaine externe avec le paramètre seuil d'hôte de spam pour les nouveaux utilisateurs. Si les nouveaux utilisateurs de votre site spamment fréquemment des liens vers le même domaine, vous voudrez peut-être envisager de réduire la valeur de ce paramètre.

Limiter les adresses IP

Discourse limite le nombre de nouveaux comptes qu’un utilisateur peut créer depuis n’importe quelle adresse IP donnée. Si vous constatez que des utilisateurs problématiques sur votre site créent à plusieurs reprises des comptes pour spammer votre site, vous pourriez envisager de réduire cette valeur par défaut.

Il existe également une case à cocher signaler les faux-jumeaux que vous pouvez activer pour empêcher les utilisateurs de créer plusieurs comptes et de commenter ensuite le même sujet :

De plus, vous pouvez rechercher manuellement les adresses IP des utilisateurs problématiques sur leur page d’administration dans les champs Dernière adresse IP et Adresse IP d'inscription, et supprimer les autres comptes associés à la même adresse IP.

Ou envisagez de bloquer les adresses IP utilisées par les spammeurs sur la page “Journaux → Adresses IP filtrées” (.../admin/logs/screened_ip_addresses) :

Ajuster les exigences de signalement

Par défaut, un sujet doit être signalé par 5 utilisateurs uniques avant que Discourse ne suspende automatiquement la publication sur ce sujet.

Vous pouvez ajuster le paramètre de site nombre de signalants pour fermer le sujet pour augmenter ou diminuer le nombre de signalants requis pour suspendre la publication sur un sujet, et ajuster le paramètre sensibilité de fermeture automatique du sujet pour modifier la probabilité que le sujet en question soit automatiquement fermé à la place.

Mots surveillés

Les Mots surveillés sont une autre excellente fonctionnalité pour aider à bloquer ou limiter les publications contenant des mots, des phrases ou des liens URL que les spammeurs pourraient utiliser de manière répétée.

Envisagez d’ajouter des mots “Bloqués” ou “Mis en silence” à votre site si vous constatez que les spammeurs utilisent fréquemment les mêmes types de texte dans leurs publications.

Pour une utilisation plus avancée des Mots surveillés, vous pourriez également envisager d’utiliser les expressions régulières avec les Mots surveillés.

Augmenter les exigences de niveau de confiance

Si vous constatez que le spam provient principalement d’utilisateurs de niveau TL0, vous voudrez peut-être également ajuster certains paramètres de niveau de confiance pour rendre plus difficile l’atteinte du niveau TL1 :

Plugin hCaptcha

Le plugin Discourse hCaptcha vise à renforcer la sécurité et la protection contre les bots en intégrant hCaptcha dans le formulaire d’inscription local.

:sparkles: Sur tous les sites hébergés par Discourse, ce plugin est automatiquement inclus.

Étapes supplémentaires

Comprendre pourquoi les utilisateurs spamment votre site est important. S’ennuient-ils, sont-ils malveillants ou cherchent-ils à se promouvoir ?

Des suggestions pour faire face à l’utilisateur difficile, ainsi qu’à une variété d’autres sujets de modération, peuvent être trouvées dans le guide de modération de Discourse, vous voudrez peut-être donc lire ce guide pour obtenir des idées supplémentaires concernant la modération de votre site.

En dehors de ce qui précède, renforcer votre équipe de modération à court terme, afin que vous ayez une couverture complète, est une autre bonne approche pour combattre le spam. La clé est d’user les utilisateurs problématiques jusqu’à ce qu’ils s’ennuient et partent.

Si vous rencontrez continuellement des problèmes de spam après avoir suivi ce guide, vous pourriez également envisager de placer toutes ou certaines des publications des nouveaux utilisateurs dans la file d’attente de révision avec les paramètres approuver le nombre de publications, approuver sauf si groupes autorisés, ou approuver les nouveaux sujets sauf si groupes autorisés :

Le paramètre approuver sauf si groupes autorisés exige que les publications créées par des utilisateurs ne faisant pas partie des groupes spécifiés soient approuvées. Les publications créées par les administrateurs et les modérateurs sont toujours approuvées.

Le paramètre approuver les nouveaux sujets sauf si groupes autorisés exige que les nouveaux sujets créés par des utilisateurs ne faisant pas partie des groupes spécifiés soient approuvés. Les sujets créés par les administrateurs et les modérateurs sont toujours approuvés.

Cependant, il est important de vous assurer que vous avez suffisamment de modérateurs à portée de main pour gérer cela, car cela peut potentiellement rendre difficile pour les nouveaux utilisateurs de commencer à interagir avec le site si les publications ne sont pas approuvées.

18 « J'aime »

Je ne peux pas parler pour tous les forums, mais sur un forum où j’étais TL3, il y avait au moins un message de spam encore visible lorsque je me connectais pour la première fois de la journée dans mes catégories surveillées. Et sur celui dont je suis actuellement modérateur, nous recevons en moyenne 2 messages de spam par jour. Je pense donc que c’est quelque peu courant sur de nombreux forums, d’après cela.

5 « J'aime »

Une expression régulière très utile est \\d{3}-\\d{4}|[\\w+\\-.]+@[a-z\\d\\-]+(\\.[a-z\\d\\-]+)*\\.[a-z]+ qui bloque les adresses e-mail et les numéros de téléphone. N’oubliez pas d’activer les paramètres - publication - « expressions régulières de mots surveillés ».

7 « J'aime »

Salut :wave:

J’ai beaucoup utilisé ces astuces sur mon forum, alors… merci ! :heart:

Existe-t-il un paramètre qui peut être activé pour que seuls les nouveaux utilisateurs s’inscrivant depuis un domaine gmail.com, par exemple, soient envoyés dans la file d’attente de révision ?

Actuellement, tous les nouveaux utilisateurs sont envoyés dans la file d’attente pour révision, mais j’ai constaté que la majorité des utilisateurs spam sont ceux qui utilisent une adresse e-mail Gmail. Envoyer uniquement ceux-là dans la file d’attente de révision réduirait la charge et le temps de révision, du moins pour moi :sweat_smile:

1 « J'aime »

@SaraDev Savez-vous si c’est possible ? J’aimerais aussi savoir car ce serait très utile de bloquer non seulement les adresses IP mais aussi des domaines spécifiques !

1 « J'aime »

Il n’existe pas de fonctionnalité principale dans Discourse pour envoyer des publications uniquement d’utilisateurs d’un domaine spécifique (par exemple, gmail.com) vers la file d’attente de révision.

La fonctionnalité la plus proche est le paramètre du site domaine de messagerie à approbation automatique, qui permet à certains domaines de messagerie de contourner le processus manuel d’approbation des utilisateurs en approuvant automatiquement les utilisateurs de ces domaines.

Il existe également des paramètres pour les domaines de messagerie bloqués et les domaines de messagerie autorisés qui permettent de restreindre ou de contrôler qui peut s’inscrire sur votre site en fonction de leurs domaines de messagerie :

Cependant, tous ces paramètres nécessiteraient que le paramètre doit approuver les utilisateurs soit activé, et n’auraient un impact que sur les utilisateurs s’inscrivant initialement sur un site, et non sur l’interaction entre la création de publications et la file d’attente de révision.

En guise de solution de contournement, vous pourriez utiliser les Groupes pour accomplir une fonctionnalité similaire. Par exemple, vous pourriez créer un groupe personnalisé et ajouter automatiquement les utilisateurs qui s’inscrivent avec une adresse e-mail spécifique au groupe, puis ajouter ce groupe aux paramètres approuver sauf groupes autorisés et approuver les nouveaux sujets sauf groupes autorisés.

Avec ce type de configuration, vous pourriez effectivement contourner la file d’attente de révision pour les utilisateurs d’un domaine spécifique, tout en envoyant d’autres publications à la file d’attente de révision si vous le souhaitez.

2 « J'aime »

Bonjour, je me demandais s’il était possible de forcer un captcha lors de la création de sujets et/ou de messages ?

Je ne sais pas, mais à quoi sert qu’un bot puisse contourner le captcha lors de la connexion ? Il peut alors faire de même lors de la publication.

C’est vrai, mais il semble y avoir une prise en charge des captcha pour l’inscription, alors je me demandais si la même chose existait pour la création de sujets/messages.

Nous avons constaté que plusieurs clients ont été victimes de grosses attaques de spam récemment, et ce qu’ils avaient tous en commun, c’est qu’ils ont ouvert une ou plusieurs catégories à « tout le monde » - « créer », contournant ainsi toutes les restrictions de niveau de confiance.

Pour les administrateurs expérimentés de Discourse, il est évident que c’est une mauvaise idée, mais pour les personnes moins expérimentées, ce n’est pas le cas. Il pourrait donc être judicieux d’énoncer l’évidence (pour nous) et d’ajouter cela au premier message du sujet.

7 « J'aime »

Ces derniers temps, nous avons affaire à des spammeurs qui utilisent l’enregistrement automatique, puis tentent de créer de nouveaux sujets avec du contenu généré par l’IA qui ressemble à de véritables demandes de conseils, mais qui incluent des liens d’affiliation Amazon. Ils masquent généralement ces liens avec divers moteurs de raccourcissement d’URL. Ils sont capables de répondre aux réponses et même de discuter en MP de manière amusante. Quelqu’un a-t-il vécu cela ? Je me demande si, étant donné que ces tentatives semblent entièrement automatisées, il y aurait beaucoup d’autres forums Discourse ciblés. Avez-vous des conseils sur une stratégie pour les couper ?

1 « J'aime »

Salut @Overgrow,

Voici quelques idées que vous pourriez essayer pour éviter cela :

  • Utilisez Discourse AI - Triage IA pour Configurer la détection de spam dans votre communauté afin de détecter ce type de contenu.
  • Ajoutez les raccourcisseurs d’URL et les modèles de liens d’affiliation Amazon à votre liste de mots surveillés bloqués.
  • Diminuez le seuil newuser spam host threshold et augmentez les exigences pour TL1.
  • Réduisez max new accounts per registration IP et activez flag sockpuppets.
  • Utilisez le plugin Discourse hCaptcha pour aider à prévenir les enregistrements automatisés de spam/IA sur votre site.
  • Envisagez de placer tout le contenu des nouveaux utilisateurs dans la file d’attente de révision jusqu’à ce que l’attaque diminue en ajustant :
    • approve post count
    • approve unless trust level
    • approve new topics unless trust level

L’approche ici sera similaire à la prévention du spam en général, avec une attention particulière aux URL raccourcies et au contenu généré par IA.

Pour votre cas ici, vous pourriez essayer d’utiliser une invite IA spécifiquement pour détecter le contenu IA comme suit :

Vous êtes un système de détection de spam. Analysez le contenu et le contexte suivants.

Notes :
- Les réponses doivent rester pertinentes par rapport au fil de discussion.
- Marquez comme SPAM si le contenu est non pertinent, promotionnel ou automatisé.
- Considérez les publications de nouveaux utilisateurs avec des liens comme du SPAM potentiel, sauf si explicitement pertinent pour le sujet.

Surveillez le contenu qui semble authentique mais présente des schémas non naturels.
Recherchez du texte avec des formulations particulières, un excès de formalité mêlé à un langage informel, ou des conseils génériques qui ne correspondent pas tout à fait au contexte.
Signalez le contenu contenant des liens d'affiliation cachés, surtout si la publication semble conçue pour mener naturellement à des recommandations de produits.

Portez une attention particulière à ces signaux d'alarme :
1. Contenu qui se présente comme de véritables demandes de conseils mais contient des éléments promotionnels.
2. Publications qui introduisent un problème puis suggèrent des produits spécifiques comme solutions.
3. La présence de raccourcisseurs d'URL (bit.ly, tinyurl, t.co, goo.gl, etc.) qui peuvent masquer des liens d'affiliation.
4. Liens ou références de produits Amazon, en particulier avec des paramètres d'affiliation (tag=, ref=, affiliate=).
5. Contenu qui semble demander des recommandations mais oriente subtilement vers des produits spécifiques.
6. Texte de qualité artificielle - langage trop formel mêlé à des expressions informelles ou une structure maladroite.
7. Nouveaux comptes publiant du contenu présentant l'un des schémas ci-dessus.

Répondez uniquement par "SPAM" ou "PAS SPAM".
3 « J'aime »

J’ai beaucoup de mal avec les comptes de bots ces derniers temps. J’ai dû désactiver les nouvelles inscriptions d’utilisateurs pour la deuxième fois. Hier, j’ai dû supprimer une cinquantaine de comptes de bots avec environ 30 publications de spam. J’ai déjà activé hcaptcha avec un puzzle difficile, mais cela ne les a pas arrêtés. J’étais sur la version 3.5.0 mais je viens de passer à la 3.6.0 juste après l’attaque. Nous n’autorisons déjà pas les liens au niveau de confiance 0 et exigeons 30 publications avant d’autoriser les liens, mais ces publications ne sont que des murs de texte sur les agents de voyage et d’autres absurdités aléatoires. J’ai également eu des comptes et des publications d’IA qui font référence au contenu réel du forum mais qui n’ont pas tout à fait de sens. Ceux-ci sont quelque peu divertissants pour notre base d’utilisateurs, mais bref, je ne voulais pas activer l’IA sur le forum mais j’ai l’impression d’avoir épuisé toutes les autres options. Cependant, j’obtiens ce message :

Mais je ne vois nulle part où ajouter ladite configuration ?

Surtout, si l’IA peut aider avec le spam, je ne pense pas que l’activation de celle-ci aidera à la création des comptes de bots en premier lieu, ou me trompé-je ?

1 « J'aime »

Si approve post count est défini sur 1. Alors est-il toujours nécessaire de modifier ceux-ci ?

Honnêtement, je ne connais pas la réponse à cette question.

Oui, si approve_post_count est réglé sur 1, vous devez toujours examiner ces autres paramètres.

Comment ces paramètres interagissent :

approve_post_count (réglé sur 1) :

  • Affecte les utilisateurs avec niveau de confiance 0 et 1
  • Nécessite l’approbation de leur premier message
  • Après 1 message approuvé, ils peuvent publier librement (en supposant qu’ils sont toujours TL0 ou TL1)

approve_unless_allowed_groups (anciennement approve_unless_trust_level) :

  • Affecte tout le monde ne faisant pas partie des groupes spécifiés
  • Nécessite l’approbation de tous les messages (pas seulement le premier)
  • Affecte tout le monde ne faisant pas partie des groupes spécifiés

approve_new_topics_unless_allowed_groups (anciennement approve_new_topics_unless_trust_level) :

  • Affecte tout le monde ne faisant pas partie des groupes spécifiés
  • Nécessite l’approbation uniquement pour les nouveaux sujets (pas les réponses)

La différence essentielle :

  • approve_post_count est temporaire - une fois que les utilisateurs atteignent le seuil de nombre, ils peuvent publier librement
  • Les paramètres « unless allowed groups » sont permanents - ils s’appliquent à TOUS les messages/sujets des utilisateurs ne faisant pas partie des groupes spécifiés, quel que soit le nombre de messages qu’ils ont publiés

Vous pourriez également combiner des paramètres pour un meilleur contrôle de la publication sur votre site, par exemple :

  • Utiliser approve_post_count: 1 pour examiner les premiers messages des nouveaux utilisateurs (TL0/TL1)
  • Utiliser les paramètres approve_unless_allowed_groups pour une modération continue de tous, à l’exception de groupes spécifiques (par exemple, les membres TL2+)

Cela crée une approche où les nouveaux utilisateurs sont modérés initialement, et vous pourriez également contrôler qui obtient la liberté continue de publier sans approbation.