changedetection.io path traversal using file URI scheme without supplying hostname
Summary
The validation for the file URI scheme falls short, and results in an attacker being able to read any file on the system. This issue only affects instances with a webdriver enabled, and ALLOW_FILE_URI false or not defined.
Details
The check used for URL protocol, is_safe_url, allows file: as a URL scheme:
It later checks if local files are permitted, but one of the preconditions for the check is that the URL starts with file://. The issue comes with the fact that the file URI scheme is not required to have double slashes.
A valid file URI must therefore begin with either
file:/path(no hostname),file:///path(empty hostname), orfile://hostname/path. — Wikipedia
PoC
- Open up a changedetection.io instance with a webdriver configured
- Create a new watch:
file:/etc/passwdor a similar path for your operating system. Enable webdriver mode - Wait for it to be checked
- Open preview
- Notice contents of the file
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Python (PyPI) | changedetection-io | < 0.47.6 | 0.47.6 |
Verweise
- https://github.com/dgtlmoon/changedetection.io/security/advisories/GHSA-6jrf-rcjf-245r
- https://nvd.nist.gov/vuln/detail/CVE-2024-51998
- https://github.com/dgtlmoon/changedetection.io/commit/49bc982c697169c98b79698889fb9d26f6b3317f
- https://github.com/dgtlmoon/changedetection.io
- https://github.com/dgtlmoon/changedetection.io/blob/e0abf0b50507a8a3d0c1d8522ab23519b3e4cdf4/changedetectionio/model/Watch.py#L11-L13
- https://github.com/dgtlmoon/changedetection.io/blob/e0abf0b50507a8a3d0c1d8522ab23519b3e4cdf4/changedetectionio/processors/__init__.py#L37-L41
- https://github.com/dgtlmoon/changedetection.io/releases/tag/0.47.06
- https://pypi.org/project/changedetection-io
- https://github.com/advisories/GHSA-6jrf-rcjf-245r
- CVSS-Vektor
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N- Schwäche (CWE)
CWE-22- Plattform
- Python (PyPI)
- Paket
changedetection-io- Veröffentlicht
- 07.11.2024
- Aktualisiert
- 11.10.2026 13:19
Quellen und Lizenzen
OSV / GitHub Advisory Database - PYSEC-2026-1239 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-6jrf-rcjf-245r - CC BY 4.0
Schwachstellenhistorie: changedetection-io
Alle veröffentlichten Schwachstellen dieses Pakets (Python (PyPI)), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 20
- Erste → letzte
- 02.2023 05.2026
- Ohne Fix
- 1
- In Angriffen ausgenutzt
- 0
Verteilung nach Schweregrad
- Kritisch 2
- Hoch 9
- Mittel 6
- Niedrig 2
- Nicht bewertet 1
Veröffentlichungen pro Jahr
- 2023: 1
- 2024: 6
- 2025: 2
- 2026: 11
-
changedetection.io path traversal using file URI scheme without supplying hostname dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.