Wojciech Purczynski hat herausgefunden, dass es für Skripte möglich ist, willkürlichen Text an sendmail als Befehlszeilen-Erweiterung zu übergeben, wenn eine Mail über PHP versendet wird, selbst wenn safe_mode eingeschaltet ist. Das Übergeben eines fünften Arguments sollte verhindert werden, wenn safe_mode aktiviert ist, was der Fall für neuere PHP-Versionen und für die unten angeführten Versionen ist. Dies betrifft jedoch nicht PHP3.
Wojciech Purczynski hat ebenfalls herausgefunden, dass willkürliche ASCII Kontroll-Zeichen in Zeichenketten-Argumente der mail() Funktion eingebracht werden können. Wenn mail() Argumente aus Benutzer-Eingaben gebildet werden, kann es dem Benutzer die Möglichkeit geben, den Nachrichtentext inklusive der Mail-Kopfzeilen zu verändern.
Ulf Härnhammar entdeckte, dass file() und fopen() für eine CRLF-Injektion anfällig sind. Ein Angreifer könnte es dazu verwenden, bestimmte Einschränkungen zu umgehen, und willkürlichen Text zu angeblichen HTTP-Anfragen hinzufügen, der weitergereicht wird.
Jedoch passiert dies nur, wenn etwas an diese Funktionen übergeben wird, das weder eine gültige Datei noch eine gültige URL ist. Jede Zeichenkette, die Kontroll-Zeichen enthält, kann keine gültige URL sein. Bevor Sie eine Zeichenkette übergeben, die eine URL zu einer Funktion sein soll, müssen Sie urlencode() verwenden, um diese zu kodieren.
Drei Probleme wurden in PHP identifiziert:
Diese Probleme wurden in Version 3.0.18-23.1woody1 von PHP3 und 4.1.2-5 von PHP4 für die aktuelle stable Distribution (Woody), in Version 3.0.18-0potato1.2 von PHP3 und 4.0.3pl1-0potato4 von PHP4 für die alte stable Distribution (Potato) und in Version 3.0.18-23.2 von PHP3 und 4.2.3-3 von PHP4 für die unstable Distribution (Sid) behoben.
Wir empfehlen Ihnen, Ihre PHP-Pakete zu aktualisieren.
MD5-Prüfsummen der aufgeführten Dateien stehen in der ursprünglichen Sicherheitsankündigung zur Verfügung.