web-dev-qa-db-fra.com

Dois-je montrer au troll que je sais qu'il traîne?

Je crée une boutique en ligne qui possède de nombreuses fonctionnalités et fonctions.

Chaque fois qu'un utilisateur interagit avec le site, une notification est affichée.

Ces notifications doivent donner à l'utilisateur une réponse à son action et lui dire si l'action a réussi ou non et aussi si elle n'a pas réussi, lui dire ce qui a mal tourné.

J'ai également considéré et implémenté des fonctions de contrôle qui vérifient si l'utilisateur essaie de nuire à l'application, aux autres utilisateurs ou à la base de données. Si tel est le cas, je voudrais donner à l'utilisateur une notification qui lui montre que je sais ce qu'il fait et lui laisser le sentiment qu'il devrait plutôt s'arrêter maintenant car " nous voyons et connaître chaque pas qu'il fait ".

Exemples:

  • Formulaire de contact: L'utilisateur doit renseigner ses informations telles que son adresse email, son nom complet et un message,

    • s'il ne remplit pas un certain champ du formulaire, la notification " veuillez remplir votre [nom du champ vide] "
    • si l'utilisateur laisse tous les champs vides et appuie simplement sur le bouton d'envoi, la notification indique " veuillez ne pas nous envoyer de formulaires de contact vides "
  • Formulaire de rétroaction: L'utilisateur doit écrire un message, l'adresse e-mail et le nom sont facultatifs

    • s'il ne remplit pas le champ du message, il recevra la notification " veuillez écrire un message "
    • s'il remplit le champ e-mail avec une adresse e-mail non valide (par exemple asdf), la notification indique " Donnez-nous une véritable adresse e-mail ou laissez simplement le champ vide "
  • Suppression des informations de profil: L'utilisateur peut enregistrer des informations sur lui-même. Il est capable de modifier et de supprimer son profil

    • si l'utilisateur essaie de supprimer un profil qui ne lui appartient pas, la notification indique " vous ne pouvez pas supprimer les profils des autres utilisateurs, ne réessayez pas! "
  • etc. ...

J'aime la nature de ces messages de notification, mais je ne sais pas s'ils sont appropriés et utiles, surtout si, pour une raison quelconque, un utilisateur qui n'a pas vraiment tenté de nuire au système peut lire un message plutôt impoli.

Considérez-vous ces messages de notification utiles?

À votre avis, quels pourraient être les problèmes auxquels je dois faire face si j'utilise ce type de messages de notification?

Quelle serait une bonne alternative à ces messages de notification?


Addendum

Premièrement: merci pour votre temps, vos pensées et votre aide!

