• CWE-616: Incomplete Identification of Uploaded File Variables (PHP)

Die PHP-Anwendung verwendet eine veraltete Methode zur Verarbeitung hochgeladener Dateien, indem sie auf die vier globalen Variablen zugreift, die für jede Datei gesetzt sind (z.B. $varname, $varname_size, $varname_name, $varname_type). Diese Variablen könnten von Angreifern überschrieben werden, was dazu führen könnte, dass die Anwendung nicht autorisierte Dateien verarbeitet.

CWE-616: Incomplete Identification of Uploaded File Variables (PHP)

CWE ID: 616
Name: Incomplete Identification of Uploaded File Variables (PHP)

Beschreibung

Die PHP-Anwendung verwendet eine veraltete Methode zur Verarbeitung hochgeladener Dateien, indem sie auf die vier globalen Variablen zugreift, die für jede Datei gesetzt sind (z.B. $varname, $varname_size, $varname_name, $varname_type). Diese Variablen könnten von Angreifern überschrieben werden, was dazu führen könnte, dass die Anwendung nicht autorisierte Dateien verarbeitet.

Erweiterte Beschreibung

Diese globalen Variablen könnten durch POST-Requests, Cookies oder anderen Methoden, die diese Variablen füllen oder überschreiben, manipuliert werden. Dies könnte ausgenutzt werden, um beliebige Dateien zu lesen oder zu verarbeiten, indem Werte wie “/etc/passwd” bereitgestellt werden.

Risikominderungsmaßnahmen

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Verwenden Sie PHP Version 4 oder höher.

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Wenn Sie ältere PHP-Versionen unterstützen müssen, schreiben Sie Ihre eigene Version von is_uploaded_file() und führen Sie diese gegen $HTTP_POST_FILES['userfile']) aus.

Maßnahme (Implementation)

Effektivität: Unknown
Beschreibung: Bei neueren PHP-Versionen verweisen Sie auf hochgeladene Dateien mit den Variablen $HTTP_POST_FILES oder $_FILES und verwenden is_uploaded_file() oder move_uploaded_file(), um sicherzustellen, dass Sie mit einer hochgeladenen Datei arbeiten.