Ich erinnere mich an eine Seite, die wegen Missbrauch geschlossen wurde, und ich frage mich, ob Bots einen Teil davon haben. Wenn der Bot etwas auf meiner Seite veröffentlicht, wie kann ich es bekämpfen? Ich habe überlegt, einige Cookies zu setzen und die Cookies über JavaScript + Zeitstempel und Signatur ändern zu lassen (daher können die Cookies von gestern heute und in der nächsten Woche nicht verwendet werden).
Ich bin sicher, die meisten Leute / Bots würden einfach eine andere Seite benutzen, anstatt JavaScript in ihrem Bot zu aktivieren.
Was kann ich sonst noch tun? Ich denke an ein tägliches POST-Limit und einen Honeypot für generische Bots, die nur zufällig Spam posten.
quelle
John Conde skizziert viele gute Ansätze. Das Problem bei der Auswahl einer Anti-Bot- / Anti-Spam-Technik ist die Ausgewogenheit von Effektivität und Benutzerfreundlichkeit. Es wäre wirklich unpraktisch, jedes Mal ein CAPTCHA ausfüllen zu müssen, wenn Sie einen Kommentar oder eine Nachricht posten möchten. Wenn Sie jedoch nur ein CAPTCHA bei der Anmeldung benötigen, kann dies Spammer manchmal nicht abschrecken.
Einige der passiven Techniken sind eine gute Alternative, da sie keine menschlichen Handlungen erfordern. Das Problem ist, dass Bots immer ausgefeilter werden und wenn Bots CAPTCHAs lösen können, dann können sie sicherlich JS und CSS verarbeiten. Sie müssen also ein wenig Einfallsreichtum zeigen, beispielsweise mit weniger offensichtlichem CSS, um Ihre Bot-Trap-Felder auszublenden.
Aufgrund Ihrer Frage ist Ihnen jedoch wahrscheinlich klar, dass es nicht darum geht, eine bot-sichere Website zu erstellen, sondern nur um eine ausreichende Abschreckung zu schaffen, mit der Bot-Benutzer einfach andere einfachere Ziele auswählen können. Was hier erforderlich ist, ist von Standort zu Standort unterschiedlich und erfordert wahrscheinlich einige Versuche und Fehler. Ich würde zuerst die am wenigsten aufdringlichen Techniken ausprobieren.
Schließlich können Sie Ihre Website auch durch Peer-Moderation von Bot-eingereichten Kommentaren oder manuell eingereichten Spam-Mails reinigen.
quelle
Wie John Conde in seiner 1) und Sie erwähnten, kann Honeypot in den meisten Fällen und auf den meisten Websites sehr gut funktionieren. Wenn es jemals von einem Bot erledigt wird, können Sie auch eine der anderen von John erwähnten Methoden anwenden. Aber ehrlich gesagt, sollte dies der Trick sein, wenn Ihre Website wenig oder durchschnittlich besucht ist.
Beispiel, einer meiner Favoriten:
Jetzt, wenn das Formular gesendet wird, wird ein extrem hoher Prozentsatz von Bots sowohl "email" als auch "email_address" ausfüllen, aber Menschen werden nur das ausfüllen, was sie sehen, "email" und nicht "email_address". Also müssen Sie in Ihrem `/ process-form'-Code nur überprüfen, ob email_address zur Bestätigung (nicht) leer ist.
Einfach und effektiv.
quelle