Wie funktionieren Spambots?

43

Ich habe ein Forum, das häufig von Forum-Spambots heimgesucht wird, und natürlich ist es der beste Weg, etwas zu besiegen, Ihren Feind zu kennen. Ich werde mich später darum kümmern, diese Spambots zu besiegen, aber jetzt würde ich gerne mehr darüber erfahren. Als ich herumlas, war ich überrascht über den Mangel an gründlichen Informationen zu diesem Thema (oder vielleicht meine Unfähigkeit, die richtigen Suchbegriffe für bessere Google-Ergebnisse einzugeben).

Ich bin daran interessiert, alles über Spambots zu lernen. Ich habe in anderen Foren nachgefragt und Antworten wie "Spambots sind immer Benutzer, die sich auf Ihrer Website registrieren." Erhalten.

  • Wie funktionieren Forum-Spambots?
  • Wie finden sie die Seite "Registrierung neuer Benutzer"? (Ich bin besonders überrascht, weil einige Foren keine eigene URL dafür haben, z. B. www.forum.com/register.html, sondern stattdessen Abfragezeichenfolgen oder andere Methoden verwenden, die für die URL-Leiste unsichtbar sind.)
  • Woher wissen sie, was sie in jedes Feld für die Registrierung neuer Benutzer eingeben müssen?
  • Wie bestimmen sie, auf welche Seite sie Spam senden / Daten eingeben können und auf welche nicht?
  • Sehen sie diese Seite überhaupt an?
  • ..Wenn nicht, dann würde ich annehmen, dass sie direkt mit dem Server kommunizieren - wie ist das möglich? Wie machen Sie das?
  • Können Forum-Spambots CAPTCHAs brechen? Können sie logische Fragen lösen (wie?)? Mathematische Fragen?
  • Entwickeln sie clientseitige Anti-Bot-Validierungsskripte zurück? Serverseitige Skripte?
  • Welche Techniken sind noch gültig, um sie zu verhindern?
  • Woher kommen Spambots? Sitzt jemand kichernd hinter dem Computer und beobachtet, wie sein Bot Site für Site zerstört? Oder kichern sie, während sie es einfach irgendwie ins Internet "veröffentlichen"? Werden Spambots von einem infizierten Computer irgendwo "ausgeführt"? Replizieren sie sich selbst?
  • usw
rlb.usa
quelle

Antworten:

48

Wie finden sie die Seite "Registrierung neuer Benutzer"? (Ich bin besonders überrascht, weil einige Foren keine eigene URL dafür haben, z. B. www.forum.com/register.html, sondern stattdessen Abfragezeichenfolgen oder andere Methoden verwenden, die für die URL-Leiste unsichtbar sind.)

Sie finden neue Websites nach:

  • Durchsuchen und Suchen nach Signaturen bekannter Software. Normalerweise ist dies ein Textausschnitt wie ein Copyright oder ein Meta-Tag, aber es kann sich um eine beliebige konsistente Kennung handeln. Dies gilt normalerweise für Blog- und Forensoftware.
  • Manuelle Aufnahme. Menschen, deren Arbeit in vielen Teilen der Welt billig ist, suchen nach bekannter Software oder Formulare, die sich leicht ausnutzen lassen, und fügen sie einer Datenbank hinzu. Dies gilt normalerweise für benutzerdefinierte Registrierungs- und Kontaktformulare.
  • Sie kaufen Listen. Ebenso wie E-Mail-Adressen von Spammern verkauft werden, werden auch bekannte anfällige oder bevorzugte Zielseitenlisten verkauft.

Woher wissen sie, was sie in jedes Feld für die Registrierung neuer Benutzer eingeben müssen?

Sie wissen, was in jedes Feld einzugeben ist, indem sie die Feldnamen als Richtlinie verwenden. In 99,99% der Fälle heißt das E-Mail-Adressfeld "E-Mail" oder enthält das Wort "E-Mail". Sie müssen kein Raketenwissenschaftler sein, um zu wissen, dass es sich bei diesem Feld wahrscheinlich um eine E-Mail-Adresse handelt. Für Dinge wie Namen, Login-ID, Adressen usw. funktioniert es nach dem gleichen Prinzip.

Wie bestimmen sie, auf welche Seite sie Spam senden / Daten eingeben können und auf welche nicht?

Es ist ihnen egal. Die automatisierten Tools können so viele Formulare in so kurzer Zeit praktisch kostenlos testen. Daher ist es ein Kinderspiel, alle möglichen Formulare zu testen. Wenn menschliche Arbeitskraft involviert ist, können sie "Drehbuchkinder" sein und das offensichtliche Zeug ausprobieren, um zu sehen, ob sie irgendeine Art von Antwort erhalten, die anzeigt, dass das Formular potenziell anfällig ist. Grundsätzlich ist jedes Formular ein potenzielles Ziel für sie, ebenso wie jede Seite, die Benutzereingaben akzeptiert.

Wie funktionieren Forum-Spambots?

Sehen sie diese Seite überhaupt an? ..Wenn nicht, dann würde ich annehmen, dass sie direkt mit dem Server kommunizieren - wie ist das möglich? Wie machen Sie das?

Woher kommen Spambots? Sitzt jemand kichernd hinter dem Computer und beobachtet, wie sein Bot Site für Site zerstört? Oder kichern sie, während sie es einfach irgendwie ins Internet "veröffentlichen"? Werden Spambots von einem infizierten Computer irgendwo "ausgeführt"? Replizieren sie sich selbst?

Es ist alles automatisiert. Tools wie xrumer werden gebaut und verkauft und bieten die Möglichkeit, Software mit bekannten Schwachstellen auszunutzen. Jeder kann es kaufen und nach dem Aufstellen ist es mehr oder weniger Feuer und vergessen. Es geht zu jedem Forum in seiner Liste und versucht, es nach besten Kräften zu spammen. Gerade wegen der rohen Gewalt ist es erfolgreich und es lohnt sich für die Spammer. Deshalb hören sie nie auf. Sie müssen kaum einen Finger rühren, damit es funktioniert.

Können Forum-Spambots CAPTCHAs brechen? Können sie logische Fragen lösen (wie?)? Mathematische Fragen?

Ja aber nicht immer Kommt darauf an, wie gut es umgesetzt wird. Aber viele Captchas, einschließlich der von großen Unternehmen angebotenen, wurden geschlagen und sind praktisch nutzlos. Deshalb sind mehrere Arten von Schutz erforderlich, um sie zu stoppen. Selbst dann kann der Mensch normalerweise jedes System schlagen.

Welche Techniken sind noch gültig, um sie zu verhindern?

Aus einer früheren Antwort : Sie könnten mehrere Dinge tun (und sollten mehr als eine tun), einschließlich:

1) Ein falsches Feld setzen, das nur Bots sehen können. Wenn dieses Feld zusammen mit dem Rest des Formulars gesendet wird, können Sie es ignorieren (und gegebenenfalls sperren). Sie können auch fehlerhafte Bots abfangen, die einem versteckten Link folgen .

2) Verwenden Sie ein CAPATCHA wie reCAPTCHA

3) Verwenden Sie ein Feld, bei dem der Benutzer eine Frage wie 5 + 3 beantworten muss. Jeder Mensch kann darauf antworten, aber ein Bot weiß nicht, was zu tun ist, da er Felder basierend auf Feldnamen automatisch ausfüllt. Das Feld ist entweder falsch oder fehlt. In diesem Fall wird die Einreichung abgelehnt.

4) Verwenden Sie ein Token und fügen Sie es in eine Sitzung ein und fügen Sie es dem Formular hinzu. Wenn das Token nicht mit dem Formular übermittelt wird oder nicht übereinstimmt, wird es automatisiert und kann ignoriert werden.

5) Suchen Sie nach wiederholten Einsendungen von derselben IP-Adresse. Wenn Ihr Formular nicht zu viele Anfragen erhalten sollte, aber plötzlich von einem Bot getroffen wird, sollten Sie in Betracht ziehen, die IP-Adresse vorübergehend zu blockieren.

6) Verwenden Sie Akismet . Es ist großartig, um Spam zu identifizieren.

John Conde
quelle
5
+1 für die gründliche Antwort. Ich hatte ein Spam-Problem und implementierte das versteckte Formularelement und nannte es "E-Mail" / "E-Mail" und die Eingabe der realen E-Mail-Adresse, die ich "Adresse" nannte. Nie mehr Spam!
10. März,
1
Ein guter Beitrag zum Umgang mit Trollen (die Idee ist die gleiche für Spambots): codinghorror.com/blog/2011/06/suspension-ban-or-hellban.html .
Ercpe
Für die Captchas hängt es davon ab, mit welchem ​​Werkzeug sie besiegt werden. Es gibt Software-Programme, die manchmal (und nicht immer) Captchas erhalten, und dann gibt es Dienste, die billige Arbeitskräfte zum Lösen von Captchas verwenden, und diese haben eine höhere Erfolgsquote.
ub3rst4r
11

Wie funktionieren Forum-Spambots?

Talentierte (wenn auch böse) Programmierer schreiben sie - es gibt wahrscheinlich so viele verschiedene Arten von Spambots wie es Leute gibt, die sie schreiben, aber leider sind nur wenige Spambot-Autoren erforderlich, die ihre Arbeit teilen und verkaufen, um das Leben der Administratoren zu ruinieren ...

Eine beliebte Spamming-Anwendung im Forum heißt "xrumer".

