CVE-2026-29038 json
changedetection.io: Reflected XSS in RSS Tag Error Response
published 2026-03-04 8 mo ago modified 2026-07-13 3 mo ago also EUVD-2026-10011 , GHSA-8whx-v8qq-pq64 , PYSEC-2026-2127
- cvss
- 6.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 25%
- public exploits
- 0
- none known
Summary
changedetection.io is a free open source web page change detection tool. Prior to version 0.54.4, there is a reflected cross-site scripting (XSS) vulnerability identified in the /rss/tag/ endpoint of changedetection.io. The tag_uuid path parameter is reflected directly in the HTTP response body without HTML escaping. Since Flask returns text/html by default for plain string responses, the browser parses and executes injected JavaScript. This issue has been patched in version 0.54.4.
Patch / fix
- pypi changedetection-io 0.54.4
- changedetection changedetection 0.54.4
- webtechnologies changedetection 0.54.4
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 8 mo ago
Exploit prediction
0.32% chance of exploitation in the next 30 days, higher than 25% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/dgtlmoon/changedetection.io/security/advisories/GHSA-8whx-v8qq-pq64 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
| GitHub | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
| OSV | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | changedetection-io | <0.54.4 |
0.54.4 |
Affected products
- dgtlmoon changedetection.io
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/dgtlmoon/changedetection.io/commit/ec7d56f85d1e9690fca7cb4711c1fb20dffec780
web, patch
-
github.com
/dgtlmoon/changedetection.io/security/advisories/GHSA-8whx-v8qq-pq64
web, exploit, mitigation, vendor-advisory, evidence
-
github.com
/dgtlmoon/changedetection.io/releases/tag/0.54.4
web, product, release-notes, advisory
-
github.com
/dgtlmoon/changedetection.io/security/advisories/GHSA-mw8m-398g-h89w
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-29038
advisory
-
github.com
/dgtlmoon/changedetection.io
package
Sources
- CVE List CVE-2026-29038
- GitHub Advisory GHSA-8whx-v8qq-pq64
- NVD CVE-2026-29038
- OSV PYSEC-2026-2127
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.