Moin!
/* Diese drei Werte koennen fuer Headerinjektionen benutzt
* und werden daher extra behandelt.
*/
$subj = str_replace(array("\n", "\r"), ' ', $subj);
$fromName = str_replace(array("\n", "\r"), ' ', $fromName);
$fromAddr = str_replace(array("\n", "\r"), '', $fromAddr);
>
> Wenn diese drei Werte aus einzeiligen Formularfeldern stammen, deutet die Existenz von Zeilenumbruechen in ihren Inhalten doch mit an Sicherheit grenzender Wahrscheinlichkeit auf einen Manipulationsversuch hin.
Davon sollte man ausgehen. Außerdem lassen doch die Header für den Betreff und Absender auch nur eine Zeile als Wert zu, oder?
Aber was mich viel brennender interessiert: Gibt es darüber hinaus noch weitere gefährlich Zeichen, die man Herausfiltern oder (die Email) Verwerfen sollte?
Viele Grüße,
Robert