Impact
The vulnerability originates in the dmString::random helper function within the Diem project’s library, causing it to use a cryptographically weak pseudo‑random number generator that can produce predictable random values. As a result, an attacker could potentially guess or manipulate values that should be secure—such as session tokens, nonces, or other cryptographic material—leading to unauthorized access or privilege escalation. The weakness is identified by CWE-331 and CWE-338, and a publicly available exploit exists. The attack vector is remote, requires a high level of skill, and is described as difficult to execute, yet the presence of a public exploit signals a real threat to systems that rely on this function for security.
Affected Systems
The affected product is the Diem project, specifically the Diem core library that implements the dmString::random function. The issue exists in versions up to commit 116974edfb9a5b8bd69cb13586dc62bcdbb485ad. Because the project follows a rolling release model, exact affected releases beyond that commit are not listed, and any current or future releases must be verified for the presence of the fix.
Risk and Exploitability
The CVSS score for this issue is 6.3, indicating a moderate threat. EPSS scoring is not available, and the vulnerability is not listed in the CISA KEV catalog. The attack can be performed from remote, and while the description notes a high complexity and difficult exploitability, it also states that a publicly available exploit exists. This combination suggests that while widespread attacks may be limited, the risk to any system using the vulnerable function remains significant, especially if key security tokens are generated by dmString::random.
OpenCVE Enrichment