Sven Rautenberg: Spammender Formmailer ist das Problem!

Beitrag lesen

Moin!

Doch inzwischen bekomme ich bis zu 100 Emails pro Tag mit meinem Formular als Absender. Die Formularfelder sind immer mit mehr oder weniger sinnvollen englischen Wörtern ausgefüllt - enthalten jedoch nie Links.

Dein Formmailer ist für Spammer angreifbar! Du solltest ihn so, wie er ist, sofort offline nehmen und durch eine vernünftige Version ersetzen!

  

> $mailprog = '/usr/sbin/sendmail';  

[...]  

> open (MAIL, "|$mailprog -t") or dienice("Can't access $mailprog!\n");  

# Diese direkte Form des Zugriffs auf das sendmail ist ungefiltert - das ist im Folgenden genau das Problem!  
  

> print MAIL "To: $recipient\n";  
> print MAIL "From: Mein Formular 5.00 \n";  

# In diese zwei Prints kann man nichts von außen einschleppen, aber...  
  

> # Wenn die Felder Email und Name vorhanden sind  
> # werden diese für die Reply-to Funktion benutzt  
>   
> print MAIL "Reply-to: $FORM{'Email'} ($FORM{'Name'})\n";  

# ...in dieses Print kann man beliebige zusätzliche Header einbringen, indem man einfach ein Newline \n im Feld mitsendet und danach dann beliebigen weiteren Text, der aktiv wird. Z.B. weitere Bcc-Header, oder direkt eine komplett andere Mail.  

Du mußt ganz dringend sämtliche der Felder, die du in deinen Mailheader einbaust, validieren auf korrekte Form. Zeilenumbrüche dürfen darin NIEMALS enthalten sein. Ein Zeilenumbruch ist tödlich.

- Sven Rautenberg

--
My sssignature, my preciousssss!