Kommentare und Trackbacks sind ein wichtiger Bestandteil von Blogosphäre und dem ganzen Gedanken, der das Web aktuell umtreibt. Umso ärgerlicher, wenn man als normal Bloggender irgendwann merkt, dass die Meister des Stumpfsinns die Spam-Bots auch am eigenen virtuellen Zuhause vorbeischicken, und das in schöner Regelmäßigkeit.
In letzter Zeit durfte ich wiederholt Pagerank-Abgreifer Kommentare löschen, in denen der besagte Bot nur ein "Nice..." als Kommentar hinterlässt und dann seine eigene Seite als URL verlinkt um bei Google im Pagerank zu steigen. Blöderweise ist diese Form des Spams die erste, die auch tatsächlich Erfolg verspricht, denn ellenlange Linklisten in Kommentaren hat sowieso noch niemand geklickt. Zeit zurückzuschlagen...
AkismetDer Akismet-Webservices ist für das Erkennen von Spam-Kommentaren und Trackbacks fast schon erste Wahl. Er erkennt zuverlässig sinnlose Kurzkommentare, aber auch riesige Link-Listen und Viagra-Werbung. Leider hat er anscheinend mit den oben erwähnten "Nice"-Kommentaren arge Probleme. Soll heißen, dass Akismet diese häufig nicht als Spam erkennt. Es braucht also noch weiterer Barrieren um der Stumpfsinnsflut her zu werden.
CAPTCHAs
CAPTCHAs (Bilder mit abzutippenden Ziffern/Buchstabenfolgen) sind da häufig die erste Wahl um den Menschlichkeitstest für den Kommentierenden darzustellen. Aber die bunten Bildchen bergen einige Probleme: Zum einen der ganz triviale Fall, dass auch der Normalbürger nicht lesen kann, was der automatische Bildchen versucht anzuzeigen. Zum anderen der Fall, dass ein nicht-sehender User die Seite besucht. Dann gilt es mit großem Aufwand die CAPTCHAs vorzulesen oder anderweitig barrierefrei zu gestalten. Und letztendlich stellen die Bilder immer eine Usability-Einbuße dar, denn Abtippen tut niemand gerne.
Um den Spam, zumindest im Kommentarbereich in den Griff zu kriegen hilft ein simpler kleiner Trick, in dem man pikanterweise den Spam-Bot mit seinen eigenen Waffen schlägt: Der versucht nämlich durch das Auswerten der Formularfeldnamen die einzugebende Information zu erraten. Ein durchaus wichtiges Unterfangen, denn wenn man die Email-Adresse an falscher Stelle eingibt, dann lehnt das Blog evtl. den Kommentar ab.
Somit tut man einfach folgendes: Man fügt zur Menge der Formularfelder eines hinzu, dass man per CSS versteckt. Den Namen des Input-Feldes wählt man sprechend wie z.B. "homepage" oder "url". Das entsprechende Label wählt man ungefähr wie folgt: "Spam-Detection (leave empty)". Danach ändert man die Logik der Kommentarannahme, so dass nachdem die Akismet-Überprüfung evtl. keinen Spam erkannt hat, nochmal der Inhalt dieses Spam-Detection-Feldes geprüft wird. Ist das entsprechend Feld ausgefüllt lehnt man den Kommentar ab.
Die Spam-Bots tun nämlich nichts anderes als die Seiten nach Formularen zu parsen, um dann an die Formular-Action einen entsprechenden Request zu richten, der die verschiedenen Formularfelder ausfüllt.
Mit dieser Methode hat man sich unter anderem die Barrierefreiheit zurückerlangt, denn auch ein Screen-Reader kann das Label des Formularfeldes vorlesen und der User weiss dass er nichts tun muss. Der Normaluser merkt davon sogar absolut gar nichts, denn er sieht das Feld nicht einmal und kann es somit auch nicht ausfüllen.
Die Methode funktioniert fast hunderprozentig. Nach meiner Erfahrung kommt nur noch eine verschwindend geringe Anzahl an "Nice!"-Spams durch.
Trackbacks
Tim Adler hat eine einfache und effiziente Lösung des altbekannten Spamproblems bei Kommentarfeldern. Einfach ein mittels CSS verstecktes Formularfeld mit einbauen, mit z.B. “URL” betiteln und dann den Formulareingang dahingehend überprü...
Comments
27.04.2007
Ok. Normale Captchas sind doof. Es sind aber auch ein paar coole in Entwicklung.
Microsoft entwickelt zum Beispiel eins wo du nen Hund oder ne Katze auswählen musst.
Die Tiere sind dann auch noch ohne Herrchen; das heißt wenn dir das Tier auf dem Captcha gefällt, kannst du ihm sogar noch ein schönes Zuhause bieten.
http://research.microsoft.com/sn/asirra/
27.04.2007
27.04.2007
Add a comment