it-swarm.com.de

Wie kann ich Spam auf Websites verhindern, die ich kontrolliere?

Dies ist eine allgemeine Community-Wiki-Frage, die alle unspezifischen Fragen zur Spam-Prävention beantwortet.

Wenn Ihre Frage als Duplikat dieser Frage geschlossen wurde und Sie der Meinung sind, dass die hier angegebenen Informationen keine ausreichende Antwort liefern, eröffnen Sie bitte eine Diskussion über Pro Webmasters Meta .


Für die Zwecke dieser Frage umfasst Spam Folgendes:

  • Beliebiger automatisierter Post
  • Manuell geposteter Inhalt, der Links zu Spammerseiten enthält
  • Manuell geposteter Inhalt mit Anweisungen zum Aufrufen der Website eines Spammers
27
danlefree

Die folgende Liste ist nach der relativen Einfachheit der Implementierung, den Wartungskosten und der Wirksamkeit der Spam-Prävention gegliedert:

Deaktivieren Sie alle benutzergenerierten Inhalte

Dies ist eine Scorched-Earth-Lösung, die das Wachstum einer Benutzergemeinschaft auf Ihrer Website beeinträchtigt. Sie erspart Ihnen jedoch auch die Zeit und Mühe, sich mit Spam oder Spam-Prävention zu befassen.

Abgesehen von der Deaktivierung von benutzergenerierten Inhalten gibt es keine garantierte Lösung, um das Auftreten von Spam (oder anderen unerwünschten Inhalten) zu verhindern. Eine Lösung, die die meisten Spammer abschreckt, sollte jedoch ausreichen, wenn Sie auch die Ihrer Website bereitstellen Besucher mit der Option, Inhalte als Spam zu kennzeichnen.

Outsourcing von benutzergeneriertem Content Management

Dienste wie Disqus ermöglichen es Webmastern, die Überprüfung, Speicherung und Veröffentlichung von benutzergenerierten Kommentaren auszulagern. (Hinweis: Für die Verwendung eines Drittanbieter-Dienstes ist zusätzliche Konfiguration erforderlich, um sicherzustellen, dass Kommentare von Suchmaschinen indiziert werden.)

CAPTCHA

Per Wikipedia , CAPTCHA steht für "Completely Automated Public Turing Test, um Computer und Menschen auseinander zu halten". Jeder automatisierte Test, mit dem verhindert werden soll, dass ein Computer Inhalte veröffentlicht, ist ein CAPTCHA: Dazu gehört, dass Benutzer Buchstaben, Zahlen und Wörter aus Bildern lesen, einfache Worträtsel oder mathematische Fragen lösen oder auf andere Weise "beweisen", dass sie Personen sind.

Der Nachteil von CAPTCHA ist, dass

  1. Die meisten Formen von CAPTCHAs stören die Benutzer.

  2. Sie sind nicht 100% schützend. Beachten Sie, dass viele dieser Tests von Computern durchgeführt werden können, wenn ein kompetenter Programmierer beschließt, genügend Zeit und Mühe in das Problem zu investieren

Q & A CAPTCHA

Das effektivste CAPTCHA für kleine Websites ist das Frage- und Antwort-CAPTCHA. Ein Q & A CAPTCHA ist eine Frage, die ein Benutzer auf einer Website beantworten muss. Die Frage ist etwas, das jeder, der die Site besucht, wissen würde, aber dass ein Computerprogramm es nicht wissen würde. Eine Beispielfrage für eine Site über SEO wäre "Wofür steht SEO?". Diese Frage wäre für den durchschnittlichen Leser dieser Site leicht zu beantworten, aber jedes Computerprogramm wäre dazu nicht in der Lage.

HINWEIS: Fragen wie "Was ist 1 + 1?" Funktionieren nicht gut, da sie häufig verwendet werden und die Leute, die Spambots erstellen, sie so programmieren, dass sie solche Fragen richtig beantworten.

Wenn Ihre Site jedoch viel Verkehr hat, programmieren Spammer ihre Roboter so, dass sie diese Fragen automatisch beantworten, und das Q & A-CAPTCHA ist nicht mehr wirksam.

Verstecktes Feld

Wenn Sie ein Formular haben und möchten, dass Spammer es nicht verwenden können, können Sie es am besten mithilfe eines ausgeblendeten Felds stoppen. Diese sind sehr einfach einzurichten: Fügen Sie Ihrem Formular ein redundantes Feld hinzu, verstecken Sie es durch CSS (oder JavaScript) und stoppen Sie alle Versuche, einen Wert in dieses Feld einzugeben. Normale Benutzer können das Feld nicht sehen und ignorieren es, da es vor ihnen verborgen ist. Von Spammern verwendete Computerprogramme versuchen jedoch, einen Wert in dieses Feld einzugeben, da sie kein CSS oder Javascript verarbeiten. Um Spambots zu schlagen, die CSS oder Javascript laden, können Sie den Formularen ein zusätzliches Feld hinzufügen, in dem Sie aufgefordert werden, es leer zu lassen. Jeder menschliche Besucher lässt es leer und Sie können die Bots, die dem Feld Daten hinzufügen, einfach blockieren. Vergessen Sie nicht, dass die Website dadurch möglicherweise unprofessionell aussieht.

Traffic- und Content-Analyse

Spammer haben eine begrenzte Anzahl von Netzwerken und Computern, über die sie posten können (und die sie normalerweise verwenden, bis sie nicht mehr funktionieren). Datenverkehrsanalyselösungen erfassen Daten von einer großen Anzahl von Hosts, um festzustellen, ob ein Beitrag bekannten Spam-Inhalt enthält oder von einem Host oder Netzwerk eines bekannten Spammers stammt.

Es gibt eine Vielzahl von CAPTCHA- und Traffic-Analyse-Lösungen von Drittanbietern, die kostenlos (oder kostengünstig) verwendet werden können. Die meisten Open-Source-Content-Management-Programme enthalten integrierte Module für die Nutzung von Diensten wie Akismet und reCAPTCHA .

Blockieren Sie häufig in Spam enthaltene Wörter

Wenn Sie feststellen, dass Spam auf Ihrer Website häufig Wörter enthält, die von legitimen Benutzern nicht verwendet werden (oder nicht) (z. B. "kostenlose Links zu Ihrer Website"), ist es eine affektive Lösung, Benutzer daran zu hindern, diese Wörter zu veröffentlichen. Wenn Sie Bedenken haben, dass Benutzer, die diese Wörter in ihren Posts legitim verwenden, Probleme beim Posten auf Ihrer Site haben, können Sie den Filter so einstellen, dass er Posts von etablierten Benutzern ignoriert.

rel="nofollow"

Spammer konzentrieren sich in der Regel auf Websites, auf denen sie Links veröffentlichen können, denen Suchmaschinen folgen (wodurch der Suchrang der von ihnen beworbenen Website verbessert wird).

Sie können Ihre Website für Spammer weniger attraktiv machen, indem Sie rel="nofollow" zu den Links hinzufügen, die in benutzergenerierten Inhalten enthalten sind. Dieser Ansatz funktioniert jedoch möglicherweise nicht, da die meisten Spam-Mails automatisiert sind und Spammer nicht wissen, ob oder nicht Eine Site verwendet rel="nofollow" Links.

Moderation durch Benutzer

