Skip to main content

changedetection.io EUVDEUVD-2026-53202

| CVE-2026-71205 MEDIUM
Improper Restriction of Excessive Authentication Attempts (CWE-307)
2026-08-05 TuranSec GHSA-vwqf-jx9p-3vgp
6.5
CVSS 3.1 · Vendor: TuranSec
Share

Severity by source

Vendor (TuranSec) PRIMARY
6.5 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
vuln.today AI
6.5 MEDIUM

Network-accessible unauthenticated endpoint with no lockout; C:L/I:L reflects API token exposure and admin modification capability scoped to the application itself.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (TuranSec).

CVSS VectorVendor: TuranSec

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

2
CVSS changed
Aug 05, 2026 - 08:22 NVD
5.3 (MEDIUM) 6.5 (MEDIUM)
Analysis Generated
Aug 05, 2026 - 08:08 vuln.today

DescriptionCVE.org

changedetection.io's /login route checks the submitted password against a single PBKDF2-HMAC-SHA256 hash with no per-IP or per-session rate limiting, failed-attempt counter, or lockout (no rate-limiting library is present in requirements.txt). Because the entire application is protected by one shared password with no per-user accounts, a successful brute-force guess grants full administrative access, including the ability to view/regenerate the API token.

AnalysisAI

Unrestricted brute-force against changedetection.io's /login endpoint allows a remote unauthenticated attacker to systematically guess the single shared application password with no throttling, lockout, or attempt counter to impede automated attacks. Because the entire application is protected by one shared credential with no per-user account model, a successful guess grants full administrative control - including the ability to view and regenerate the API token and access all monitored URL configurations. No public exploit code or CISA KEV listing has been identified at time of analysis, but the attack is trivially automatable given the network-accessible endpoint, low complexity (CVSS AC:L), and complete absence of brute-force controls confirmed by requirements.txt inspection.

Technical ContextAI

changedetection.io (CPE: cpe:2.3:a:dgtlmoon:changedetection.io:*:*:*:*:*:*:*:*) is an open-source, self-hosted web application for monitoring changes to web pages. Its /login route validates submitted passwords using PBKDF2-HMAC-SHA256, a cryptographically sound hashing algorithm, but applies no complementary brute-force protection. CWE-307 (Improper Restriction of Excessive Authentication Attempts) describes this exact failure pattern: the hashing primitive is not the weakness - the absence of per-IP rate limiting, failed-attempt counters, or account lockout is. Critically, the application's single-password architecture means there is no per-account lockout surface; the entire application is protected by one credential, so a single successful brute-force attempt yields complete administrative access rather than compromise of an individual account.

RemediationAI

No vendor-released patch has been identified at time of analysis. The project repository at https://github.com/dgtlmoon/changedetection.io should be monitored for upstream fixes addressing rate limiting on the /login route. As immediate compensating controls: place the instance behind a reverse proxy (e.g., nginx with limit_req_zone, Traefik with rate-limit middleware) configured to cap POST requests to /login per source IP - this directly addresses the missing application-level control with no application changes required, though aggressive limits may affect legitimate users on shared IPs. Restrict network exposure by binding changedetection.io to localhost or an internal-only interface, preventing public internet access entirely - this trades off remote accessibility. Ensure the application password is long, randomly generated, and unique, as high-entropy passwords substantially increase the computational cost of brute-force even under unlimited attempt conditions. Do not expose changedetection.io publicly without at least reverse-proxy rate limiting in place.

Share

EUVD-2026-53202 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy