mail() und SPAM
Fabienne
- php
0 lulu0 Fabienne
0 Mathias Brodala
Hallo zusammen,
ist es möglich, dass jemand über ein Formular die FROM-Adresse einschleust und somit ein SPAM-fähiges Formular gefunden hat?
Konkret:
mail($to,$betreff,$text,"FROM:".$from);
Die Vars to, betreff sind fix definiert. $text wird aus dem Formular übernommen.
Könnte also jemand in die Var $text irgendwas wie z.B. "blablabl , FROM:meine_SPAM@adresse.de" reinschreiben und damit der Funktion Mail eine FROM-Adresse vorgaukeln?
Vielen Dank für Eure Antwort!
Fabe
Huhu Fabienne,
ist es möglich, dass jemand über ein Formular die FROM-Adresse einschleust und somit ein SPAM-fähiges Formular gefunden hat?
Ja.
mail($to,$betreff,$text,"FROM:".$from);
Die Vars to, betreff sind fix definiert. $text wird aus dem Formular übernommen.
Und was ist mit $from?
Könnte also jemand in die Var $text irgendwas wie z.B. "blablabl , FROM:meine_SPAM@adresse.de" reinschreiben und damit der Funktion Mail eine FROM-Adresse vorgaukeln?
Nein, aber mit $from.
http://de.wikipedia.org/wiki/E-Mail-Injektion
Viele Grüße
lulu
Hi,
mail($to,$betreff,$text,"FROM:".$from);
$from ist fix belegt durch
$from="homepageformular@".$_SERVER[HTTP_HOST];
Ist es jetzt noch möglich über $text ($text=$_POST[text], nahezu üngeprüft!!) headers einzuschleusen?
Viele Grüße und Dank!
Fabe
hi,
$from ist fix belegt durch
$from="homepageformular@".$_SERVER[HTTP_HOST];
Auch der Hostname wird vom Client übermittelt.
(Wenn dieser nicht "stimmt", dürfte es zwar in einer Shared Hosting Umgebung evtl. schwierig werden, dein Script überhaupt zu erreichen - aber "unmöglich" dürfte das Einschleusen von unerwarteten Werten darüber trotzdem nicht sein.)
gruß,
wahsaga
Hi Wahsaga,
(Wenn dieser nicht "stimmt", dürfte es zwar in einer Shared Hosting Umgebung evtl. schwierig werden, dein Script überhaupt zu erreichen - aber "unmöglich" dürfte das Einschleusen von unerwarteten Werten darüber trotzdem nicht sein.)
Klingt logisch.
Aber: Ist es gefährlich die Absender-Adresse als HTTP_HOST anzugeben oder sollte man lieber eine fixe Adresse eintragen?
Wie steht es um das einschleusen über die Var $text, wenn ich die header-Sachen selbst definiere? Kann dann trotzdem jemand über die Var $text meinen header manipulieren?
Viele Grüße
Fabe
hi,
Klingt logisch.
Aber: Ist es gefährlich die Absender-Adresse als HTTP_HOST anzugeben oder sollte man lieber eine fixe Adresse eintragen?
Es ist gefährlich, davon auszugehen, dass ein von extern kommender Parameter nur bestimmte, bekannte Werte enthalten kann - _immer_.
Never trust incoming data.
Fix angeben musst du den Wert natürlich nicht - wenn du eingehende Werte in ausreichendem Maße auf Gültigkeit prüfst.
gruß,
wahsaga
Hallo Fabienne.
mail($to,$betreff,$text,"FROM:".$from);
$from ist fix belegt durch
$from="homepageformular@".$_SERVER[HTTP_HOST];Ist es jetzt noch möglich über $text ($text=$_POST[text], nahezu üngeprüft!!) headers einzuschleusen?
Anmerkung: Du solltest $_SERVER['HTTP_HOST'] und $_POST['text'] schreiben, da du andernfalls auf die undefinierten Konstanten „HTTP_HOST“ und „text“ zuzugreifen versuchen würdest. PHP meldet dies gutmüßtigerweise nur mit einer Notice und interpretiert die undefinierte Konstante als String.
Zudem ist das Umspeichern von $_POST['text'] auf $text überflüssig; ersteres kannst du direkt verwenden.
Einen schönen Sonntag noch.
Gruß, Mathias
Hallo Fabienne.
mail($to,$betreff,$text,"FROM:".$from);
[…]
Könnte also jemand in die Var $text irgendwas wie z.B. "blablabl , FROM:meine_SPAM@adresse.de" reinschreiben und damit der Funktion Mail eine FROM-Adresse vorgaukeln?
Nein.
Einen schönen Sonntag noch.
Gruß, Mathias