Security Resilience

CVE-2026-29039

RCE in Webtechnologies Changedetection ≤ 0.54.4

Public PoCRCE
Published
06 March 2026
Modified
10 March 2026
Patch / advisory
CVSS Score v4 8.8
Click a component to see what it means
Raw vectorCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.0054 45th percentile
Risk Priority 45 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2026-29039 is a high-severity Code Injection (CWE-94) vulnerability in Webtechnologies Changedetection. Its CVSS base score is 8.8 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked at the 45th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-29039 affects changedetection.io, a free open source web page change detection tool, in versions prior to 0.54.4. The vulnerability arises in the application's handling of user-supplied XPath expressions provided via the include_filters field for content filtering. These expressions are processed using the elementpath library, which supports XPath 3.0/3.1 and includes the unparsed-text() function capable of reading arbitrary files from the filesystem. The application lacks validation or sanitization of these expressions, enabling unauthorized file access to any files readable by the application process. The issue is classified under CWE-94 (Improper Control of Generation of Code ('Code Injection')) with a CVSS v3.1 base score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N).

Unauthenticated remote attackers can exploit this vulnerability over the network with low complexity and no user interaction required. By crafting a malicious XPath expression containing the unparsed-text() function and submitting it through the include_filters field, an attacker gains the ability to read sensitive files accessible to the changedetection.io process, such as configuration files, credentials, or other local data.

The vulnerability has been addressed in changedetection.io version 0.54.4, as detailed in the project's security advisory (GHSA-6fmw-82m7-jq6p), release notes, and associated patch commit, which implement proper validation to block dangerous XPath functions. Security practitioners should upgrade to version 0.54.4 or later and review access controls for instances exposing the include_filters functionality.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

changedetection.io is a free open source web page change detection tool. Prior to version 0.54.4, the changedetection.io application allows users to specify XPath expressions as content filters via the include_filters field. These XPath expressions are processed using the elementpath library…

more

which implements XPath 3.0/3.1 specification. XPath 3.0 includes the unparsed-text() function which can read arbitrary files from the filesystem. The application does not validate or sanitize XPath expressions to block dangerous functions, allowing an attacker to read any file accessible to the application process. This issue has been patched in version 0.54.4.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1068 Exploitation for Privilege Escalation Privilege Escalation
Adversaries may exploit software vulnerabilities in an attempt to elevate privileges.
T1559.003 XPC Services Execution
Adversaries can provide malicious content to an XPC service daemon for local code execution.
T1584.008 Network Devices Resource Development
Adversaries may compromise third-party network devices that can be used during targeting.
T1677 Poisoned Pipeline Execution Execution
Adversaries may manipulate continuous integration / continuous development (CI/CD) processes by injecting malicious code into the build process.
T1059.001 PowerShell Execution
Adversaries may abuse PowerShell commands and scripts for execution.
T1059.003 Windows Command Shell Execution
Adversaries may abuse the Windows command shell for execution.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-24780Shared CWE-94
CVE-2025-31722Shared CWE-94
CVE-2024-3734Shared CWE-94
CVE-2024-11613Shared CWE-94
CVE-2025-53547Shared CWE-94
CVE-2024-21689Shared CWE-94
CVE-2025-42922Shared CWE-94
CVE-2024-43388Shared CWE-94
CVE-2023-23551Shared CWE-94
CVE-2023-0048Shared CWE-94

Affected Assets

webtechnologies
changedetection
≤ 0.54.4

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

—

Detect
Catch it (NIST detect / respond)

—

Harden
Shrink the surface (DISA STIG)

—

Validate
Prove the fix (OWASP ASVS)
  • V1.3.1

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation finds code paths that accept and execute externally influenced strings.

Input validation directly stops untrusted data from being used to construct executable code without neutralization.

Least privilege limits the damage an injected code fragment can perform once executed.

Requiring documented secure development standards and tools enforces use of safe code-generation APIs and escaping.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
blocks

PR.PS-06's SDLC practices directly target injection flaws via secure coding and testing (mostly), yet as a single broad outcome it leaves many code-generation specifics unaddressed (partial).

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

prevents

Banning unapproved code samples and unauthenticated web services, combined with secure-coding standards and SAST, prevents the dynamic generation or inclusion of attacker-supplied code.

References