Vulnerability · Published May 12, 2026 · Assigned by GitHub_M
CVE-2026-43891changedetection.io: Arbitrary Local File Read via crafted backup restore
High 7.5
In plain English
A high-severity security flaw in changedetection.io from dgtlmoon. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 29% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
changedetection.io is a free open source web page change detection tool. Prior to 0.55.1, the vulnerability is caused by trusting attacker-controlled snapshot paths restored from backup files. The vulnerable flow starts in the backup restore logic. When a backup ZIP is restored, the application extracts the archive and copies each restored watch UUID directory directly into the live datastore using shutil.copytree(entry.path, dst_dir). This preserves attacker-controlled files inside the restored watch directory, including history.txt. After restore, the application parses history.txt in the watch history property and returns the contents of the targeted local file. This vulnerability is fixed in 0.55.1.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | changedetection-io | 0.55.1 | GHSA-8757-69j2-hx56 |
| PyPI | changedetection-io | 0.55.1 | PYSEC-2026-30 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| dgtlmoon | changedetection.io | < 0.55.1 |
Weakness: CWE-73 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N