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
Software afectado
Haz clic en una tecnología para ver todas sus vulnerabilidades.
| Plataforma | Paquete | Versiones vulnerables | Corregida en |
|---|---|---|---|
| Python (PyPI) | changedetection-io | < 0.47.6 | 0.47.6 |
Referencias
- 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
- Vector CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N- Debilidad (CWE)
CWE-22- Plataforma
- Python (PyPI)
- Paquete
changedetection-io- Publicada
- 07.11.2024
- Actualizado
- 11.10.2026 13:19
Fuentes y licencias
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
Historial de vulnerabilidades: changedetection-io
Todas las vulnerabilidades publicadas de este paquete (Python (PyPI)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.
- Entradas en total
- 20
- Primera → última
- 02.2023 05.2026
- Sin corrección
- 1
- Explotada en ataques
- 0
Distribución por gravedad
- Crítica 2
- Alta 9
- Media 6
- Baja 2
- Sin evaluar 1
Divulgaciones por año
- 2023: 1
- 2024: 6
- 2025: 2
- 2026: 11
-
changedetection.io path traversal using file URI scheme without supplying hostname esta entrada
Identifica las vulnerabilidades de tu aplicación
Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.