Skip to main content

Diem CMS CVE-2026-112029

| EUVDEUVD-2026-104013 LOW
Use of Password Hash With Insufficient Computational Effort (CWE-916)
2026-10-18 VulDB GHSA-83h9-vcq9-fvwv
1.1
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain local access to Diem host/DB
  2. Exploit
    Extract SHA1 password hashes from PluginDmUser
  3. Execution
    Run offline cracking against weak hashes
  4. Impact
    Recover plaintext credentials

Vulnerability Assessment

Weakness
CWE
Exploitation Conditions

Exploitation requires that the attacker already possess the stored SHA1 password hashes generated by the PluginDmUser SHA1 Handler - i.e., prior local access to the Diem host or its user database (reflected by AV:L and PR:L). The weakness does not grant any remote or unauthenticated foothold; it only accelerates offline password recovery once hashes are in hand. Limiting factors per the CVSS vector and description: local access only, high attack complexity, low-privilege prerequisite, and impact limited to confidentiality of credentials (no integrity/availability effect). Strong, unique per-user passwords and separate salting reduce practical crackability even with the weak hash. Applies to Diem versions up to and including 5.1.3.

Impact

This is a textbook high-CVSS-is-actually-low-risk case - and the CVSS here is not even high. The provided CVSS 4.0 base score is 1.1 (Low), and the vector confirms the weakness is severely constrained: local attack vector (AV:L), high attack complexity (AC:H), requiring low privileges (PR:L), with only low confidentiality impact (VC:L) and no integrity or availability impact. CWE-916 (use of a password hash with insufficient computational effort - here SHA1) is a real cryptographic weakness, but it is not directly exploitable: it only matters once an attacker has ALREADY obtained the stored password hashes, at which point weak hashing makes offline cracking faster. The exploitability signals reinforce low urgency: the input explicitly states 'publicly available exploit code exists' (a POC, reflected by E:P in the 4.0 vector), but there is NO CISA KEV listing and NO EPSS score provided, so there is no evidence of active or likely widespread exploitation. The VulDB submission is tied to a GitHub issue report to which the project has not responded, indicating no patch. Net: this is a code-quality / defense-in-depth hardening item, not an incident-response priority. The signals are internally consistent (local, high-complexity, low-impact, POC-only), so there is no major conflict to flag - the main caveat is that EPSS/KEV data is absent, which is expected for a very recent, low-severity, obscure-product CVE.

Exploit ScenarioDerived

An attacker who already has local, low-privileged access to a Diem installation (or a copy of its database/user table, e.g. via a separate SQL injection, backup leak, or insider access) extracts the SHA1 password hashes stored by PluginDmUser. Because SHA1 is fast and uses insufficient computational effort, the attacker then performs offline brute-force or rainbow-table cracking far more cheaply than against a proper adaptive hash (bcrypt/argon2), recovering plaintext passwords. A public POC exists demonstrating the weakness, but the high attack complexity reflects that the hashes must first be obtained through some other means.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 18, 2026

Weak SHA1-based password hashing in the Diem PHP framework's PluginDmUser handler (lib/model/doctrine/PluginDmUser.class.php, versions through 5.1.3) lets anyone who already holds the stored password hashes from a Diem user database recover plaintext credentials offline far faster than a modern key-derivation function would allow. Exploitation is strictly local and high-complexity and presupposes a prior foothold to obtain the hashes, so the weakness yields no remote or unauthenticated path into the application; impact is limited to confidentiality of credentials and any password reuse elsewhere. Publicly available exploit code exists (referenced upstream issue 452), the project was notified but has not responded, and no CISA KEV listing or EPSS score was supplied with the intelligence.

RemediationAI

