Security: Path Traversal im Image-Endpoint erlaubt beliebigen Dateizugriff #64
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Beschreibung
Der Endpoint
GET /api/tickets/{id}/images/{idx}inbackend/api/tickets.py:321-341validiert den Dateipfad nicht. Durch manipulierte Bildpfade in der Datenbank kann ein Angreifer beliebige Dateien vom Server lesen (z.B.../../etc/passwd,.env).Hintergrund
Die Bildpfade werden beim Odoo-Polling gespeichert und beim Abruf direkt an
FileResponseübergeben, ohne zu prüfen ob der Pfad innerhalb des erlaubten Verzeichnisses liegt.Akzeptanzkriterien
REPOS_CACHE_DIR)../wird erkannt und mit 403 abgelehntos.path.realpath()Prüfung)../../../etc/passwdgibt 403 zurückTechnische Hinweise
backend/api/tickets.py:321-341os.path.realpath()+ Prefix-Check gegen erlaubtes VerzeichnisAufwand: S