Inhalte können jedoch von jedermann gepostet werden. Sobald sie auf der Website angezeigt werden, können sie auch als Spam gekennzeichnet und entfernt werden. (Diese Option ist in der Praxis nur dann sinnvoll, wenn Besucher Spam-Inhalte als relativ selten empfinden: Spam darf nützliche Kommentare übertreffen Die meisten Besucher werden sich nicht darum kümmern, Spam zu melden.

Gamification

Gamification ist eine großartige Möglichkeit, Benutzer dazu zu motivieren, Spam zu melden. Erwägen Sie, Ihrer Website eine "Flaggengewichtung" hinzuzufügen: Je mehr Spam-Nutzer melden, desto mehr Punkte erhalten sie. Auf diese Weise macht das Aufspüren von Spam mehr Spaß und es werden Personen, die Spam melden, Rechte eingeräumt. Dies wiederum ermutigt die Benutzer, Spam zu melden.

Moderation durch Administratoren

Ein Mensch muss alle veröffentlichten Inhalte überprüfen, bevor sie auf der Website veröffentlicht werden. Dies verhindert zwar nicht, dass Spam veröffentlicht wird, verhindert jedoch, dass Spam für die Besucher der Website angezeigt wird (was den Wert der Website für menschliche Spammer verringert). .

Benutzer Registration

Die Benutzerregistrierung ist eine Verbesserung gegenüber CAPTCHA, da Benutzer nur gezwungen sind, ihre menschliche Identität zu beweisen einmal, bevor sie nach Belieben Kommentare abgeben können - dies ist technisch gesehen keine andere Form der Spam-Prävention, obwohl dies der Fall ist Die Entfernung von Spam, der von einem bestimmten Benutzer oder einer bestimmten Benutzergruppe (wie durch Benutzername, E-Mail-Adresse, IP-Adresse oder einen anderen identifizierenden Faktor angegeben) verursacht wurde, ist einfacher zu erzwingen.

Moderate neue Benutzer

Anstatt jeden Beitrag zu genehmigen, kann ein Administrator die Registrierungen neuer Benutzer überprüfen, um zu bestimmen, ob ein Benutzer genehmigt werden soll oder nicht, basierend darauf, ob die Registrierung des Benutzers mit identifizierten Spammern oder automatisierten Spambots übereinstimmt.

Begrenzen Sie neue Benutzerfunktionen

Menschliche Spammer werden sich selten daran erinnern, zu Konten zurückzukehren, die sie erstellt haben, wenn sie keinen freien Spam auf einem Konto veröffentlichen können. Neue Benutzer müssen eine festgelegte Anzahl von Posts erstellen (wenn die Community die Möglichkeit hat, Spam zu kennzeichnen) und/oder auf einen Satz warten Zeitspanne, bevor Einschränkungen für das Posten von Links oder mehreren Posts aufgehoben werden.

Benutzer für Mitgliedschaft aufladen

Wenn Sie für die Mitgliedschaft eine Gebühr erheben, müssen Spammer die Kosten für die Mitgliedschaft mit dem Wert für das Versenden von Spam auf Ihrer Site abwägen (und zugunsten einfacherer Ziele auf Ihre Site übergehen).

Nur geladene Gäste

Wenn Sie nur Personen zulassen, die von anderen Benutzern eingeladen wurden, sich zu registrieren, wird dies den Spam erheblich reduzieren (Menschen laden normalerweise keine Roboter ein).

Das Folgende ist von Projekt BOTCHA , Drupal.

Honigtopf

Implementierung von Honeypot-Trap . Das Wesentliche ist, dass das Feld mit einem bestimmten Wert zum Formular hinzugefügt wird, der dann von JS geändert wird. Spam ist jede Form der Übermittlung, deren berechneter Wert nicht dem von uns benötigten Wert entspricht.

HoneyPot2

Dasselbe wie oben, aber als Berechnungsquelle wird nicht der Wert eines bestimmten Feldes verwendet, sondern die Daten aus CSS.

ObscureUrl

Ähnlich wie bei HoneyPot2: Konstruiert von JS wird mit dem Bedarf verglichen. Der Unterschied besteht darin, dass der Anfangswert über den GET-Parameter übergeben wird.

Fazit

Die meisten Webmaster werden feststellen, dass eine Mischung der oben aufgeführten Lösungen (mit Ausnahme des Nichtzulassens von benutzergenerierten Inhalten) am besten für ihre Website funktioniert und mindestens eine Lösung muss implementiert werden um zu verhindern, dass automatisierte Spam-Mails die Diskussionen der Besucher unterdrücken.

27
danlefree

Wir haben kürzlich beseitigt den Spam aus unserem Kontaktformular mit einer sehr einfachen Implementierung. Wir haben eine Eingabe mit der Bezeichnung "URL:" in das HTML-Formular eingefügt und sie für die tatsächlichen Benutzer unsichtbar gemacht. Dann prüfen wir im Formularprozessor, ob es einen Wert hat, und handeln entsprechend.

Die Spambots ziehen die ganze Zeit den Köder an. Sie geben eine URL zu einer Spam-Site ein. Unser Skript sieht das und wirft den Kommentar weg (tatsächlich recyceln wir die Teile, weil wir versuchen, eine umweltfreundlichere Art von Unternehmen zu sein). Wir haben den anstößigen Kommentar noch eine Weile in einer Datenbanktabelle gespeichert, um ihn dann zu überprüfen. Wir haben uns jedoch geweigert, die Ergebnisse irgendwo per E-Mail zu versenden. So wissen wir, dass es funktioniert hat.

Mit dieser einfachen Methode gingen wir von mehr als 30 Spam-Nachrichten "Kontakt" pro Tag zu ZERO.

Viel Glück mit was auch immer Sie wählen!

5
WebDevKev

Ich habe ein Forum, in dem ich vorübergehend anonyme Beiträge freigeschaltet habe. Ich wollte Captcha nicht verwenden, da ich selbst oft Schwierigkeiten habe, sie zu lesen, was dazu führen kann, dass keine Kommentare abgegeben werden. Um Spam vorzubeugen, habe ich Akismet verwendet, um eingehende Nachrichten abzufangen. Akismet ist nicht kugelsicher, aber es hat mir das Leben sehr erleichtert.

Sie müssen sich jedoch der False Positives bewusst sein. Ich habe also ein "Spam-Attribut" für mein Post-Objekt erstellt und es auf den Rückgabewert von Akismet gesetzt. Wenn ein Beitrag als Spam markiert würde, würde ich mich selbst und eine E-Mail geben, wonach ich entscheiden könnte, ob es sich um Spam handelt oder nicht.

1
Dofs

Bitte besuchen Sie MediaWiki.
Suche nach Erweiterung: Moderation
Mit dieser Erweiterung können Sie Spam auf Websites verhindern, die Sie kontrollieren.
Ich habe diese MediaWiki-Erweiterung oft benutzt.
Und es hindert Bots daran, Spam-Artikel zu erstellen.

0
jehovahsays