No vendor-released patch identified at time of analysis: the maintainers were notified via the upstream issue (https://github.com/diem-project/diem/issues/452) and have not responded, so there is no fixed Diem version to cite and upgrading alone will not remediate. The durable fix is to replace the SHA1 handler with a memory-hard KDF - PHP's password_hash() using PASSWORD_BCRYPT or PASSWORD_ARGON2ID with per-user random salts and a cost tuned to roughly 100-250 ms per verification - implemented by overriding or replacing PluginDmUser's hashing methods; the trade-off is a migration: verify legacy SHA1 hashes on next successful login and immediately rehash to the new algorithm, which leaves dormant accounts on SHA1 until they authenticate, so pair it with a forced reset for privileged or stale accounts. Until that migration is complete, treat the Diem user table as a credential store at risk: restrict database and backup file permissions to the application account only, remove Diem dumps from shared or web-accessible paths, rotate any credentials that may have been exposed, and enforce strong, unique passwords (blocking known-breached passwords) so that even fast offline guessing is expensive. Because the required precondition is possession of the hashes, the highest-value control is preventing exfiltration - least-privilege DB accounts, no world-readable backup directories, and monitoring for bulk SELECTs against the user table - rather than any network-level filter.

Affected VersionsENISA

diem 5.1.1
diem 5.1.0
diem 5.1.2
diem 5.1.3

Affected Packages

euvd diem no fix

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

Diem is a Symfony-based PHP content management framework that ships Doctrine ORM model classes, including lib/model/doctrine/PluginDmUser.class.php, which implements the user entity and its credential handling; the affected component is described as an SHA1 handler where manipulation of the salt/password arguments yields a password hash computed with insufficient computational effort (CWE-916, use of a password hash with insufficient computational effort). SHA-1 is a fast, general-purpose digest: even when a per-user salt is applied, salting only defeats precomputed rainbow tables and does not raise the per-guess cost, so GPU-accelerated offline guessing against SHA-1 digests proceeds at rates orders of magnitude above bcrypt, scrypt or Argon2id. The practical consequence is that any leak of the user table - via SQL injection in another component, a backup exposure, or direct host access - converts into rapid credential recovery, particularly for weak or reused passwords. The CPE cpe:2.3:a:diem-project:diem:*:*:*:*:*:*:*:* carries a wildcard version, while the description and advisory scope the issue to releases up to and including 5.1.3.

Know when Diem 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

Vendor (VulDB) PRIMARY 1.1 LOW
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 2.5 LOW

Attacker needs the hashes first, so AV:L and PR:L with AC:H; impact is limited to eventual credential disclosure (C:L) with no integrity or availability effect.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Local
Attack Complexity
High
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
CVSS changed
Oct 18, 2026 - 23:23 NVD
2.0 (LOW) 1.1 (LOW)
CVE Published
Oct 18, 2026 - 23:00 cve.org
LOW 1.1

DescriptionCVE.org

A vulnerability has been found in diem-project diem up to 5.1.3. This affects an unknown part of the file lib/model/doctrine/PluginDmUser.class.php of the component SHA1 Handler. Such manipulation of the argument salt/password leads to password hash with insufficient computational effort. The attack needs to be performed locally. The attack requires a high level of complexity. It is indicated that the exploitability is difficult. The exploit has been disclosed to the public and may be used. The project was informed of the problem early through an issue report but has not responded yet.

Threat Intelligence Overview

EPSS Score
0.1%
Top 100% exploitable
Prevalence
Low
obscure Symfony/Doctrine-based PHP CMS, niche and effectively unmaintained
Exploit
POC
Public exploit code exists
Social Media
2
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

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.

SignalValue
Severity LOW
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +6
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Diem

View all
CVE-2026-86183 MEDIUM POC
5.5 Sep 06

Insecure direct object reference (IDOR) in the dmWidget component of diem-project/diem (versions through 5.1.3) allows u

CVE-2026-112041 LOW POC
2.9 Oct 19

Cryptographically weak pseudo-random number generation in the PHP CMS Diem's dmString::random() helper can produce predi

CVE-2026-112037 LOW POC
2.9 Oct 19

Improper certificate validation in the Google Analytics Client bundled with the Diem PHP framework (dmCorePlugin/lib/ven

CVE-2026-112040 LOW POC
2.1 Oct 19

An open redirect in the Diem PHP framework's Sign-In component (dmCorePlugin dmUserPlugin) allows remote attackers to re

CVE-2026-112030 LOW POC
2.1 Oct 18

Default-password exposure in Diem CMS through 5.1.3 allows remote attackers to access unhardened installations whose cre

CVE-2026-82679 LOW POC
2.1 Aug 31

Unrestricted file upload in diem-project/diem through version 5.1.3 exposes the Widget Editor to remote authenticated at

CVE-2026-86182 LOW POC
2.1 Sep 06

Cross-site request forgery in diem-project/diem up to version 5.1.3 allows remote attackers to trigger unauthorized cons

CVE-2026-112042 LOW POC
2.0 Oct 19

Cross-site scripting in the dmWidget link-rendering component of Diem CMS allows authenticated low-privilege users to in

CVE-2026-112138 LOW POC
2.0 Oct 19

Path traversal in Diem through 5.1.3 lets an authenticated user with high backend privileges abuse the dmCodeEditor acti

CVE-2026-82678 LOW POC
2.0 Aug 31

OS command injection in the Diem CMS Administrative Console (diem-project/diem ≤ 5.1.3) allows authenticated administrat

CVE-2026-112039 LOW POC
1.9 Oct 19

Cross-site scripting in the Diem PHP CMS administrative console lets a user who already holds high-privilege console acc

CVE-2026-112038 LOW POC
1.9 Oct 19

Cross-site scripting in the Diem admin plugin's Version Check Service lets a high-privileged authenticated attacker supp

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