Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain Ech0 database file via secondary vulnerability or misconfiguration
-
DeliveryExtract unsalted MD5 hashes from users.password column
-
ExploitRun offline rainbow table or hashcat dictionary attack against MD5 hashes
-
ExecutionRecover plaintext credentials for one or more accounts
-
ImpactAuthenticate to Ech0 as victim user
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Approved algorithm selection
|
| Exploitation Conditions | Exploitation requires prior read access to the Ech0 database (SQLite file or raw database query capability) obtained through a separate vulnerability or misconfiguration - this CVE does not provide that access on its own. The specific condition is that passwords were stored by the |
| Impact | The CVSS 4.0 score of 6.3 (AV:N/AC:H/PR:N/UI:N/VC:L) accurately reflects the chained nature of this vulnerability: an attacker cannot exploit the weak hash directly over the network; they must first obtain the hash values through a secondary vector such as database file exposure, path traversal, or backup leak. AC:H encodes this prerequisite correctly. Once hashes are obtained, offline cracking of unsalted MD5 is highly practical - common passwords fall within seconds using precomputed rainbow tables or GPU hashcat runs. The confidentiality impact (VC:L) is arguably conservative: successful cracking yields plaintext credentials that enable full account takeover, though the 'L' rating reflects that not all hashes are easily crackable. No EPSS data was provided in the input. KEV status is absent and no active exploitation has been reported, placing this firmly in the 'patch on schedule' tier absent evidence of a co-occurring data-access breach. For deployments that have already suffered a database compromise, this weakness materially amplifies credential exposure risk. |
| Exploit ScenarioDerived | An attacker who obtains the Ech0 SQLite database file - for instance through a misconfigured web server exposing the data directory, a separate path traversal vulnerability, or an exfiltrated backup - extracts the |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 20, 2026
Unsalted MD5 password hashing in Ech0's MD5Encrypt function (internal/util/crypto/crypto.go) stores credentials in a format trivially crackable via rainbow tables or GPU-accelerated brute force. Versions 5.4.0 and 5.4.1 are confirmed affected; the migration comment in the fix explicitly labels the stored values as 'historical bare MD5' (历史裸 MD5), confirming no per-user salt was applied. Ech0 5.4.2 resolves this by backfilling existing hashes to a dedicated user_local_auth table and enabling lazy bcrypt upgrade on next login. No public exploit exists and no active exploitation has been confirmed.
RemediationAI
Upgrade to Ech0 5.4.2, confirmed released at https://github.com/lin-snow/Ech0/releases/tag/ech0-5.4.2 (patch commit 9ce19a3b0d0765086a655f45d3a706ec1810404f, PR #315 at https://github.com/lin-snow/Ech0/pull/315). The upgrade automatically executes a database migration that backfills existing MD5 hashes into the user_local_auth table with password_algo='md5' and upgrades them to bcrypt lazily on each user's next successful login - no manual data migration is required. Administrators who cannot upgrade immediately should enforce strong, unique, randomly generated passwords for all accounts to reduce offline cracking success rates, restrict filesystem access to the SQLite database file to the application process user only (mode 600), audit backup storage for exposed database files, and consider forcing a password reset for all users as a precautionary measure. There is no workaround that eliminates the MD5 weakness without upgrading.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Ech0 (cpe:2.3:a:lin-snow:ech0:*:*:*:*:*:*:*:*) is a self-hosted Go application whose password storage path invokes MD5Encrypt in internal/util/crypto/crypto.go, applying a bare MD5 digest with no per-user salt before persisting credentials. CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) captures this root cause: MD5 was designed for fast data integrity verification, not key derivation, making it orders of magnitude faster to attack than purpose-built algorithms like bcrypt or Argon2. The PR diff (PR #315, commit 9ce19a3b) confirms the mechanism: golang.org/x/crypto is promoted from indirect to direct dependency in go.mod, and a new user_local_auth_backfill_migrator.go runs an INSERT OR IGNORE INTO user_local_auth copying the raw password column values with password_algo='md5', flagging them for bcrypt upgrade on next successful login. The migration code further confirms that fresh installations have no password column and are unaffected, while existing deployments carry the MD5 legacy.
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:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
AV:N retained as the app is network-accessible; AC:H reflects the mandatory secondary breach to obtain hashes; C:L as credential recovery is partial and depends on password strength.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
DescriptionCVE.org
A security flaw has been discovered in lin-snow Ech0 up to 5.4.1. Affected by this issue is the function MD5Encrypt of the file internal/util/crypto/crypto.go. Performing a manipulation results in risky cryptographic algorithm. Remote exploitation of the attack is possible. The complexity of an attack is rather high. The exploitation is known to be difficult. Upgrading to version 5.4.2 can resolve this issue. The patch is named 9ce19a3b0d0765086a655f45d3a706ec1810404f. It is recommended to upgrade the affected component.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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
Scope enforcement in Ech0 4.3.4 and earlier is opt-in at the route level, meaning privileged admin routes that omit the
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
EUVD-2026-63578
GHSA-m3r5-hc33-p4wf
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB