Das Örtchen RSS-Feed
Suchen
Blog
Ähnliche Beiträge
Neueste Kommentare
Neueste Einträge
Populäre Einträge
Tagwolke
addon auswertung barcamp blog bug cms cms made simple datenkrake drupal feed film firefox frickeln friday gewinnspiel hardware how-to individualisierung meinung mmo modul nas php problem rss se7en server sicherheit sicherung software spiel teil theme trailer unterhaltung update windows windows 7 wordpress wow
Monatsarchiv

WordPress: Spamabwehr für Contact Form 7

Spam ist leider im Bereich der Content Management Systeme immer wieder ein Thema. Lange Zeit waren CAPTCHAs das Maß aller Dinge, um Spam zu bekämpfen. Die Rechner waren einfach nicht leistungsfähig genug, um diesen Schutz zu umgehen.

Doch mit den Jahren wurde die Hardware immer besser und einfache CAPTCHAs konnten schon bald von Bots problemlos gelöst werden. Diese luden dann automatisiert ihren Spam in Kommentarbereichen und Kontaktformularen ab.

Als Reaktion wurden immer kompliziertere CAPTCHAs erdacht. Dies ging so weit, daß selbst Menschen mit aktuellen Varianten (z.B. reCAPTCHA) Probleme beim Lösen haben. Leider hat dies trotzdem nicht zu einer Abnahme des automatisierten Spams geführt, da es inzwischen darauf spezialisierte Firmen gibt, deren Mitarbeiter den ganzen Tag wie am Fließband CAPTCHAs lösen müssen.

Andere Maßnahmen mussten somit her. Im Bereich WordPress ist Akismet die bekannteste Lösung eines externen Dienstleisters, da das nötige Plugin direkt mit WordPress ausgeliefert wird. Leider hat dieser Ansatz aus meiner Sicht gleich mehrere Probleme:

  1. Die Formulareingaben werden dem externen Dienstleister Automattic zur Überprüfung überlassen.
  2. Dieser Dienstleister sitzt meines Wissens nach in den USA und ist (noch) nicht nach dem Safe Harbour-Abkommen zertifiziert.
  3. Man ist abhängig von einem Dienstleister, der seine Leistung jederzeit einstellen oder der überlastet sein kann.
  4. Die Dienstleistung ist ganz einfach für gewerbliche Websites nicht kostenlos.

Aus diesem Grund nutze ich schon seit Ewigkeiten AntispamBee von Sergej Müller zur Abwehr von Spamkommentaren. Leider schützt die fleissige Biene jedoch keine Kontaktformulare, hierfür muss also eine andere Lösung her. Wenn ich ausführlichere Formulare umsetzen will, greife ich im Normalfall auf Contact Form 7 zurück. Für dieses Plugin gibt es auch die eine oder andere Erweiterung und diese Erweiterungen habe ich mir diese Woche einmal zu Gemüte geführt.

Da ich derzeit negative CAPTCHAs zur Abwehr von automatisiertem Spam bevorzuge, bin ich bei zwei Plugins hängen geblieben. Dies sind:

  1. Contact Form 7 Honeypot
  2. Hashcash for Contact Form 7

Beide Plugins stellen einen Shortcode zur Verfügung, mit dem man das jeweilige Kontaktformular erweitern muss.

Der Honigtopf ist ein per CSS verstecktes zusätzliches Eingabefeld, welches nicht ausgefüllt werden darf. Bots sind meist relativ dumm und füllen einfach alle vorhandenen Felder aus, da die Implementierung künstlicher Intelligenz den Spammer mehr Geld kosten würde. Viele Bots scheitern also an einer solchen Hürde.

Hashcash nutzt ein verstecktes Formularfeld (type=“hidden“), welches mit JavaScript befüllt wird. Ist das Feld leer oder enthält nicht den erwarteten Wert, so ist ein erfolgreiches Versenden nicht möglich. Daran scheitern derzeit die Bots (noch), da sie ohne JavaScript unterwegs sind.

Leider gibt es bei dem Hashcash-Plugin zwei kleinere Probleme:

  1. Es benötigt zusätzlich das Plugin WP-Hashcash (Extended). Leider nutzt dieses noch den veralteten Funktionsaufruf is_site_admin, den man an allen Stellen durch is_super_admin ersetzen sollte.
  2. Außerdem ist das Plugin zwar für Übersetzungen vorbereitet, es werden jedoch keine mitgeliefert. Der Honigtopf ist zwar auch nicht übersetzt, dort ist es aber nicht so wichtig.

Ich habe mir deshalb die Mühe gemacht und eine Übersetzung für Hashcash for Contact Form 7 (de_DE) angefertigt. Die beiden Dateien aus dem ZIP-Archiv gehören in den Ordner wp-content/plugins/hashcash-for-contact-form-7/languages.

Achtung: Wichtig ist zudem, daß in dem zusätzlich benötigten Plugin WP Hashcash die Option Comments protection enabled aktiviert sein muss.

Fazit

Hat man die anfänglichen Hürden erst mal überwunden, so sind die Plugins derzeit eine durchaus brauchbare Abwehr für automatisierten Spam. Leider sind diese Maßnahmen für einen Bot kein wirkliches Hindernis, er müsste lediglich entsprechend angepasst werden. Meines Wissens nach gibt es aktuell noch keinen solchen Bot, es dürfte jedoch nur eine Frage der Zeit sein, bis dies der Fall ist.

Oder kennt einer meiner Leser schon Fälle, wo ein Bot einen solchen Schutz umgehen konnte?

Hallo! Bist du neu hier? Dann abonniere doch den RSS-Feed dieses nicht mehr ganz so stillen Örtchens, um über meine geistigen Ergüsse auf dem Laufenden zu bleiben. Alternativ besteht auch die Möglichkeit, sich von FeedBurner per E-Mail über meine Ausscheidungen benachrichtigen zu lassen.

Kommentare (2)

Re: WordPress: Spamabwehr für Contact Form 7

Kommentar Spam ist eine Plage, die wahrscheinlich so ziemlich jeden Blogger ärgert. Ich habe in den fast zwei Jahren in denen ich den noch (kleinen) Blog betreibe schon mehr als 2000 Spam Kommentare bekommen, die allerdings alle von Antispambee zuverlässig geblockt wurden. Trotzdem denke ich darüber nach, das Captcha mit einem Negativcaptcha zu ersetzen.

Re: WordPress: Spamabwehr für Contact Form 7

@Andy: AntispamBee nutzt bereits das Prinzip der negative Captchas. Du solltest also einfach die zusätzlichen Captchas deaktivieren können.

Kommentar hinzufügen

(If you're a human, don't change the following field)
Your first name.
Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.
Der Inhalt dieses Feldes wird öffentlich zugänglich angezeigt, aber als nofollow markiert.
Hinweis

Kommentare beleben den Blog! Ich freue mich über jeden Kommentar. Du kannst hier offen Deine Meinung zum Artikel sagen, aber bitte beachte die Netiquette und vermeide es andere zu beleidigen.

Bitte unterlasst es die Kommentare zu SEO-Zwecken zu missbrauchen. Kommentare mit Links, die nicht zu Blogs führen (oder zu Blogs mit Grauzonen-Themen) und/oder Keywords als Namen verwenden und/oder Links im Kommentarbereich enthalten, sind nicht erwünscht!

Möchtest Du mir einen Blog-Artikel schmackhaft machen, dann schreib die URL ohne Link-Tag und ohne http(s):// in den Kommentarbereich und ich werde diesen bei Gefallen verlinken.

Die ersten vier Kommentare (mit den gleichen Daten bei Name, E-Mail und Blog) landen vor der Veröffentlichung in meiner Freigabe-Warteschlange und ich behalte mir das Recht vor, Kommentare entsprechend dieser Regeln anzupassen oder zu löschen!