Ich habe mich jetzt längere Zeit mit dem leidigen Thema unerwünschter Einträge über das TYPO3 Kontaktformular bzw. über ve_guestbook [link] auseinandergesetzt und möchte meine Erfahrungen teilen.
Wer ein normales T3 Kontaktformular einsetzt, hat derzeit das Problem, dass es nahezu keine Maßnahmen gegen Spam gibt.
nd_antispam:
Die früher sehr beliebte Captcha Erweiterung nd_antispam, die über die XCLASS ein Captcha für das normale Gästebuch angeboten hat, gibt es nicht mehr im TER (Gründe liegen auf der Hand) und wird auch nicht mehr gepflegt. Wer dennoch auf eine ältere Version zurückgreifen kann, sollte auf den Einsatz verzichten, sofern ihm an der Sicherheit seines Internetauftritts liegt.
timtab_badbehavior [link]:
Wer aber auf sein geliebtes T3 Formular nicht verzichten will, kann sich mal an timtab_badbehavior versuchen. Hierbei handelt es sich um eine Erweiterung, die sich komplett in T3 einklinkt und global alle übermittelten POST und GET Parameter zu filtern versucht. Die Idee ist grundsätzlich nicht verkehrt, hat das Spamaufkommen auf meiner Liveumgebung aber nur bedingt reduzieren können und im Laufe einiger Updates auch zwischenzeitlich mein Gästebuch komplett lahm gelegt.
Meiner Meinung nach bleibt nur der Umstieg auf eine alternative Kontaktformularextension wie Mailformplus [link] oder Powermail [link] die auch jetzt schon eine Vielzahl von Spamvermeidungsmaßnahmen unterstützen.
Die Klassiker – captcha [link] und sr_freecap [link]:
Diese beiden bekannten Captcha Erweiterungen können zusammen mit Powermail und ve_guestbook eingesetzt werden. Mailformplus unterstützt in jedem Fall sr_freecap, was auch etwas umfangreicher als captcha ist.
Was ist eigentlich ein Captcha? Unter einem Captcha versteht man ein Bild das Zahlen und Ziffern anzeigt, die der User lesen und in einem speziellen Feld eintragen soll. Der ursprüngliche Gedanke ging davon aus, dass nur ein Mensch in der Lage wäre, ein Text auf einem Bild zu erkennen, was Maschinen aussperren sollte. Zur Effizienz unten mehr…
jm_recaptcha [link]:
Eine aufgender Stern am captcha Himmel? Na in jedem Fall eine Alternative in Bezug auf mailformplus und Powermail. Ein reCaptcha unterscheidet sich etwas von einem normalen Captcha, da es aus zwei Wörtern besteht (eines davon wurde per OCR zuvor falsch erkannt). Ein Nachteil ist jedoch die Verbindung zu einem fremden Server und die mangelnde Konfigurationsmöglichkeit.
wt_calculating_captcha [link]:
Hierbei handelt es sich um eine ganz neue Captcha Erweiterung, die den User zum Kopfrechnen auffordert. Diese Variante wird derzeit nur in Powermail unterstützt, was sich aber noch ändern kann.
wt_spamshield [link]:
Spamshield kann mit Powermail oder ve_guestbook (leichte Modifikation nötig) verwendet werden. Spamshield vereint mehrere Anti-Spam Varianten (z.B. Sessioncheck, Timecheck, Linkcheck, Akismet, Namecheck – Details sind im entsprechenden Handbuch nachzulesen), ohne ein Captcha einsetzen zu müssen; daher wohl die barrierearmste Variante Spam zu vermeiden. Diese Erweiterung wurde in der T3N Nr.13 [link] im Zusammenhang mit ve_guestbook vorgestellt.
Submit via JavaScript [link]:
Eine andere Alternative ist es, dass Ziel des Formulares (target) falsch zu setzen und über JavaScript das eigentliche Target zu nutzen. Diese Variante kann man eigentlich in allen Formular Extensions mit HTML Template selber integrieren.
Honeypot Methode [link]:
Wer gerne selber Hand an Extensions legt oder vielleicht spamshield um eine weitere vielversprechende Methode erweitern will, kann sich an Honeypod orientieren. Im Prinzip wird hier ein zusätzliches Feld hinzugefügt, dass aber per CSS und/oder JavaScript ausgeblendet wird. Davon ausgehend, dass ein „blöder“ Spamrobot einfach alle Felder die er findet zumüllt, müsste der Spam-Alarm ausgelöst werden, sobald sich Inhalt im Honeypod befindet. Hier gibt es derzeit noch keine Erweiterung in TYPO3.
Fazit:
Wolltest du dich schon Mal in einem Forum anmelden und hattest Probleme das gezeigte Captcha zu entziffern? Das heißt aber noch lange nicht, dass eine Maschine auch Probleme hat, das gleiche Captcha per ausgekniffelter OCR Software aufzuschlüsseln! Daher ist es fraglich wie sicher der Einsatz eines Bildes mit Text vor ungewollten Nachrichten noch schützen kann. Ein reCaptcha ist zumindest in der Theorie vielversprechender als ein normales Captcha. Falls aber ein Captcha zum Einsatz kommen soll, ist darauf zu achten, dass man sich schon als Mensch schwer tut, die richtigen Ziffern zu erkennen. Ich konnte keinen signifikanten Unterschied zwischen den einzelnen Captcha Extensions erkennen. Der größte Unterschied liegt wohl in der jeweiligen Flexibilität und Einsetzbarkeit. Leider fehlen mir derzeit auch sämtliche Erfahrungen in wie weit eine Maschine derzeit noch mit einem Rechencaptcha fertig wird, aber auch das dürfte mittelfristig kein Problem darstellen.
Eine echte Alternative ist wt_spamshield, die es bei mir geschafft hat, den kompletten Spam auszuschließen! Aber auch die Methode über Javascript das Formularziel zu ändern, soll sich sehr gut eignen und erfordert eigentlich nur JavaScript beim Besucher.
Leider gibt es in TYPO3 noch keine mir bekannte Extension die sich der Honeypod Methode annimmt – hier wäre also Handarbeit nötig.
Im Übrigen ist mir aufgefallen, dass der Einsatz einer Bestätigungsseite (mit Powermail nur ein Haken) schon ca. 90% aller Spameinträge verhindert – und das ganz ohne weitere Extension 🙂
Interessante Links zu diesem Thema:
- Ähnlicher Blogeintrag bei Blogspot.com
- Diskussion zur Spamvermeidung
- Eigener Forenbereich zu wt_spamshield
Habe ich etwas wichtiges vergessen oder übersehen? Gibt es noch interessante Links? Aber auch sonst freue ich mich über jeden Kommentar!
Grüße, Alex
[Update 13. Januar 08]
Innerhalb der letzten Tage hat sich eine Menge getan in Sachen Spam-Prevention, daher muss ich meinen Beitrag noch einmal ergänzen:
- wt_spamshield: Seit 0.5.0 kann die Extension auch mit dem Standard Kontaktformular verwendet werden
- wt_spamshield: Seit 0.5.0 auch mit Honeypot Methode
- wt_calculating_captcha: Seit 0.1.2 kann das Captcha auch mit dem Standard Kontaktformular verwendet werden
- mf_akismet [link]: Alternative wenn man ve_guestbook ausschließlich mit einer Akismet Überprüfung ergänzen will
- aw_antispambots [link]: Honeypot und Rechenaufgaben ausschließlich für Mailformplus