renephoenix.de

Spamversand mit E-Mail-Formularen

Viele E-Mail-Formulare (z.B. das hier) bieten einen nützlichen Service an: beim Versand einer E-Mail erhält der Versender eine Kopie in sein Postfach. Ein Spamversender könnte nun die Adresse des Opfers als Absenders eintragen — damit dieser dann Post erhält.

Eben bekam ich zwei E-Mails, die sehr nach so einem Spammer aussahen: einmal eine direkte E-Mail an mich und einmal kam die Benachrichtigung als unzustellbar zurück (Server nicht verfügbar).

Gegen diesen Mißbrauch gibt es technisch kaum eine Schutzmaßnahme, außer man verzichtet auf dieses Feature. Allerdings hat man einen Überblick und sieht sofort, wann der Dienst mißbraucht wurde! Sollten sich solche Fälle häufen, werde ich diese Benachrichtigungsfunktion entfernen.

Phil hätte ähnliche Probleme mit Spammern gehabt, in seinem Falle nutzten die Spammer die Möglichkeit, mittels eines Tricks blinde Kopien zu versenden (BCC). Diese Lücke kann man allerdings beheben, in dem die Absenderadresse keine Zeilenumbrüche enthalten darf.

Bisherige Kommentare (5)

Kommentar von Matthias

Sowas versuchte auch der allseits bekannte jrubin3456@aol.com (alternativ hätte ich noch bergkoch8@aol.com zu bieten) mittels automatischem Skript auf meiner alten Homepage... Vergeblich :D
In der c't 22/05, S. 208 stand damals auch ein (zumindest für PHP-Anfänger) ganz interessanter Artikel über eben dieses Thema.

Meine Gegenmassnahmen: Ich speicher' bei jedem Eintrag (ob in Gästebuch, Kommentar oder sonstwo ist egal, es geht hier nur ums Prinzip) das Datum, die Session-ID und die IP-Adresse.
Besteht einer dieser Einträge und wurde er vor weniger als x Minuten angelegt dann liefere ich eine nette Meldung zurück »Nur alle x Minuten«. Andernfalls wird der Eintrag zugelassen.
Um dies zu umgehen müsste der Spammer schon seine Cookies deaktivieren, damit sich die Session-ID bei jedem Aufruf ändert und einen Proxy benutzen, der die IP-Adresse ständig wechselt. Gegen diese dämlichen Skript-Kiddies ist dieses Vorgehen bisher sehr erfolgreich geblieben.

Kommentar von Thiemo

Es gibt keine Möglichkeit, das abzusichern. Dazu müsste sich der Absender des Formulares irgendwie authentifizieren. Die einfachste Lösung ist, auf die »Kopie an mich selbst« zu verzichten und den ursprünglichen Text in der Antwortmail sauber zu zitieren.

Kommentar von Matthias

Hundertprozentig kann man das sicherlich nicht verhindern. Allerdings kann man durch obigen Algo schon viele Spams verhindern. Ausserdem kann man eine generelle Sperre einbauen, die verhindert, dass mehrere Mails von »unterschiedlichen« Benutzern (Session, IP) pro Zeiteinheit versandt werden können. Und ich glaube kaum, dass Spammer sich damit zufrieden geben, alle 5 Minuten eine Mail zu versenden, dafür gibt es wesentlich praktischere Botnetze.

Kommentar von Sebastian

Hi,

meiner Meinung ist die Pflichteingabe eines Bildcodes, wie es bei der Anmeldung in vielen Foren schon standard ist, eine gute Lösung!

Sicherlich leidet darunter die Benutzerfreundlichkeit, weil man eine zusätzliche Eingabe machen muss und damit die Nützlichkeit eines bequemen Form-Mailers in Frage gestellt wird, doch hat man dann mit Formular-Spam wahrscheinlich keine Probleme mehr!

In Zukunft werde ich meinen Kunden derartige Lösungen anbieten.

Vielleicht ist die hier erwähnte Lösung mit Cookies und Session-Id auch besser. Ich weiß es noch nicht!

Gruß,
Sebastian

Kommentar verfassen

Freiwillige Angabe
Freiwillige Angabe
Der Text kann mit Textile formatiert werden, z.B. *fett* _kursiv_ "link":url. Wie das geht?
Wieviel ist 40 plus 2?

Bisherige Trackbacks (0)

Es wurde noch kein Trackback empfangen!