Je voudrais ajouter que les exemples donnés ne sont en aucun cas tous les messages de notification/lieux où les notifications se produisent. Je sais que (comme l'ont souligné msparer et Lego Stormtroopers), le comportement décrit n'est pas vraiment à la traîne. Pourtant, il existe de nombreuses autres fonctions où les trolls pourraient avoir un peu de fling (chat, revue de produit, support, etc.).

Je suis entièrement d'accord avec ce que Racheet a dit, qu'il n'y a aucun avantage réel à blâmer l'utilisateur, en particulier si quelqu'un déclenche accidentellement un message de notification conçu pour des utilisateurs malveillants.

J'aime aussi la façon dont the_Lotus gère les trolls et va certainement créer et implémenter quelque chose de similaire!

68
dabe

N'écrivez pas de messages d'erreur blâmant l'utilisateur. Il n'y a aucun avantage réel à faire cela.

Dans le cas où quelqu'un déclenche accidentellement ces messages d'erreur, vous endommagez votre relation avec eux. Même si vous parvenez à dire à un seul utilisateur malveillant que vous savez qu'il est malveillant, cela ne va pas le rendre meilleur comme vous.

Tout ce que vous faites, c'est endommager vos relations avec les utilisateurs honnêtes de votre site, afin de mieux endommager vos relations avec les utilisateurs malveillants de votre site.

Il n'y a aucun avantage pour vous ou vos utilisateurs.

173
Racheet

La première chose que vous devez savoir, c'est si c'est vraiment un troll. Vos exemples de formulaire de contact et de formulaire de commentaires n'ont rien à voir avec les trolls. C'est juste un message de rétroaction. Le troisième exemple ressemble à un hacker ou un script kiddie qui essaie quelque chose, pas de troll non plus.

Donc, pour les deux premiers exemples, choisissez un message d'erreur qui indique quoi faire, mais ne blâme pas l'utilisateur. Pour la troisième, je suggère de rediriger en silence vers une autre page, car la falsification des URL ne ressemble pas à un cas d'utilisation normal et n'a pas besoin de commentaires d'utilisateurs dédiés.

Mais comme votre question concerne les trolls, quelques conseils sur les trolls (je les traite beaucoup).

Reconnaître les trolls

Tout d'abord, il est important de savoir si c'est vraiment un troll que vous traitez. Par exemple. un commentaire qui semble suspect et/ou malveillant pourrait également être un nouvel utilisateur qui ne sait pas comment utiliser le système.

"La plupart des trolls sont des gens tristes, vivant leur vie solitaire par procuration à travers ceux qu'ils considèrent comme forts et prospères"

Perturber des systèmes stables et bouleverser les gens leur donne l'illusion du pouvoir. Faites donc attention aux utilisateurs qui insultent sans raison ou publient délibérément des commentaires erronés/insultants.

Si vous n'êtes pas sûr d'avoir affaire à un troll, vous pouvez demander à un utilisateur un commentaire/une contribution étrange. Mais soyez toujours poli! Si vous recevez une réponse grossière, ignorez-la et n'y répondez en aucune façon!

Ce qu'il ne faut PAS faire

Ne nourrissez pas le troll!

La pire chose que vous puissiez faire est de dire aux trolls ce que vous pensez vraiment d'eux. C'est comme punir un masochiste. Cela ne fera que motiver un troll à poursuivre la pêche à la traîne. La seule intention d'un troll est d'attirer l'attention et de déranger les autres. Donc, peu importe à quel point vous êtes en colère contre un troll (et croyez-moi, j'enverrais des gros gars avec des battes de baseball chez eux si je le pouvais) - ne le montrez tout simplement pas.

Que faire

S'il y a un troll, la meilleure chose qui puisse arriver - à part s'en aller - est qu'ils utilisent toujours le même nom d'utilisateur. Cela vous permet de garder un œil sur eux. Il ne serait donc pas judicieux de bloquer le nom d'utilisateur, car c'est exactement ce qu'ils visent. Comme mentionné, ils ont soif d'attention. Donc, ignorer et supprimer les contributions, le mieux automatiquement après un certain temps est la meilleure option.

Lectures complémentaires:

27
msp

Tout d'abord, comme je l'ai dit dans mon commentaire, aucune de ces actions n'est "à la traîne". Si ils sont malveillants, ils "piratent" ou "craquent" ou le verbe que vous souhaitez utiliser - mais pas à la traîne.

Traitez les pirates comme tout le monde, donnez-leur les mêmes informations que vous partageriez avec n'importe qui. En regardant vos exemples:

Formulaire de contact:

  • Si l'utilisateur laisse tout vide, informez-le poliment de cela: Nous apprécions vos commentaires, mais vous avez laissé le champ de commentaires vide. Veuillez ajouter quelques commentaires et nous pouvons travailler à l'amélioration de notre service.

Formulaire de commentaires: Vos réponses sont parfaites ici.

Suppression des informations de profil (ou toute action nécessitant des autorisations supplémentaires):

  • "Je suis désolé, votre compte ne dispose pas des autorisations pour [delete another users account]. Veuillez contacter un administrateur si vous pensez que votre compte a besoin de privilèges supplémentaires.

