Path traversal using file URI scheme without supplying hostname in changedetection.io
changedetection.io is a free open source web page change detection tool. 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. 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. This issue has been addressed in version 0.47.06 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2024-51998
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 15:00 UTC · Revision 1
Source evidence
Path traversal using file URI scheme without supplying hostname in changedetection.io
core-osv · Original sourcePublished 7 Nov 2024, 23:34 UTC
changedetection.io is a free open source web page change detection tool. 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. 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. This issue has been addressed in version 0.47.06 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
osv:CVE-2024-51998
Complete source record
{
"id": "f79860ccc0819f935ab93a4335483f155287e30e3b92f83a0c6ae3a5c142e2e1",
"url": "https://osv.dev/vulnerability/CVE-2024-51998",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Path traversal using file URI scheme without supplying hostname in changedetection.io",
"summary": "changedetection.io is a free open source web page change detection tool. 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. 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. This issue has been addressed in version 0.47.06 and all users are advised to upgrade. There are no known workarounds for this vulnerability.",
"evidence": "osv:CVE-2024-51998",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2024-51998",
"aliases": [
"CVE-2024-51998",
"GHSA-6jrf-rcjf-245r",
"PYSEC-2026-1239"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/dgtlmoon/changedetection.io",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "d2978505390578cf3240ca2178a4a71967d1713f"
},
{
"fixed": "49bc982c697169c98b79698889fb9d26f6b3317f"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "0.47.06"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "49bc982c697169c98b79698889fb9d26f6b3317f"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"0.47.05",
"0.47.04",
"0.47.03",
"0.47.01",
"0.47.00",
"0.46.04",
"0.46.03",
"0.46.02",
"0.46.01",
"0.46.00",
"0.45.26",
"0.45.25",
"0.45.24",
"0.45.23",
"0.45.22",
"0.45.21",
"0.45.20",
"0.45.19",
"0.45.18",
"0.45.17",
"0.45.16",
"0.45.15",
"0.45.14",
"0.45.13",
"0.45.12",
"0.45.10",
"0.45.9",
"0.45.8.1",
"0.45.8",
"0.45.7.3",
"0.45.7.2",
"0.45.7.1",
"0.45.7",
"0.45.6",
"0.45.5",
"0.45.4",
"0.45.3",
"0.45.2",
"0.45.1",
"0.45",
"0.44.2",
"0.44.1",
"0.44",
"0.43.2",
"0.43.1",
"0.43",
"0.42.3",
"0.42.2",
"0.42.1",
"0.42",
"0.41.1",
"0.41",
"0.40.3",
"0.40.2",
"0.40.1.1",
"0.40.1.0",
"0.40.0.4",
"0.40.0.3",
"0.40.0.2",
"0.40.0",
"0.39.22.1",
"0.39.22",
"0.39.21.1",
"0.39.21",
"0.39.20.4",
"0.39.20.3",
"0.39.20.2",
"0.39.20.1",
"0.39.20",
"0.39.19.1",
"0.39.19",
"0.39.18",
"0.39.17.2",
"0.39.17.1",
"0.39.17",
"0.39.16",
"0.39.15",
"0.39.14",
"0.39.13.1",
"0.39.13",
"0.39.12",
"0.39.11",
"0.39.10",
"0.39.9",
"0.39.8",
"0.39.7",
"0.39.6",
"0.39.5",
"0.39.4",
"0.39.3",
"0.39.2",
"0.39.1",
"0.39",
"0.38.2",
"0.38.1",
"0.38",
"0.37",
"0.35",
"0.34",
"0.33",
"0.32",
"0.31",
"0.30",
"0.29",
"0.28",
"0.27",
"0.26",
"0.25",
"0.24",
"0.23",
"0.22",
"0.21",
"0.2",
"0.12",
"0.11",
"0.1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-51998.json"
}
}
],
"modified": "2026-10-28T02:30:29.937704539Z",
"provider": "osv",
"references": [
"https://github.com/dgtlmoon/changedetection.io/blob/e0abf0b50507a8a3d0c1d8522ab23519b3e4cdf4/changedetectionio/model/Watch.py#L11-L13",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/51xxx/CVE-2024-51998.json",
"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"
],
"provider_metadata": {
"cwe_ids": [
"CWE-22"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/51xxx/CVE-2024-51998.json"
}
},
"related_cves": [
{
"value": "CVE-2024-51998",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 496619,
"published_at": "2024-11-07T23:34:07.183+00:00"
}