Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIdentify target using remote entropy source
-
DeliveryAcquire on-path position (rogue WiFi or proxy)
-
ExploitIntercept plain HTTP entropy fetch
-
InstallSubstitute controlled byte sequence in response
-
C2Bypass trivial integrity check
-
ExecuteApplication consumes attacker-controlled entropy
-
ImpactPredict all derived cryptographic material
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V12 - Secure Communication Transport encryption
|
| Exploitation Conditions | The application must explicitly configure Data::Entropy::RawSource::RandomOrg or Data::Entropy::RawSource::RandomnumbersInfo as its entropy source using with_entropy_source - this is not a default configuration and represents a deliberate opt-in. The attacker must be on-path between the application host and the upstream HTTP entropy endpoint (random.org or randomnumbers.info), achievable via open WiFi control, ISP-level interception, captive portal injection, or a hostile egress proxy. Exploitation is limited by the non-default nature of the remote sources and the attacker's need for network positioning; applications using local entropy providers (the typical pattern) are entirely unaffected regardless of version. |
| Impact | The NVD CVSS 3.1 score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N) is likely overgenerous on AC: achieving an on-path position (open WiFi intercept, ISP compromise, captive portal injection, hostile egress proxy) is a real prerequisite that is not universally achievable, which would support AC:H rather than AC:L, reducing the score to approximately 5.9 (Medium). The confidentiality impact of H is well justified because controlling entropy is equivalent to knowing all cryptographic material derived from it - session tokens, keys, nonces. EPSS is very low at 0.10% (1st percentile), consistent with this being a niche Perl CPAN module with limited deployment and no public exploit code. The flaw is not in CISA KEV, and no POC has been published. Real-world risk is heavily gated on whether an application explicitly opts into one of the two affected remote sources via with_entropy_source - applications using local entropy (the typical and default pattern) are entirely unaffected. For those that do use the remote sources, however, the impact is total loss of randomness confidentiality. |
| Exploit ScenarioDerived | An attacker positioned on the network path between the vulnerable Perl application and random.org - for example, operating a rogue open WiFi access point or compromising an egress proxy - intercepts the unencrypted HTTP entropy request and responds with a predetermined byte sequence of their choice. Because the integrity check accepts any non-empty string, the crafted response passes validation and is consumed by with_entropy_source, making every subsequent call to rand_bits and rand_int return attacker-controlled values; any cryptographic key, session token, or nonce derived from these values is therefore fully predictable to the attacker. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 03, 2026
Entropy source compromise in Data::Entropy (Perl) before version 0.010 allows any on-path network attacker to fully control the random bytes returned by rand_bits and rand_int for every application that selects the RandomOrg or RandomnumbersInfo remote sources via with_entropy_source. The library fetches entropy over plain HTTP with no transport security, and Data::Entropy::RawSource::RandomOrg's integrity check trivially accepts any non-empty byte string, so substituted attacker-controlled responses are never rejected. A vendor-released patch is confirmed at version 0.010; no active exploitation is confirmed (EPSS 0.10%, 1st percentile, not in CISA KEV), but the deterministic nature of the flaw means any secret derived from these sources is entirely known to the attacker.
RemediationAI
Upgrade Data::Entropy to version 0.010 or later via CPAN ('cpan install Data::Entropy' or 'cpanm Data::Entropy'); the release changelog is confirmed at https://metacpan.org/release/RRWO/Data-Entropy-0.010/changes and the security advisory at https://github.com/robrwo/Data-Entropy/security/advisories/GHSA-845w-rcqw-jwvv. If an immediate upgrade is not possible, the most effective compensating control is to stop using the affected remote entropy sources entirely and switch to a local entropy source (e.g., Crypt::Random or File::ReadBackwards against /dev/urandom), which eliminates the network attack surface entirely; the trade-off is losing access to hardware true-random number generation from third-party services. Alternatively, if remote entropy is operationally required, use a local TLS-terminating proxy to the upstream APIs and verify certificates, though this introduces operational complexity. Guidance on secure random data selection for Perl is available at https://security.metacpan.org/docs/guides/random-data-for-security.html.
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
Data::Entropy is a Perl CPAN library (CPE: cpe:2.3:a:rrwo:data::entropy:*:*:*:*:*:*:*:*) that provides a pluggable entropy/randomness framework. The two remote source backends - Data::Entropy::RawSource::RandomOrg and Data::Entropy::RawSource::RandomnumbersInfo - issue HTTP GET requests to third-party true-random number APIs over unencrypted HTTP. The root cause is CWE-319 (Cleartext Transmission of Sensitive Information): because the channel is unencrypted, any on-path observer can both read and modify the entropy payload before it reaches the application. Compounding the issue, the _checkbuf integrity verification method in the RandomOrg source accepts any non-empty byte string as valid, rendering the check entirely ineffective against a substitution attack. The retry and sleep backoff behaviour is also controlled by the same attacker-controlled response, giving an attacker additional control over timing and denial-of-service-adjacent behaviour.
Know when Data 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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
On-path network positioning is required for exploitation, warranting AC:H; no authentication or user interaction needed; only confidentiality is impacted.
Primary rating from Vendor (CPANSec).
CVSS VectorVendor: CPANSec
Lifecycle Timeline
4DescriptionCVE.org
Data::Entropy versions before 0.010 for Perl read remote entropy sources over plain HTTP.
The Data::Entropy::RawSource::RandomOrg and Data::Entropy::RawSource::RandomnumbersInfo remote sources are accessed over plain HTTP.
The Data::Entropy::RawSource::RandomOrg integrity check trivially matches any non-empty byte string.
Any on-path attacker, such as open WiFi, a compromised ISP, captive portal, or a hostile egress proxy substitutes the response and thereby chooses the bytes returned by rand_bits and rand_int for every application that selected one of these sources via with_entropy_source. The _checkbuf method response is equally attacker-controlled, so the retry/sleep behaviour is steerable too.
Executive ViewAI
Data::Entropy, a Perl library for cryptographic random number generation, allows network attackers to completely control entropy values from remote sources due to missing transport encryption and integrity checks. This breaks the security of any encryption keys or authentication tokens generated by affected applications. Organizations using remote entropy sources must patch to version 0.010 immediately to restore cryptographic security.
Apply vendor patch.
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.
The Data::Validate::IP module through 0.29 for Perl does not properly consider extraneous zero characters at the beginni
Stack buffer overflow in the Perl module Data::RingBuffer::Shared before 0.04 lets a local peer with write access to the
Out-of-bounds read and write in the Perl module Data::DisjointSet::Shared before version 0.02 lets a local actor who can
Out-of-bounds memory disclosure in Data::Intern::Shared before 0.02, a Perl shared-memory string interning module, lets
Out-of-bounds read and write in the Perl module Data::SpatialHash::Shared before 0.02 lets a local peer with write acces
Out-of-bounds read in Data::RoaringBitmap::Shared before version 0.02 for Perl allows a local peer with write access to
World-readable mmap backing files and absent O_NOFOLLOW protection in Data::Buffer::Shared for Perl (versions before 0.0
Information disclosure in Data::RoaringBitmap::Shared Perl module before 0.02 allows local attackers to read sensitive I
Insecure mmap backing-file creation in Data::DisjointSet::Shared (Perl/CPAN) before 0.02 exposes inter-process IPC paylo
Information disclosure in the Perl Data::Deque::Shared module before version 0.06 exposes inter-process communication qu
World-readable IPC segment exposure in Data::SpatialHash::Shared (Perl) before version 0.02 allows any local user on a m
Insecure file creation in Data::Intern::Shared for Perl (all versions before 0.02) exposes shared memory IPC payloads to
EUVD-2026-51803
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB