\n\n\n\n Ich kämpfe gegen Bots auf meinem Retro-Computing-Forum. - BotSec \n

Ich kämpfe gegen Bots auf meinem Retro-Computing-Forum.

📖 11 min read2,065 wordsUpdated Mar 28, 2026

Einverstanden, Freunde, Pat Reeves hier, der in eure Feeds von botsec.net eintritt. Wir haben den 23. März 2026, und ich war kürzlich mit einer bestimmten Art von botbezogenen Kopfschmerzen konfrontiert. Nicht der schlüssige, vom Staat unterstützte Typ – obwohl es immer Spaß macht, diese zu zerlegen – sondern die leicht zu intelligente automatisierte Belästigung, die eines meiner Nebenprojekte ins Visier nimmt.

Um ein wenig Kontext zu geben, mein Nebenprojekt ist ein kleines Nischenforum für Retro-Computer-Enthusiasten. Nichts Bemerkenswertes, nur ein Ort für uns alte Hasen, um uns über moderne CPUs zu beschweren und darüber zu diskutieren, wie man einen Amiga am besten emuliert. Der Verkehr war nicht riesig, aber er war leidenschaftlich, und monatelang war es botfrei. Bis letzten Monat.

Plötzlich kamen Bots zur Registrierung. Nicht nur ein paar, sondern Wellen. Hunderte von Fake-Konten, alle mit leicht randomisierten Benutzernamen, generischen E-Mail-Adressen (oft von neu registrierten Domains), und absolut keiner Posthistorie. Sie haben nicht sofort Spam verschickt, was seltsam war. Sie haben einfach nur … sich registriert. Und meine Benutzerdatenbank gefüllt, was die Verwaltung mühsam machte und mich ehrlich gesagt fühlen ließ, als wäre mein kleines digitales Refugium überrannt.

Also reden wir diesen Monat über Sicherheitsschwäche: Der stille Anstieg – Warum Low-Effort-Botregistrierungen eine größere Bedrohung darstellen, als Sie denken (und wie man sie stoppen kann).

Wenn Langeweile zur Bedrohung wird

Sie könnten denken: „Pat, das sind nur Registrierungen. Kein Grund, ein Drama daraus zu machen, oder? Löschen Sie sie einfach und machen Sie weiter.“ Und für eine Weile war genau das mein Gedankengang. Ich habe einen Cron-Job eingerichtet, um Konten ohne Posts nach 24 Stunden zu bereinigen. Problem gelöst, oder? Falsch.

Die Bots haben sich angepasst. Sie begannen, einen einzigen, harmlosen Post zu erstellen. „Hallo!“ oder „Schön, hier zu sein.“ Nichts, was meine Anti-Spam-Filter auslösen würde. Nur genug, um die Bereinigung der Konten ohne Posts zu vermeiden. Jetzt hatte ich Hunderte von Konten mit einem nutzlosen Post, die immer noch meine Datenbank überfüllten und eine manuelle Überprüfung erforderten.

Es ist nicht nur eine lästige Angelegenheit. Es ist ein subtiler und heimtückischer Angriff. Hier ist warum:

  • Ressourcenerschöpfung: Jede Registrierung, jeder Eintrag in der Datenbank, jeder kleine Post verbraucht Serverressourcen. Für eine kleine Seite wie meine ist das nicht unerheblich. Wenn das Volumen steigt, kann das zu Leistungseinbußen oder sogar zu einer Dienstverweigerung für legitime Nutzer führen.
  • Datenverunreinigung: Meine Benutzertabellen waren ein Durcheinander. Echte Nutzer zu finden, Aktivitäten zu analysieren oder sogar nur die Datenbank zu sichern, wurde mühsamer.
  • Rufrisiken: Wenn diese Konten plötzlich anfangen würden, Spam zu verschicken oder Phishing-Angriffe durchzuführen, könnte der Ruf meines Forums darunter leiden. Suchmaschinen mögen keine Seiten, die mit böswilligen Aktivitäten in Verbindung gebracht werden.
  • Vorboten größerer Angriffe: Oft sind Low-Effort-Bots bei den Registrierungen ein Schritt der Erkundung. Sie testen die Gewässer, identifizieren Schwächen und schaffen die Basis für raffiniertere Angriffe wie Credential Stuffing oder sogar Spear-Phishing von echten Nutzern.
  • Risiken von Credential Stuffing und Account Takeover (ATO): Das ist das größte Problem. Wenn ein Bot ein Konto registriert und ein legitimer Benutzer dann versucht, sich mit demselben Benutzernamen/E-Mail (oder einem gemeinsamen) zu registrieren, hat der Bot-Betreiber nun ein potenzielles Ziel für Credential Stuffing, falls er Anmeldedaten aus einem anderen Datenleck erworben hat. Er kann versuchen, diese Anmeldedaten auf meiner Seite.

Also, was als „meh, ich kümmere mich später darum“ begann, verwandelte sich schnell in eine „das muss jetzt aufhören“-Situation.

Meine ersten (gescheiterten) Versuche: Die CAPTCHA-Falle

Meine erste Reaktion, wie bei vielen, war, ein CAPTCHA einzufügen. Genauer gesagt, reCAPTCHA v2. Jeder kennt reCAPTCHA, oder? Das Kontrollkästchen „Ich bin kein Roboter“, vielleicht ein paar verschwommene Verkehrsschilder.

Ich habe es implementiert. Für etwa drei Tage sanken die Registrierungen auf fast null. Ich habe mir auf die Schulter geklopft. „Aha! Gelöst!“

Dann kamen sie zurück. Nicht so viele, aber genug. Wie? Nun, für reCAPTCHA v2 gibt es Dienste, die Menschen in Cent bezahlen, um CAPTCHAs zu lösen. Oder, zunehmend, werden KI-Modelle ausreichend leistungsfähig, um sie zu entschlüsseln, insbesondere die einfacheren. Es ist ein Katz-und-Maus-Spiel, und bei einer Low-Traffic-Seite war es die Kosten von reCAPTCHA v3 (das ein Albtraum sein kann, ohne dass legitime Benutzer geflaggt werden) nicht wert.

Darüber hinaus hassen legitime Benutzer CAPTCHAs. Ich habe ein paar Beschwerden erhalten. Mein leidenschaftliches Publikum für Retro-Computer, Gott segne sie, ist nicht immer die geduldigste mit den Unannehmlichkeiten des modernen Webs. Ich brauchte etwas weniger aufdringliches, das effektiver gegen Bots und weniger langweilig für Menschen ist.

Jenseits des Kontrollkästchens: Praktische Abwehrmaßnahmen

Nachdem ich das sichtbare CAPTCHA aufgegeben hatte, begann ich darüber nachzudenken, was einen Menschen menschlich und einen Bot bot macht, über das bloße Anklicken eines Kästchens hinaus. Hier ist, was wirklich für mich funktioniert hat:

1. Das Honeypot-Feld

Es ist ein Klassiker aus gutem Grund. Es ist einfach, effektiv und für menschliche Nutzer völlig unsichtbar. Die Idee ist, ein zusätzliches, verstecktes Feld zu Ihrem Registrierungsformular hinzuzufügen. Bots, die weniger raffiniert als Menschen sind, versuchen oft, jedes verfügbare Feld auszufüllen. Menschen werden es nicht sehen, also füllen sie es nicht aus.

Hier ist ein vereinfachtes Beispiel für das, was ich zu meinem HTML-Registrierungsformular hinzugefügt habe:


<form action="/register" method="POST">
 <label for="username">Benutzername:</label>
 <input type="text" id="username" name="username" required>
 
 <label for="email">E-Mail:</label>
 <input type="email" id="email" name="email" required>
 
 <!-- Honeypot-Feld -->
 <div style="display:none;">
 <label for="fax_number">Faxnummer (leer lassen):</label>
 <input type="text" id="fax_number" name="fax_number" tabindex="-1" autocomplete="off">
 </div>
 
 <label for="password">Passwort:</label>
 <input type="password" id="password" name="password" required>
 
 <button type="submit">Registrieren</button>
</form>

Und auf der Serverseite (unter Verwendung eines Python/Flask-Beispiels, aber die Logik gilt allgemein):


@app.route('/register', methods=['POST'])
def register():
 # Honeypot-Feld überprüfen
 if request.form.get('fax_number'):
 # Bot erkannt! Speichern Sie es, blockieren Sie vielleicht die IP und geben Sie einen Fehler zurück
 print(f"Honeypot ausgelöst von IP: {request.remote_addr}")
 return "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut.", 400 # Oder eine generische Erfolgsmeldung, um die Bots zu verwirren
 
 username = request.form.get('username')
 email = request.form.get('email')
 password = request.form.get('password')
 
 # ... der Rest Ihrer Registrierungslogik ...
 
 return "Registrierung erfolgreich!"

Das display:none; macht es unsichtbar. tabindex="-1" verhindert die Tastaturnavigation zu diesem Feld. autocomplete="off" hilft zu verhindern, dass Browser es automatisch ausfüllen. Ich habe mich für „fax_number“ entschieden, weil es ein altmodisches Feld ist, das auf einem modernen Registrierungsformular nichts zu suchen hat, was es zu einem guten „Köder“ macht.

2. Zeitbasierte Analyse (Zeitstempelprüfung)

Bots schicken oft Formulare unglaublich schnell ab. Menschen brauchen mindestens ein paar Sekunden, um ein einfaches Formular auszufüllen. Ich protokolliere die Ladezeit des Formulars und die Abgabezeit.

Wenn das Registrierungsformular bereitgestellt wird:


<form action="/register" method="POST">
 <!-- Andere Formularfelder -->
 <input type="hidden" name="form_load_time" value="{{ current_timestamp_in_seconds }}">
 <button type="submit">Registrieren</button>
</form>

Auf der Serverseite:


import time

@app.route('/register', methods=['POST'])
def register():
 form_load_time = int(request.form.get('form_load_time', 0))
 submission_time = int(time.time())
 
 time_taken = submission_time - form_load_time
 
 # Wenn das Formular zu schnell abgesendet wurde (z. B. weniger als 5 Sekunden)
 if time_taken < 5: 
 print(f"Zu schnelle Einsendung von der IP : {request.remote_addr}, dauerte {time_taken}s")
 return "Registrierung fehlgeschlagen. Bitte erneut versuchen.", 400
 
 # ... Rest Ihrer Registrierungslogik ...
 
 return "Registrierung erfolgreich!"

Ich habe mich für ein Minimum von 5 Sekunden entschieden. Das hat sofort einen großen Teil der verbleibenden Bots aufgehalten. Achten Sie darauf, diesen Schwellenwert nicht zu hoch zu setzen, da echte Benutzer schnell tippen oder vorab ausgefüllte Formulare haben könnten.

3. IP-Drosselung (mit einem Twist)

Die Standard-IP-Drosselung ist gut: „Nicht mehr als 5 Registrierungen von dieser IP pro Stunde.“ Aber Bots verwenden oft Proxys oder rotieren die IPs. Daher habe ich einen Twist hinzugefügt: IP-Fingerabdruck und User-Agent.

Ich habe begonnen, die User-Agent-Zeichenfolge zusammen mit der IP-Adresse zu protokollieren. Wenn ich einen plötzlichen Anstieg der Registrierungen von verschiedenen IPs sah, aber mit derselben, leicht ungewöhnlichen User-Agent-Zeichenfolge, war das ein starkes Indiz für ein Botnetz oder einen einzelnen Bot, der die IPs rotiert. Das erlaubte mir, nicht nur die IP vorübergehend zu blockieren, sondern auch den User-Agent, wenn er eindeutig nicht browserseitig war oder verdächtig wiederholt wurde.

Das ist kein Codeausschnitt, den Sie einfach übernehmen können, da es eine gewisse Protokollierung und Analyse auf der Backend-Seite erfordert. Aber konzeptionell geht es darum, die Muster über die Quell-IP hinaus zu betrachten. Viele Web Application Firewalls (WAF) bieten diese Art der fortgeschrittenen Drosselung und Anomalieerkennung an.

4. Überprüfung der E-Mail-Domäne (unter Verwendung öffentlicher Daten)

Viele Registrierungen von Bots stammen von neu registrierten, oft wegwerfbaren E-Mail-Domänen. Ich habe eine Überprüfung gegen eine kleine ausgewählte Liste bekannter Wegwerf-E-Mail-Anbieter eingerichtet, aber effizienter war es, das Alter der E-Mail-Domäne selbst zu überprüfen.

Es gibt APIs (einige kostenpflichtig, andere kostenlos mit Einschränkungen), die Ihnen anzeigen können, wann eine Domäne registriert wurde. Wenn eine E-Mail-Adresse von einer Domäne stammt, die in den letzten 30 Tagen registriert wurde, ist das ein großes Warnsignal. Es ist nicht narrensicher – neue, legitime Seiten werden ständig gegründet – aber in Kombination mit anderen Signalen ist es mächtig.

Für mein Forum habe ich eine pragmatische Entscheidung getroffen: Wenn die Domäne weniger als 60 Tage alt war UND andere Bot-Signale vorhanden waren (Honeypot ausgelöst, zu schnelle Einsendung), würde ich die Registrierung sofort blockieren. Für Domänen unter 30 Tagen würde ich eine manuelle Überprüfung anfordern und möglicherweise eine Bestätigung per E-Mail vor der Aktivierung verlangen.

Die Ergebnisse: (Fast) Wiederhergestellter Frieden

Die Umsetzung dieser Schritte war keine sofortige Lösung, aber sie war unglaublich effektiv. Der Honeypot und zeitbasierte Überprüfungen haben sofort die Mehrheit der automatisierten Registrierungen reduziert. Die Analyse von IP/User-Agent-Mustern hat mir geholfen, die hartnäckigsten Bot-Betreiber zu identifizieren und zu blockieren.

Meine Benutzerdatenbank ist wieder sauber. Meine Serverprotokolle sind weniger laut. Und ich kann mich auf die Moderation von Diskussionen über die Überlegenheit des SID-Chipsatzes des Commodore 64 konzentrieren, anstatt hunderte von Fake-Accounts zu löschen.

Es ist wichtig zu verstehen, dass dies keine „einrichten und vergessen“-Lösung ist. Bots entwickeln sich weiter. Angreifer finden neue Methoden. Ich muss überwachen und mich anpassen. Aber im Moment haben mir diese praktischen und kostengünstigen Methoden die Kontrolle über mein kleines Stück Internet zurückgegeben.

Wichtige Punkte

Wenn Sie столкнуться с недорогими Bot-Registrierungen oder ähnlichen automatisierten Störungen, hier ist, was Sie sofort tun sollten:

  • Implementieren Sie einen Honeypot: Es ist unglaublich einfach, effektiv und für die Benutzer unsichtbar. Legen Sie los.
  • Fügen Sie eine zeitliche Überprüfung hinzu: Messen Sie die Zeit zwischen dem Laden des Formulars und der Einsendung. Blockieren Sie Einsendungen, die unnatürlich schnell sind.
  • Gehen Sie über das einfache IP-Blocking hinaus: Suchen Sie nach Mustern in User-Agent-Zeichenfolgen, Verweisen und anderen Anforderungs-Headern, um ausgeklügelte Bots zu identifizieren, die die IPs rotieren. Ziehen Sie eine WAF in Betracht, wenn Ihr Traffic es rechtfertigt.
  • Validieren Sie die Domains von E-Mails: Überprüfen Sie bekannte Wegwerf-E-Mail-Anbieter und berücksichtigen Sie das Alter der Domäne für neue Registrierungen.
  • Überwachen und Anpassen: Bots entwickeln sich ständig weiter. Behalten Sie Ihre Protokolle im Auge, analysieren Sie verdächtige Aktivitäten und seien Sie bereit, Ihre Verteidigungen anzupassen.
  • Belästigen Sie keine echten Benutzer: Priorisieren Sie das Benutzererlebnis. Vermeiden Sie zu restriktive CAPTCHAs oder übermäßig strenge Regeln, die legitime Registrierungen blockieren könnten. Die beste Verteidigung gegen Bots ist die, die Menschen nicht einmal bemerken.

Seien Sie vorsichtig da draußen und halten Sie diese Bots fern!

Verwandte Artikel

🕒 Published:

✍️
Written by Jake Chen

AI technology writer and researcher.

Learn more →
Browse Topics: AI Security | compliance | guardrails | safety | security
Scroll to Top