WordPress-Formular-Honeypot: Spam-Bots ohne Captcha stoppen
Ein Formular-Honeypot fängt Spam-Bots in WordPress mit einem Feld, das Menschen nie sehen und Bots immer ausfüllen, und ReportedIP Hive kombiniert ihn mit einem Nachweis, dass das Formular wirklich in einem Browser angezeigt wurde. Diese Anleitung erklärt beide Schichten, was mit einer abgewiesenen Eingabe passiert und welche Formulare in welchem Tarif geschützt sind, ganz ohne Captcha.
Was ist ein Formular-Honeypot?
Ein Honeypot ist ein zusätzliches Formularfeld, das vor Menschen verborgen ist. Es liegt außerhalb des sichtbaren Bereichs, wird von der Tastatur übersprungen, vom automatischen Ausfüllen ignoriert und vor Screenreadern versteckt. Ein Mensch berührt es nie. Ein Spam-Bot, der jedes gefundene Feld ausfüllt, füllt auch dieses, und das reicht, um zu wissen, dass die Eingabe nicht von einem Menschen kam.
Der Vorteil gegenüber einem Captcha: Niemand muss etwas lösen. Es gibt kein verzerrtes Bild, kein Ampel-Puzzle und kein Skript eines Drittanbieters, das Besucher verfolgt. Die Grenze ist ebenso klar: Ein Bot, der für eine bestimmte Website geschrieben wurde, kann lernen, das Feld leer zu lassen. Deshalb verlässt sich Hive nicht auf den Honeypot allein.
Warum ein Honeypot allein nicht reicht
Viele Spam-Skripte laden das Formular gar nicht. Sie schicken ihre Daten direkt an die Adresse, die Kommentare oder Registrierungen verarbeitet, etwa wp-comments-post.php. So ein Skript sieht den Honeypot nie, kann ihn also nicht ausfüllen, und kommt an einer Prüfung vorbei, die nur nach einem gefüllten Feld sucht.
Hive ergänzt deshalb den Formular-Ausführungsnachweis. Der Server setzt ein verstecktes Ankerfeld ins Formular, und ein kleines Skript im Browser fügt ein zweites Feld hinzu, dessen Name auf jeder Installation anders ist. Ein Skript, das direkt an die Adresse sendet, hat diesen Code nie ausgeführt, das zweite Feld fehlt also. Die Seite bleibt für jeden Besucher gleich, Seiten-Caches funktionieren also weiter.
Die vier Urteile bei jeder Eingabe
Aus den beiden Feldern bildet Hive eines von vier Urteilen:
| Urteil | Was ankam | Was es bedeutet |
|---|---|---|
| Nachgewiesen | Honeypot leer, Nachweis vorhanden | Ein Browser hat das Formular angezeigt, ein Mensch hat es abgeschickt. |
| Ausgelöst | Honeypot ausgefüllt | Ein Bot hat jedes gefundene Feld ausgefüllt. |
| Fehlgeschlagen | Ankerfeld vorhanden, Nachweis fehlt | Die Seite wurde geladen, aber das Browser-Skript lief nie. |
| Fehlend | Gar keine Felder | Das Formular hatte keine Schutzfelder, etwa aus einer alten Seite im Cache oder einem Theme mit eigenem Kommentar-Markup. |
„Fehlend“ wird nachsichtig behandelt, weil es harmlose Ursachen hat. Ein Theme, das sein Kommentarformular ohne die üblichen WordPress-Hooks selbst schreibt, wird nie wie ein Bot behandelt.
Was mit einer abgewiesenen Eingabe passiert
- Honeypot ausgefüllt: Die Eingabe wird mit „Ihre Eingabe wurde nicht angenommen. Bitte laden Sie die Seite neu und versuchen Sie es erneut.“ abgewiesen. Hive protokolliert sie, rechnet sie sofort auf die stufenweise Sperrleiter an und meldet die Adresse im Modus Community Network an die Community. Adressen auf der Whitelist und Benutzer, die Beiträge bearbeiten dürfen, sind ausgenommen.
- Nachweis fehlt bei einem Kommentar: Der Kommentar wird mit „Dieses Formular braucht JavaScript. Bitte einschalten und noch einmal versuchen.“ abgewiesen. Die Adresse wird protokolliert, aber nie gezählt oder gesperrt, denn ein Leser ohne JavaScript ist kein Angreifer.
- Nachweis fehlt bei Registrierung oder Passwort-Reset: Das Formular weist ab und nennt den Grund. Die Meldung beim Passwort-Reset verweist zusätzlich auf einen anderen Administrator oder WP-CLI, für den Fall, dass jemand schon ausgesperrt ist.
- Alles andere: Kommentare durchlaufen zusätzlich den Kommentar-Spamfilter, der auf Links, Namen und andere Spam-Merkmale achtet. Was mit einem so markierten Kommentar passiert, legen Sie mit Aktion bei einem als Spam bewerteten Kommentar fest: als Spam markieren (Voreinstellung), sperren oder aus.
Jede Abweisung erscheint im Ereignisprotokoll unter ReportedIP Hive > Aktivität, dort heißt der ausgelöste Honeypot „Kommentar-Köder“. So sehen Sie jederzeit, welche Adresse gestoppt wurde und warum.

