CVE-2025-22376: PRNG
Source CVE Database V5
Not known to be exploited · CVSS 5.3 Medium · fixed in 0.29 : update Net::OAuth package when convenient.
Data as of 26 Oct 2026, 14:05 UTC
- EPSS
- 0.6% chance of exploitation in 30 days – higher than 48% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Affects
- Net::OAuth package before 0.29
- Patch
- Available – fixed in 0.29
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LExploitation evidence
Disclosed: evidence found.
CVE published 3 Jan 2025
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
AI-suggested
To mitigate this vulnerability, organizations should upgrade to Net::OAuth version 0.29 or later, where nonce generation uses a cryptographically secure random number generator. If upgrading is not immediately feasible, developers should override the default nonce generation method to use a secure PRNG, such as those provided by Perl modules like Crypt::PRNG or by interfacing with system-level secure random sources (e.g., /dev/urandom). Additionally, implementing nonce tracking and validation mechanisms on the server side can help detect and prevent replay attacks. Security teams should audit OAuth implementations to ensure all cryptographic elements, including nonces, tokens, and keys, use strong randomness sources. Monitoring for unusual authentication patterns and applying rate limiting can further reduce exploitation risk. Finally, maintain awareness of updates from the Net::OAuth project and apply patches promptly when available.
Description
In Net::OAuth::Client in the Net::OAuth package before 0.29 for Perl, the default nonce is a 32-bit integer generated from the built-in rand() function, which is not cryptographically strong.
References
- metacpan.org/release/RRWO/Net-OAuth-0.29/changes (opens in a new tab)
- metacpan.org/release/KGRENNAN/Net-OAuth-0.28/source/lib/Net/OAuth/Client.pm (opens in a new tab)
- metacpan.org/release/RRWO/Net-OAuth-0.29/diff/KGRENNAN/Net-OAuth-0.28 (opens in a new tab)
- vulnarium.com/blogpost-2025-01-05 (opens in a new tab)
- github.com/keeth/Net-OAuth/commit/2aa25e04aadab247ae4063363fcee177161e1f42 (opens in a new tab)
- datatracker.ietf.org/doc/html/rfc5849 (opens in a new tab)
- datatracker.ietf.org/doc/html/rfc5849 (opens in a new tab)