Il est important de noter ici que nous avons dit deux choses:

  1. Nous avons un système de privilèges et d'autorisations mis en place, vous devez donc répondre à des exigences spécifiques pour effectuer des actions spécifiques - cela devrait inciter un pirate à repenser sa cible
  2. Vous (l'utilisateur) n'êtes pas en faute, votre compte n'est peut-être pas configuré correctement, mais vous devrez peut-être effectuer cette action et nous vous avons donné une solution.

À la fin de la journée, considérez les crackers ou les trolls comme tous les autres utilisateurs, et ne leur donnez pas plus d'informations que vous n'en donneriez à d'autres. Chaque information supplémentaire que vous donnez à un pirate est une information ils n'en avaient pas auparavant.

Comme on dit de les tuer avec gentillesse, il n'y a que tant de fois qu'un troll verra "J'ai bien peur de ne pas pouvoir te laisser faire ça Dave" avant d'abandonner.

12
user31914

Pour répondre à la question dans le titre: ne le faites pas. Traitez la recherche de données (entrée de données non valide) pour ce qu'elle est: une entrée de données non valide.

La façon la plus simple d'empêcher les gens de "pêcher à la traîne"? Ne permettez pas aux utilisateurs de casser des choses. Si vous le faites, les utilisateurs joueront quand ils ne devraient vraiment pas.

Pour l'interface utilisateur du formulaire: n'autorisez pas l'utilisateur à cliquer sur Soumettre (grisez-le) à moins que tous les formulaires ne soient remplis. Précisez que tous les formulaires doivent être remplis (rendez-les rouges ..?).

Pour le backend: assurez-vous que les demandes sont autorisées , filtrées , et nécessaire . Pour les demandes adressées à/utilisateurs/{nom d'utilisateur}/supprimer, assurez-vous que {nom d'utilisateur} == le nom d'utilisateur associé au cookie de session de l'utilisateur. Faire un message d'erreur très générique (comme mentionné dans réponse de Francisco , où il utilise des messages d'erreur ennuyeux/longs pour contrecarrer les trolls. Pour lier le problème de formulaire, faites des requêtes de désinfection du serveur. Si quelqu'un envoie un message vide formulaire (ou données invalides), lancez une erreur.

5
Luke Adams

Pour vos réponses dans votre interface utilisateur, supposez que l'utilisateur est un véritable utilisateur qui fait une erreur. Ce sont les seules cibles de votre interface utilisateur. Pour des raisons de sécurité, assurez-vous de ne donner aucune indication aux utilisateurs malveillants sur la manière de contourner la sécurité. Par exemple, dites des choses comme "votre nom d'utilisateur ou votre mot de passe est incorrect" et non "votre mot de passe est incorrect" parce que vous ne voulez pas donner à un pirate l'information qu'il a deviné un nom d'utilisateur correctement.

Votre entreprise ne fait pas d'argent avec les trolls et les pirates, vous ne devriez donc pas perdre votre temps à concevoir une interface utilisateur pour eux. Et chaque fois que vous confondez un véritable utilisateur avec un hacker ou un troll, vous avez la possibilité de perdre un client, ou pire de l'ennuyer tellement qu'il met les gens en garde contre votre entreprise. Il est même possible que votre réponse leur fasse croire que votre site est piraté et dangereux.

Vous avez donné un exemple de tentative de suppression du compte d'un autre utilisateur. J'ai de gros problèmes de sécurité ici. Bien sûr, un utilisateur peut saisir des données qui devraient faire référence à son compte de manière incorrecte (et vous pouvez les dire). Il devrait être absolument impossible de saisir des données faisant référence à un autre compte par accident. Si un utilisateur peut le faire, il semble que votre site ait un problème (pas dans la conception de l'interface utilisateur, mais ailleurs).

5
gnasher729

Si vous avez un moyen d'identifier avec précision un troll, vous voulez qu'il cesse de s'engager avec votre site Web. Vous avez un tas d'options pour le faire.

Vous pouvez augmenter le temps de chargement des pages. Lorsque votre site Web devient lent, la pêche à la traîne devient moins amusante. Ignorer aléatoirement 10% des clics de souris de l'utilisateur aurait un effet similaire.

En ce qui concerne le contenu soumis par l'utilisateur, vous pouvez prétendre au troll qu'il a soumis le contenu avec succès, mais masquer le contenu à tous les autres utilisateurs.

2
Christian

Vous pouvez également considérer cela d'un point de vue de la sécurité. Une ou deux actions comme celle-ci d'une personne peuvent être une erreur. Les tentatives répétées sont une attaque. Bien que je ne prendrais pas d'actions qui les inciteraient à faire exprès ("mec, vous devrez faire plus d'efforts pour soumettre un commentaire!") Si vous pouvez clouer les demandes d'application invalides d'une personne/source, puis les verrouiller en dehors. C'est simple à dire bien sûr. Les détails sont plus difficiles: combien de temps sont-ils verrouillés, toutes les actions invalides comptent-elles comme les autres, etc.

Voir Mozilla AppSensorproject pour plus d'informations sur cette approche.

1
hofo