Heute möchte ich über ein Feature berichten, das bereits seit Oktober 2013 bei lima-city im Hintergrund aktiv ist und unbemerkt für mehr Sicherheit sorgt: unser Spam-Schutz. Und zwar nicht für E-Mail, sondern für die Webseiten.
Im Oktober 2013 wurde es uns langsam zu viel: wir investierten einen großen Teil unserer täglichen Arbeit darin, Spam oder deren Auswirkungen aufzuräumen. „Spam“ allerdings nicht im klassichen Sinne von E-Mails sondern in der Web-Version:
- Kommentar-Spam bei WordPress-Blogs
- Bot-Registrierungen und Spam-Posts bei Foren
- Automatisierte Bot-Logins in Blogs und CMS
- Ausnutzung von fehlerhaft programmierten Kontaktformularen für „normalen“ Spam-Versand
Die Auswirkungen davon sind recht vielseitig. Zum einen kostet es uns Rechenkapazität, diese ganzen sinnlosen Anfragen zu verarbeiten. Es werden aber auch, z.B. bei den Bot-Registrierungen, Bestätigungs-E-Mails versendet. Diese wiederum werden zum Teil als „Mailbomben“ verwendet. Benutzeraccounts wurden kompromittiert und Webseiten gekapert. WordPress-Admins haben viel mit dem Aussortieren von Spam-Kommentaren zu tun. Datenbanken werden von Spam-Registrierungen über Jahre hinweg mit hunderttausenden, sinnlosen Bot-Accounts zugemüllt. All das wollten wir abschaffen.
Wir hätten verschiedene Wege gehen können. Es wäre möglich gewesen, alle Webmaster anzuschreiben und Fehler zu beheben. Das wäre aber eine niemals endende Mammutaufgabe geworden. Wir haben uns dafür entschieden die Verursacher zu verbannen. Inzwischen setzen wir dazu ein zweistufiges System ein:
Stufe 1: Einsatz der Blocklist (Okt 2013)
Im Oktober 2013 haben wir die erste Stufe unseres Spam-Schutz installiert. Über blocklist.de bekommen wir alle 30 Minuten eine aktualisierte Liste von IP-Adressen, die als Bots bekannt sind. Diese Bots schließen wir von unserem Angebot aus, der Grund für die Sperre und ein Link zum Delisting bei blocklist.de wird angezeigt.
Daneben wird auch unsere Support-E-Mail-Adresse angezeigt, damit sich Besucher mit Problemen bei uns melden können.
Diese Sperre blockiert täglich zwischen 45.000 und 80.000 Zugriffe.
Stufe 2: Einsatz verhaltensbasierter Filter (März 2014)
Die Sperre über Blocklist war zwar effektiv, half aber nur gegen bereits bekannte Bots. Wenn ein Bot nicht gemeldet war gab es keinen Schutz. Im März 2014 haben wir daher einen weiteren Filter hinzugefügt, der das Browser-Verhalten testet. Es werden einmalig mehrere Eigenschaften des Browsers getestet und in Cookies abgelegt (diese tauchen als _lcp-Cookies auf, es gibt keine statistische Erfassung der Besucher!). Wenn der Besucher bestimmte Aktionen durchführen will (z.B. einen WordPress-Kommentar, eine Registrierung in einem Forum, etc) werden die Eigenschaften abgefragt. Weist ein Besucher bestimmte Browsermerkmale nicht auf handelt es sich um einen Bot, der nur vorgibt dieser Browser (z.B. ein Firefox Version 26 oder Chrome) zu sein. Diese Zugriffe werden dann geblockt.
Dieses Vorgehen ist sehr zielgerichtet und äußerst effektiv. Es blockt täglich zwischen 8.000 und 20.000 Aktionen (nicht Zugriffe) die nicht erwünscht sind. Selbstverständlich wird auch hier unsere Support-E-Mail-Adresse angezeigt.
Das gesamte System blockiert so bis zu 100.000 Zugriffe am Tag, die für uns und den Webseitenbetreiber keinen Nutzen sondern nur Arbeit erzeugen. In einer demnächst kommenden Statistik werden diese Zugriffe dann auch gekennzeichnet. Wir haben seit der Umsetzung unserer Lösung so gut wie keinen nennenswerten Spam mehr gesehen. Wenn doch etwas auftauchen sollte: bitte gebt uns Bescheid, damit wir unsere Filter ggf. anpassen können!