Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain or steal low-scope admin access token
-
DeliveryIssue HTTP GET to /api/backup/export?token=<token>
-
ExploitServer discards scope metadata, checks only admin role
-
ExecutionReceive full database backup ZIP archive
-
ImpactExfiltrate application data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization verification
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must possess a valid admin-account access token for the target Ech0 instance - even one deliberately scoped to limited permissions such as echo:read. This restricts exploitation to: legitimate admin users who have been issued API tokens, attackers who have compromised or exfiltrated a limited admin token from storage (e.g., environment variables, CI/CD secrets, configuration files), or scenarios where delegated tokens are shared with third-party integrations. Fully unauthenticated exploitation is not possible - PR:L in the CVSS vector confirms credential requirement. No special server-side configuration beyond the default token-based authentication model is needed; the vulnerable behavior is present in the default state for any Ech0 deployment where admin access tokens have been issued. Non-admin users cannot exploit this vulnerability regardless of token scope. |
| Impact | The CVSS 4.0 score of 7.2 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:L) accurately captures the threat model: network-accessible exploitation with low complexity, but bounded by the requirement for a valid admin-account access token. An unauthenticated external attacker cannot exploit this directly. The highest-impact pathway - full database backup exfiltration via /api/backup/export - represents a significant confidentiality breach for any deployment holding sensitive data. No EPSS score was provided in the input data, and no CISA KEV listing exists, meaning active exploitation in the wild is neither confirmed nor refuted by available signals. The GHSA advisory includes source code evidence and a detailed impact description, raising confidence that the vulnerability is exploitable as described. Practical risk is primarily an insider threat, lateral-movement-after-initial-access, or supply-chain token compromise scenario rather than mass internet exploitation. |
| Exploit ScenarioDerived | An attacker who has obtained a low-scope admin API token - for instance, a CI/CD integration token intentionally scoped to echo:read - issues a direct HTTP GET request to /api/backup/export?token=<stolen_token> against the publicly reachable Ech0 instance. Because the backup export handler discards scope metadata before processing, the server validates only the admin role and returns a complete database backup ZIP archive containing all application data. No confirmed public exploit code exists, but the GHSA advisory documents the exact endpoint, parameter, and source-code path, making independent reproduction straightforward. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 25, 2026
Scope enforcement in Ech0 4.3.4 and earlier is opt-in at the route level, meaning privileged admin routes that omit the RequireScopes() middleware fall back to role-only checks and honor any valid admin token regardless of declared scope. An admin holding a deliberately narrowed API token - for example one scoped to echo:read - can reach endpoints such as /api/inbox, /api/panel/comments, and /api/backup/export, with the backup handler additionally stripping scope metadata entirely and returning a full database ZIP archive. No CISA KEV listing or confirmed public exploit code has been identified; the vulnerability is fixed in an upstream release (version discrepancy noted below).
RemediationAI
Upgrade Ech0 to the patched release - note a version discrepancy exists between sources: the CVE description cites 4.4.3 as the fix version while package metadata identifies 4.3.5; verify the correct target version against the upstream advisory at https://github.com/lin-snow/Ech0/security/advisories/GHSA-4h9q-p5j4-xvvh before deploying. As a compensating control prior to patching, immediately audit all issued admin access tokens and revoke any narrowly scoped tokens that have network access to the Ech0 instance, replacing them with tokens only after upgrading. Blocking network access to /api/backup/export at the reverse proxy or firewall layer eliminates the highest-impact exfiltration surface (full database ZIP) with the trade-off of disabling scheduled or automated backup functionality. Restricting the Ech0 admin API surface to trusted internal networks reduces the exposure of all affected endpoints simultaneously.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Ech0 (CPE: cpe:2.3:a:lin-snow:ech0) is a Go application built on the Gin web framework with a split authorization model: JWTAuthMiddleware() authenticates the token and stores scope metadata in the viewer context, while RequireScopes() enforces least-privilege - but only on routes that explicitly invoke it. Routes omitting RequireScopes() fall through to service-layer checks that test only user.IsAdmin, making scope a no-op for those endpoints. The backup export handler additionally discards scope metadata before processing, eliminating any possibility of downstream enforcement. This is a textbook CWE-285 (Improper Authorization) defect: authentication succeeds correctly, but the authorization boundary between declared token scope and actual access is not consistently enforced across the privilege surface.
Know when Ech0 gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:L/SC:N/SI:N/SA:N
Requires valid admin access token (PR:L); network-exploitable at low complexity; high confidentiality from full backup export; limited integrity impact from out-of-scope endpoint access; no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Ech0 version 4.3.4 and earlier fails to reliably enforce scoped access token (least-privilege) restrictions on several privileged admin routes. Multiple privileged endpoints (e.g., /api/inbox, /api/panel/comments, /api/backup/export) omit scope checks and authorize based only on the user's admin role, and the backup export handler discards token scope metadata entirely. An attacker holding a deliberately limited (low-scope) admin access token can reach broader privileged functionality than intended, including reading the inbox and exporting a full database backup ZIP archive. Fixed in 4.4.3.
Executive ViewAI
Ech0 4.3.4 and earlier allows administrators with deliberately restricted API tokens to bypass intended scope limitations and access sensitive operations including database backup exports, potentially exposing the entire database. Organizations using Ech0 should treat this as a high-priority privilege escalation risk, particularly in multi-tenant or compliance-sensitive environments where admin token scope restrictions are a security control.
No vendor-released patch identified at time of analysis. Interim mitigation: manually enforce scope validation by deploying RequireScopes() middleware on all privileged routes in your Ech0 installation, making this enforcement mandatory rather than optional. Additionally: restrict admin token creation to only necessary scopes (avoid creating full-admin tokens when narrower scopes suffice), implement real-time alerting on backup export requests, enable comprehensive audit logging of all admin API calls to detect scope-bypass attempts, and monitor vendor security advisories for patch release.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Persistent authentication bypass in Ech0 (lin-snow's self-hosted lightweight publishing/memo app) before 4.7.3 lets an a
OAuth redirect URI validation in Ech0 through 4.5.6 allows session hijacking via exchange-code theft by exploiting incom
Authorization bypass in Ech0 before 4.5.1 allows any authenticated non-admin user to invoke privileged admin endpoints b
Denial of service in Ech0 before 5.0.1 allows unauthenticated remote attackers to saturate server CPU by exploiting a qu
Privilege escalation in Ech0 before 4.4.3 allows an attacker holding an admin's profile:read access token to change the
Server-side request forgery in Ech0 before version 4.7.3 allows authenticated users to pivot through the application ser
Missing administrator authorization on dashboard log endpoints in Ech0 before 4.4.3 allows any authenticated low-privile
Scope enforcement bypass in Ech0's comment panel admin API allows any holder of a valid admin-issued access token - rega
Unauthenticated metric inflation in Ech0 before 4.7.3 allows any remote attacker to arbitrarily increment the fav_count
Unauthenticated remote attackers can increment the fav_count of any echo - including private ones - in Ech0 through 4.5.
Ech0 before version 4.7.3 exposes guest commenter email addresses to unauthenticated remote callers via public comment-l
Unsalted MD5 password hashing in Ech0's `MD5Encrypt` function (`internal/util/crypto/crypto.go`) stores credentials in a
EUVD-2026-65447
GHSA-vgpj-v99m-7h5j
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB