| Titolo | diem-project diem 116974edfb9a5b8bd69cb13586dc62bcdbb485ad Cryptographically Weak PRNG |
|---|
| Descrizione | `dmCorePlugin/lib/basic/dmString.php` implements `dmString::random()` by repeatedly calling PHP `rand()`. The password-reset action in `dmCorePlugin/plugins/dmUserPlugin/modules/dmUser/lib/BasedmUserActions.class.php` uses a 12-character value from this function as a bearer `forgot_password_code`, and the persistent-login path in `dmSecurityUser.class.php` derives its remembered-login key from the same output. The reset handler accepts the code to set a new password, while `dmRememberMeFilter` authenticates a request based on a matching key. These account-authentication tokens are generated by a non-cryptographic PRNG rather than a CSPRNG, so deployments where an attacker can predict or recover the PRNG state are exposed to account takeover. |
|---|
| Fonte | ⚠️ https://github.com/diem-project/diem/issues/458 |
|---|
| Utente | cnluminous (UID 98136) |
|---|
| Sottomissione | 30/09/2026 18:06 (25 giorni fa) |
|---|
| Moderazione | 18/10/2026 11:52 (18 days later) |
|---|
| Stato | Accettato |
|---|
| Voce VulDB | 421689 [diem-project diem fino a 116974edfb9a5b8bd69cb13586dc62bcdbb485ad dmString.php dmString::random cifratura debole] |
|---|
| Punti | 20 |
|---|