CVE-2026-35490 PUBLISHED

changedetection.io has an Authentication Bypass via Decorator Ordering

Assigner: GitHub_M
Reserved: 02.04.2026 Published: 07.04.2026 Updated: 07.04.2026

changedetection.io is a free open source web page change detection tool. Prior to 0.54.8, the @login_optionally_required decorator is placed before (outer to) @blueprint.route() instead of after it. In Flask, @route() must be the outermost decorator because it registers the function it receives. When the order is reversed, @route() registers the original undecorated function, and the auth wrapper is never in the call chain. This silently disables authentication on these routes. This vulnerability is fixed in 0.54.8.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 9.8

Product Status

Vendor dgtlmoon
Product changedetection.io
Versions
  • Version < 0.54.8 is affected

References

Problem Types

  • CWE-863: Incorrect Authorization CWE