Spamshield (wt_spamshield)

Spamshield ist eine Extension, die Spam über HTML-Formulare in TYPO3 verhindern hilft. Derzeit funktioniert sie mit dem Standard-Kontaktformular, mit powermail und ve_guestbook.

Im Standard-Mailform greifen folgende Methoden:

  1. Prüfung der Gültigkeit einer http-Session (useSessionCheck): Wenn das Formular generiert wird, erhält die Session einen Zeitstempel.
  2. Prüfung der Geschwindigkeit der Eingabe (SessionStartTime, SessionEndTime): Zeitfenster, in dem Eingaben durch einen Benutzer wahrscheinlich und damit zulässig sind (Standardeinstellung 10 Sekunden bis 10 Minuten)
  3. Begrenzung der Anzahl von Links in der Benutzereingabe (usehttpCheck)
  4. Prüfung von identischen Eingaben in verschiedenen Feldern (notUnique), z.B. Vorname und Nachname
  5. Honeypod-Eingabefeld (honeypodCheck): Im Mailformular wird ein verstecktes Feld eingefügt, das von menschlichen Benutzern nicht ausgefüllt werden kann. Enthält es einen Eintrag, wird keine Mail versendet.

Konfiguration für das Standard-Mailformular

Mit folgenden Einstellungen ist die Erweiterung unter http://room-yoga.de im Einsatz.

Konfiguration im Extension Manager

Use Name Check 0
Use HTTP Check 2
Use unique check
Use honeypod check 1
Use Session Check 1
Session start time 10
Session end time 600
Enter Akismet Key 0
Send email if spam
PID where to save logs -1

Setup des Seiten-Templates:

  plugin.wt_spamshield {
    enable.standardMailform = 1
    redirect.standardMailform = http://room-yoga.de/index.php?id=69
    enable.powermail = 0
    enable.ve_guestbook = 0
    message {
      session.note1 = Die Zeit für die Eingabe ist leider abgelaufen.
      session.note2 = So schnell tippt doch kein Mensch!
      session.note3 = Bitte beenden sie nicht die Session!
      httpcheck = Bitte verwenden Sie nicht mehr als %s Verweise
      uniquecheck = Bitte das Formular sinnvoll ausfüllen
      honeypod = Bitte dieses Formular nicht für Spam verwenden
    }
  }

Hier braucht man angeblich auch folgenden Code (FIXME sollte gelegentlich mal getestet werden):

  includeLibs.spamshield = EXT:wt_spamshield/ext/class.tx_wtspamshield_defaultmailform.php
  tt_content.mailform = COA_INT
  tt_content.mailform {
    16 = LOAD_REGISTER
    16 {
      wt_spamshield.cObject = USER
      wt_spamshield.cObject.userFunc = tx_wtspamshield_defaultmailform->generateSession
    }
    20.no_cache = 1
  }

Quelle: Formularspam in TYPO3 bekämpfen

Ich vermute allerdings, dass es genügt, im Template unter „Include static (from extensions)“ die „wt_spamshield standard mailform protection“ einzubinden.