Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-18536

CVE-2026-18536: Data::Entropy Information Disclosure Flaw

CVE-2026-18536 is an information disclosure vulnerability in Data::Entropy for Perl where entropy sources are accessed over plain HTTP, allowing attackers to manipulate random data. This article covers technical details, affected versions, impact, and mitigation.

Published:

CVE-2026-18536 Overview

CVE-2026-18536 affects the Data::Entropy Perl module in versions before 0.010. The module retrieves remote entropy from Data::Entropy::RawSource::RandomOrg and Data::Entropy::RawSource::RandomnumbersInfo over plain HTTP. An on-path attacker can substitute the response and control the bytes returned by rand_bits and rand_int for any application configured via with_entropy_source. The Data::Entropy::RawSource::RandomOrg integrity check trivially matches any non-empty byte string, providing no protection against tampering. The _checkbuf method response is equally attacker-controlled, so retry and sleep behavior is also steerable. This flaw is tracked under [CWE-319] Cleartext Transmission of Sensitive Information.

Critical Impact

Attackers on the network path can deterministically control random values used by Perl applications relying on these entropy sources, undermining cryptographic keys, nonces, tokens, and any security-sensitive randomness.

Affected Products

  • Data::Entropy Perl module versions before 0.010
  • Applications using Data::Entropy::RawSource::RandomOrg
  • Applications using Data::Entropy::RawSource::RandomnumbersInfo

Discovery Timeline

  • 2026-08-01 - CVE-2026-18536 published to NVD
  • 2026-08-03 - Last updated in NVD database

Technical Details for CVE-2026-18536

Vulnerability Analysis

The Data::Entropy module provides pluggable entropy sources for Perl applications. Two of those sources, RandomOrg and RandomnumbersInfo, fetch bytes from remote services over plain HTTP. Because HTTP offers no confidentiality or integrity, any adversary sitting on the network path observes and rewrites the response body at will.

Applications that call with_entropy_source and then invoke rand_bits or rand_int receive whatever bytes the attacker chose to inject. When those bytes seed cryptographic keys, session identifiers, CSRF tokens, or password salts, the resulting values become predictable to the attacker.

The module's _checkbuf control channel travels over the same cleartext transport, so an attacker also dictates retry and sleep timing. This gives adversaries a stable, repeatable channel to shape application behavior.

Root Cause

The root cause is the use of an unauthenticated, unencrypted transport for security-sensitive data ([CWE-319]). The RandomOrg source additionally implements an integrity check that accepts any non-empty byte string, providing the appearance of validation without any real cryptographic assurance. Together, these design choices leave the entropy stream fully under attacker control on hostile networks.

Attack Vector

An attacker with a position on the network path between the victim application and random.org or randomnumbers.info intercepts the HTTP request and returns crafted bytes. Positions include open Wi-Fi networks, compromised ISPs, captive portals, and hostile egress proxies. No authentication, user interaction, or local access is required. The attack is repeatable and silent, since the client accepts the response without transport validation.

Refer to the GitHub Security Advisory and the MetaCPAN Security Guide for further technical detail.

Detection Methods for CVE-2026-18536

Indicators of Compromise

  • Outbound plain HTTP requests from Perl processes to www.random.org or www.randomnumbers.info
  • Perl dependency manifests pinning Data-Entropy versions below 0.010
  • Applications invoking with_entropy_source, rand_bits, or rand_int in code paths that generate cryptographic material

Detection Strategies

  • Inventory installed CPAN modules and flag any Data::Entropy release earlier than 0.010.
  • Inspect source repositories for imports of Data::Entropy::RawSource::RandomOrg and Data::Entropy::RawSource::RandomnumbersInfo.
  • Alert on egress HTTP (port 80) traffic to the affected remote entropy providers from application servers.

Monitoring Recommendations

  • Log DNS resolutions and TCP connections to random.org and randomnumbers.info domains from production hosts.
  • Monitor TLS-versus-cleartext ratios for outbound traffic from application tiers handling secrets.
  • Track CPAN package updates and vulnerability advisories through the OpenWall OSS-Security discussion.

How to Mitigate CVE-2026-18536

Immediate Actions Required

  • Upgrade Data::Entropy to version 0.010 or later on every host running Perl applications.
  • Audit application code for calls to with_entropy_source targeting the affected remote sources and switch to local OS entropy.
  • Rotate cryptographic keys, tokens, and secrets generated on vulnerable hosts if exposure to hostile networks was possible.

Patch Information

Version 0.010 of the module addresses the issue. See the MetaCPAN Version Change Log and the MetaCPAN Module Status for maintainer guidance. The maintainer additionally recommends using operating system entropy sources rather than remote network services.

Workarounds

  • Replace Data::Entropy::RawSource::RandomOrg and Data::Entropy::RawSource::RandomnumbersInfo with a local source backed by /dev/urandom or Crypt::URandom.
  • Block outbound plain HTTP to random.org and randomnumbers.info at the egress firewall until the upgrade is complete.
  • Force HTTPS for any code paths that must retrieve remote entropy, and validate certificate chains.
bash
# Configuration example
cpanm Data::Entropy@0.010

# Verify installed version
perl -MData::Entropy -e 'print $Data::Entropy::VERSION, "\n"'

# Egress block for legacy HTTP entropy endpoints (iptables example)
iptables -A OUTPUT -p tcp --dport 80 -d www.random.org -j REJECT
iptables -A OUTPUT -p tcp --dport 80 -d www.randomnumbers.info -j REJECT

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.