Welche Formulare in welchem Tarif geschützt sind
| Formulare | Tarif |
|---|---|
| Kommentarformular, Registrierung in WordPress und WooCommerce, Passwort-Reset | Jeder Tarif, auch Free |
| Contact Form 7 | Jeder Tarif, auch Free |
| Rechenprüfung zusätzlich zum Nachweis | Ab Professional |
| Gravity Forms, WPForms, Forminator, Formidable Forms, Elementor Forms, Ultimate Member | Ab Business |
Die Rechenprüfung schließt eine Lücke, die der einfache Nachweis offen lässt: ein Skript, das den Feldnamen aus der Seite liest und zurückschickt. Mit ihr muss der Browser vor dem Absenden eine kleine signierte Aufgabe Ihrer eigenen Website lösen, und jede Aufgabe wird nur einmal angenommen. Die Details zu den einzelnen Formular-Plugins stehen in den Anleitungen zu Gravity Forms sowie zu WPForms und Forminator.
So schalten Sie den Schutz ein
Öffnen Sie ReportedIP Hive > Schutz und die Karte Formularschutz. Auf einer neuen Installation sind Kommentar-Honeypot, Formular-Ausführungsnachweis und der Schalter für Contact Form 7 bereits an. Das Honeypot-Feld erscheint nur im Formular, solange der Formular-Ausführungsnachweis an ist, lassen Sie also beide zusammen eingeschaltet.

Mit eingeschaltetem Expertenmodus zeigt die Karte zusätzlich Nachweis auch bei Registrierung und Passwort-Zurücksetzung verlangen, Rechenprüfung auf Formularen und Aktion bei einem als Spam bewerteten Kommentar. Wollen Sie erst beobachten und dann abweisen, schalten Sie in der Karte Sperren & Eskalation den Nur-Melden-Modus ein: Hive protokolliert dann jede Abweisung und weist nichts ab. Zum Testen führt Werkzeuge > Diagnose (im Expertenmodus sichtbar) drei Durchläufe mit Ihrem eigenen Browser aus, wie ein Besucher, wie derselbe Besucher zweimal und wie ein Bot, ohne ein echtes Formular abzuschicken.
Barrierefreiheit, Caching und Datenschutz
Der Honeypot ist so gebaut, dass kein Mensch darüber stolpert. Er trägt aria-hidden="true", was ihn nach WAI-ARIA vor Screenreadern verbirgt, ist aus der Tastaturreihenfolge genommen und vom automatischen Ausfüllen ausgeschlossen, und sein verstecktes Label lautet „Dieses Feld leer lassen“.
Nichts Anfragespezifisches landet im HTML, Ganzseiten-Caches wie WP Rocket, LiteSpeed oder ein CDN liefern also weiter dieselbe Seite aus. Das Skript misst außerdem, wie lange das Formular auf dem Bildschirm war, und sendet die Sekunden mit; dieser Wert wird bei einer Abweisung protokolliert. Es gibt keine Cookies, kein Fingerprinting und keine Anfrage an Dritte. Im Modus Local Shield verlässt nichts Ihre Website. Im Modus Community Network wird die Adresse eines Bots, der den Honeypot ausgefüllt hat, an reportedip.com gemeldet, und mit eingeschalteter Community-Bedrohungsprüfung bei Formularen wird die Besucheradresse dort geprüft, bevor ein Kommentar, eine Registrierung oder ein Passwort-Reset angenommen wird. Die Anleitung zum Datenschutz behandelt beide Modi im Detail.
Fragen zum WordPress-Formular-Honeypot
Kann der Honeypot einen echten Besucher sperren?
Ein echter Besucher sieht den Honeypot nie, ein Mensch kann ihn also nicht versehentlich ausfüllen. Bemerken können etwas nur Leser mit ausgeschaltetem JavaScript: Ihr Kommentar wird mit dem klaren Hinweis abgewiesen, es einzuschalten. Ihre Adresse wird nie auf eine Sperre angerechnet, weil fehlendes JavaScript allein nicht als Angriff gilt.
Brauche ich mit dem Hive-Honeypot noch ein Captcha?
Die meisten Websites brauchen kein Captcha mehr. Der Honeypot fängt Bots, die jedes Feld ausfüllen, der Ausführungsnachweis fängt Skripte, die direkt an die Formularadresse senden, und die Rechenprüfung ab Professional stoppt auch Skripte, die die Feldnamen kopieren. Ein Captcha lohnt sich nur noch für Formulare, die von Menschen in Handarbeit angegriffen werden.
Funktioniert der Honeypot mit Seiten-Caching?
Der Honeypot funktioniert mit Seiten-Caching, weil das Formular-Markup für jeden Besucher gleich ist. Das Nachweisfeld fügt ein Skript im Browser hinzu, nicht der Server, eine Seite im Cache bleibt also gültig. Nach einem Plugin-Update oder beim Einschalten eines Formular-Plugins gibt Hive gecachten Seiten eine Schonfrist, damit niemand an einer alten Kopie scheitert.
Weiterlesen
Die Hive-Dokumentation beschreibt die Bot-Erkennung und Kommentar-Spam sowie Caching und Kompatibilität im Detail. Alle weiteren Funktionen erklären die Anleitungen zu ReportedIP Hive.