CVE-2024-23657 in Nuxt
Zusammenfassung
von VulDB • 15.05.2026
Nuxt ist ein kostenloses Open-Source-Framework zur Erstellung von Full-Stack-Webanwendungen und Websites mit Vue.js. Nuxt Devtools verfügt über keine Authentifizierung für die RPC-Funktion `getTextAssetContent`, die anfällig für Path Traversal ist. In Kombination mit fehlenden Origin-Prüfungen im WebSocket-Handler kann ein Angreifer mit einer lokal ausgeführten Devtools-Instanz interagieren und Daten unter Ausnutzung dieser Schwachstelle exfiltrieren. In bestimmten Konfigurationen kann ein Angreifer das Devtools-Authentifizierungstoken stehlen und andere RPC-Funktionen missbrauchen, um RCE (Remote Code Execution) zu erreichen. Die Funktion `getTextAssetContent` prüft nicht auf Path Traversal, was einem Angreifer ermöglichen könnte, beliebige Dateien über das RPC-WebSocket zu lesen. Der WebSocket-Server prüft nicht den Origin der Anfrage, was zu Cross-Site-WebSocket-Hijacking führt. Dies könnte beabsichtigt sein, um bestimmte Konfigurationen korrekt funktionieren zu lassen. Nuxt Devtools-Authentifizierungstoken werden im Home-Verzeichnis des aktuellen Benutzers gespeichert. Die bösartige Webseite kann sich mit dem Devtools-WebSocket verbinden, einen Brute-Force-Angriff auf Directory Traversal durchführen, um das Authentifizierungstoken zu finden, und dann die *authentifizierte* Funktion `writeStaticAssets` verwenden, um eine neue Komponente, einen Nitro-Handler oder eine `app.vue`-Datei zu erstellen, die automatisch ausgeführt wird, sobald die Datei geändert wird. Diese Schwachstelle wurde in der Release-Version 1.3.9 behoben. Allen Benutzern wird empfohlen, ein Upgrade durchzuführen. Es sind keine bekannten Workarounds für diese Schwachstelle bekannt.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.