„`html
Zusammenfassung
Cloudreve vor Version 4.16.1 weist eine Path-Traversal-Schwachstelle in der WebDAV-Implementierung auf. Diese ermöglicht es authentifizierten Benutzern, auf Dateien außerhalb ihres konfigurierten Zugriffsbereichs zuzugreifen. Die Sicherheitslücke wird mit CVSS 7.1 bewertet und erlaubt unbefugten Lesezugriff sowie möglicherweise Dateimanipulation.
Betroffene Systeme
- Cloudreve Versionen vor 4.16.1
- WebDAV-Konten mit aktiviertem Zugriff
- Self-Hosted Instanzen mit konfigurierten Rootordnern
Technische Details
Die Verwundbarkeit liegt in der Datei pkg/webdav/webdav.go in der stripPrefix-Funktion. Bei der Verarbeitung von WebDAV-Anfragen werden Pfade nicht korrekt validiert. Die Funktion nutzt fs.URI.JoinRaw, um den dekodierten Request-Suffix mit dem Account-Root zu verbinden, ohne eine Eindämmungsprüfung durchzuführen.
Ein Angreifer kann URL-kodierte Pfad-Traversal-Sequenzen verwenden, beispielsweise /dav/%2e%2e/outside.txt, wobei %2e%2e für .. dekodiert wird. Dies ermöglicht das Umgehen der Zugriffsbeschränkungen und das Navigieren außerhalb des konfigurierten Ordners.
Betroffene Operationen:
- Lesezugriff auf Dateien auĂźerhalb des Scopes
- Verzeichnisauflistung auĂźerhalb des Scopes
- Bei beschreibbaren Credentials: Erstellen, Überschreiben, Verschieben oder Löschen von Dateien außerhalb des konfigurierten Bereichs
Empfohlene Massnahmen
- Sofortige Aktualisierung: Cloudreve auf Version 4.16.1 oder höher aktualisieren
- Zugriffskontrolle: WebDAV-Konten überprüfen und unnötige Schreibrechte einschränken
- Monitoring: Audit-Logs auf verdächtige Pfad-Traversal-Versuche prüfen
- Segmentierung: WebDAV-Zugriff auf notwendige Benutzer beschränken
Bewertung
Schweregrad: High | CVSS-Score: 7.1
Die Schwachstelle ermöglicht unbefugten Dateizugriff durch authentifizierte Benutzer. Besonders kritisch bei Systemen mit sensiblen Daten.
„`