
CVE-2022-31147 is a path traversal flaw in matthiasmullie/minify. This guide helps security teams test for arbitrary file read on Linux and Windows using Python and curl. It covers automated payload generation, manual validation, and safe practices for vulnerability assessment.
Diese Anleitung bietet umfassende Methoden zum Testen von CVE-2022-31147, einer kritischen Path-Traversal-Schwachstelle in der weit verbreiteten Bibliothek matthiasmullie/minify. Die Schwachstelle ermöglicht es Angreifern, unzureichende Eingabesäuberung im Minify-Endpunkt auszunutzen, um potenziell beliebige Dateien auf Linux- und Windows-Servern zu lesen. Diese Anleitung richtet sich an Sicherheitsexperten, Penetrationstester und Forscher, die die Gefährdung von Webanwendungen durch diese Bedrohung evaluieren möchten.
Der Kern der Anleitung ist ein automatisiertes Python-Proof-of-Concept-Skript, das systematisch eine Vielzahl von Traversal-Payloads generiert und testet. Diese Payloads nutzen verschiedene Tiefen des Verzeichnistraversals (../), mehrere Kodierungsschemata (wie URL-Kodierung und doppelte Kodierung) sowie Endpunkt-Varianten (einschließlich falscher Erweiterungen und Query-Parameter), um gängige Routing- und Filtermechanismen zu umgehen. Durch den Einsatz dieser Techniken maximiert das Skript die Wahrscheinlichkeit, anfällige Konfigurationen zu erkennen, selbst in Umgebungen, die durch grundlegende Web Application Firewalls oder benutzerdefinierte Routing-Logik geschützt sind.
Die Erkennungsgenauigkeit wird weiter durch integrierte Heuristiken verbessert, die den Antwortinhalt auf bekannte Dateimarker analysieren. Bei Linux-Zielen sucht das Skript nach Mustern typischer /etc/passwd oder anderer sensibler Dateien, während es bei Windows-Systemen nach Indikatoren in Dateien wie win.ini sucht. Dieser Ansatz stellt sicher, dass eine erfolgreiche Ausnutzung zuverlässig identifiziert wird, Fehlalarme minimiert und der Validierungsprozess optimiert wird.
Zusätzlich zu automatisierten Tests beschreibt die Anleitung manuelle Validierungstechniken mit curl, die es Praktikern ermöglichen, benutzerdefinierte Anfragen für gezielte Analysen zu erstellen und zu senden oder Ergebnisse unabhängig zu überprüfen. Empfehlungen für sichere und autorisierte Tests werden durchgängig betont, einschließlich der Notwendigkeit, nur auf Systemen zu testen, für die eine ausdrückliche Genehmigung erteilt wurde.
Die Anleitung ist darauf ausgelegt, sowohl schnelle Validierung als auch eingehende Analysen zu unterstützen und ermöglicht benutzerdefinierte Dateiziele sowie erweiterte Umgehungsstrategien. Sie kann in breitere Schwachstellenbewertungs-Workflows integriert werden und liefert umsetzbare Erkenntnisse für Behebung und Risikomanagement. Durch die Anwendung der vorgestellten Methoden können Sicherheitsteams CVE-2022-31147-Expositionen in ihren Umgebungen effektiv identifizieren, validieren und beheben, wodurch die allgemeine Sicherheitslage ihrer Webanwendungen gestärkt wird.
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --linux --file /etc/passwd
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --windows --file C:\Windows\win.ini
Erstellen Sie eine harmlose Datei auf dem Server und versuchen Sie dann, diese zu lesen:
python3 cve-2022-31147_poc.py --base https://yourdomain.tld/cdn/minify --file /var/www/test.txt
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../windows/win.ini"
curl -i "https://yourdomain.tld/cdn/minify/%2e%2e/../%2e%2e/../../etc/passwd"
curl -i "https://yourdomain.tld/cdn/minify/../../../../../../etc/passwd.css"
https://yourdomain.tld/cdn/minify durch Ihre tatsächliche Ziel-URL.