Mir ist zwar klar, dass dies nicht alle Ihre Fragen beantwortet, aber ich denke, es muss erwähnt werden, dass alles, was ein Bot nicht gut kann (wie das Lösen komplexer nicht statischer logischer Fragen), von einem schlecht bezahlten Arbeiter in Übersee erledigt werden kann. Spammen ist ein Geschäft wie jedes andere und es gibt keinen Mangel an billigen Arbeitskräften, die für das Versenden von Spam-Nachrichten eingesetzt werden.

danlefree
quelle
4
Ich habe das Gefühl, ich habe gerade zugesehen, wie eine Kuh in einer Fleischfabrik verarbeitet wird. Aber sehr informativ.
rlb.usa
Interessantes Video, komisch, dass es am Heiligabend gemacht wurde; Datum war 25.12.2006, 00:15 Uhr ... :-)
Fehler
Ack! anscheinend nicht so talentiert ... Dieses Programm erinnert mich an FriendBlaster (wir haben es früher bei der Arbeit benutzt - ich war dagegen, aber der Chef hörte nicht zu). Ich bezweifle nicht, wie viel Zeit und Mühe der Autor in das Programm gesteckt hat. Aber ehrlich gesagt ist nichts, was durchgeführt wird, so schwer zu implementieren (und im Fall von FriendBlaster schlecht implementiert). Viel beeindruckender sind die Hacker und Sicherheitsforscher, die Exploits entwickeln und DRM-Programme innerhalb von Wochen nach ihrer Veröffentlichung brechen.
Majestätsbeleidigung
2

Ich habe das Anti-Spam-Plugin für WordPress erstellt , es blockiert Spam ziemlich gut, ohne Captcha oder irgendetwas anderes.

So funktioniert es: Dem Kommentarformular werden zwei zusätzliche Felder hinzugefügt. Zunächst die Frage zum laufenden Jahr. Zweitens sollte leer sein. Wenn der Benutzer die Website besucht, wird das erste Feld automatisch mit Javascript beantwortet. Das zweite Feld bleibt leer und beide Felder sind für den Benutzer unsichtbar. Wenn der Spammer versucht, ein Kommentarformular einzureichen, macht er einen Fehler mit der Antwort auf das erste Feld oder versucht, ein leeres Feld einzureichen, und ein Spam-Kommentar wird abgelehnt. Der Benutzer muss kein Captcha oder etwas anderes eingeben, um zu beweisen, dass es sich nicht um einen Bot handelt. Alles wird mit Javascript erstellt.

Sie können das Plugin herunterladen und den Code verwenden, um das Problem mit Spam auf Ihrer Site zu lösen.

webvitaly
quelle
1
Ihre Benutzer benötigen also Javascript, um sich registrieren zu können? Das ist ein Verlust der Zugänglichkeit, oder?
Augustin Riedinger
@AugustinRiedinger Anti-Spam-Plugin mit deaktiviertem Javascript funktioniert wie ein einfacher Captha-Ansatz. Es gibt ungefähr weniger als 2% der Benutzer mit deaktiviertem Javascript.
Webvitaly
Sie meinen, Sie würden das Captcha in diesem Fall anzeigen, richtig? Ich weiß, dass es dort nur sehr wenige Benutzer gibt, aber ich habe über Best Practice nachgedacht. Lesen Sie interessante Dinge darüber.
Augustin Riedinger
@AugustinRiedinger Ja, ich zeige eine captcha-artige Frage zum aktuellen Jahr, wenn der Benutzer Javascript deaktiviert hat.
Webvitaly
0

Wenn ich versuche, sie zu besiegen, ist eine Sache, die ich im Hinterkopf behalten möchte, dass ihr Zweck normalerweise darin besteht , Links zu so vielen Websites wie möglich zu veröffentlichen, um den Black-Hat-SEO-Nutzen zu erzielen.

Sie kümmern sich um die Anzahl der Websites, auf die sie Zugriff haben, und nicht speziell um Ihre Website. Jemand, der nur Ihre Website als Spam versenden möchte, kann sich einfach anmelden, ohne einen Roboter zu verwenden.

Daher bin ich mir ziemlich sicher, dass ein gut geschriebener, maßgeschneiderter Test (z. B. Fragen, auf die Ihre Forumsmitglieder die Antwort wissen) gegen Roboter fast immer effektiver sein wird als jeder vorab geschriebene Test, bei dem es wahrscheinlich ist, dass Roboter klug sind zu.

Wenn ein Roboter beispielsweise Recaptcha geknackt hätte, hätte er Zugriff auf Millionen von Formularen, um Spam zu versenden. Wenn es einen maßgeschneiderten Test geknackt hätte, hätte es nur Zugriff auf eine Website, so dass sich kein automatisierter Spam-Bot darum kümmern würde.

https://www.projecthoneypot.org kann einige nützliche Daten enthalten (z. B. Schlüsselwörter und zu blockierende IPs)

Richard B
quelle