„`html
Zusammenfassung
CVE-2026-77763 ist eine Path-Traversal-Sicherheitslücke mittleren Schweresgrades (CVSS 6.5) in der filestore-Backend-Komponente von JuiceFS. Die Schwachstelle ermöglicht es Angreifern, Dateien außerhalb des vorgesehenen Zielverzeichnisses zu schreiben, wenn Object-Keys während einer Synchronisierung nicht validiert werden. Dies betrifft insbesondere Szenarien, in denen vertrauensunwürdige Buckets als Synchronisierungsquellen verwendet werden.
Betroffene Systeme
Die Vulnerabilität betrifft JuiceFS-Installationen, die:
- Das file:// Protocol fĂĽr Objektspeicherung nutzen
- Bucket-Synchronisierungen durchfĂĽhren
- Auf die fehlerhafte Version von pkg/object/file.go basieren
Besonders gefährdet sind Operatoren, die Daten aus öffentlichen, gemeinsamen oder vom Angreifer beeinflussbaren Buckets synchronisieren.
Technische Details
Die Schwachstelle existiert in der path()-Funktion von pkg/object/file.go. Diese Funktion konstruiert Dateipfade entweder ĂĽber filepath.Join(d.root, key) oder filepath.Clean(d.root + key), ohne zu prĂĽfen, ob der resultierende Pfad innerhalb des Root-Verzeichnisses verbleibt.
Die Funktionen Put, Get, Head, Delete, Chmod, Chown, Symlink und Readlink verarbeiten diese Werte direkt ohne zusätzliche Validierung. Object-Keys aus Quellspeichern unterliegen nicht denselben Beschränkungen wie lokale Dateisystemnamen, wodurch Path-Traversal-Segmente (z.B. „../“) ermöglicht werden.
Angreifer können so manipulierte Keys bereitstellen, die dazu führen, dass JuiceFS Inhalte außerhalb des beabsichtigten Zielverzeichnisses schreibt – ohne Fehler zurückzugeben.
Empfohlene Massnahmen
- Sofortig: Synchronisierungen aus untrusted Quellen einschränken oder pausieren
- Validation: Input-Validierung fĂĽr Object-Keys implementieren
- Monitoring: Dateisystem-Aktivitäten außerhalb des Root-Verzeichnisses überwachen
- Patch: Auf korrigierte Version upgraden, sobald verfĂĽgbar (modifizierte path()-Funktion mit Error-Handling)
Bewertung
Schweregrad: Medium (CVSS 6.5)
Angriffsvektor: Network
Status: Patch ausstehend
Die LĂĽcke erfordert administrative MaĂźnahmen und bietet erhebliches Missbrauchspotential in Multi-Tenant-Umgebungen.
„`