Description
GD::SecurityImage versions through 1.75 for Perl use rand to generate secrets.

The random method creates the challenge text used for the CAPTCHA by sampling characters from an array using Perl's built-in rand function, and generates a (by default) six-character string.

The built-in rand function is unsuitable for security applications because it is predictable and reversible.
Published: 2026-07-17
Score: 5.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

GD::SecurityImage versions up to 1.75 generate the CAPTCHA challenge text by sampling from an array using Perl's built-in rand function. The rand function is not cryptographically secure; it is deterministic and can be reproduced, meaning an attacker could anticipate or reverse the challenge string. Consequently, the CAPTCHA can be broken, allowing automated attacks to bypass validation and potentially compromise application security. The weakness is classified as CWE‑338, indicating a flaw in the generation of random secrets, and CWE‑804, signifying a failure to properly validate or sanitize user input.

Affected Systems

The vulnerability affects the Perl module BURAK:GD::SecurityImage, version 1.75 and earlier. Since the module has not been updated since 2018 and the repository is archived, any installation of this module remains vulnerable.

Risk and Exploitability

The CVSS score of 5.3 indicates moderate severity. The EPSS score of less than 1% suggests a low probability of exploitation, and the vulnerability is not listed in CISA KEV. The likely attack vector is a remote web application that presents a CAPTCHA to enforce human interaction, where an attacker could replay or predict the challenge to automate credential or form submissions. This would not require local code execution but could lead to loss of availability or data integrity by bypassing input controls.

Generated by OpenCVE AI on July 31, 2026 at 00:27 UTC.

Remediation

Vendor Workaround

GD::SecurityImage has not been updated since 2018, the module is flagged as ADOPTME on CPAN, and the git repository is archived as read-only, which prevents issues and pull requests from being created. Users are advised to find an alternative solution. For users who are unable to migrate to an alternative, install Crypt::URandom::MonkeyPatch (which will override the built-in rand with a wrapper around Crypt::URandom) and apply the patch.


OpenCVE Recommended Actions

  • Replace GD::SecurityImage with a CAPTCHA module that uses a cryptographically secure random source
  • If migration is not possible, install Crypt::URandom::MonkeyPatch to override Perl's rand function with a secure random implementation and apply the provided patch
  • Consider increasing the challenge length or switching to a different CAPTCHA strategy (e.g., reCAPTCHA, HCaptcha) that relies on proven security mechanisms

Generated by OpenCVE AI on July 31, 2026 at 00:27 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 23 Jul 2026 22:45:00 +0000

Type Values Removed Values Added
First Time appeared Burak
Burak gd::securityimage
Vendors & Products Burak
Burak gd::securityimage

Fri, 17 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 17 Jul 2026 13:00:00 +0000

Type Values Removed Values Added
Description GD::SecurityImage versions through 1.75 for Perl use rand to generate secrets. The random method creates the challenge text used for the CAPTCHA by sampling characters from an array using Perl's built-in rand function, and generates a (by default) six-character string. The built-in rand function is unsuitable for security applications because it is predictable and reversible.
Title GD::SecurityImage versions through 1.75 for Perl use rand to generate secrets
Weaknesses CWE-338
CWE-804
References

Subscriptions

Burak Gd::securityimage
cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-07-17T17:29:23.536Z

Reserved: 2026-06-23T18:17:08.243Z

Link: CVE-2026-13082

cve-icon Vulnrichment

Updated: 2026-07-17T17:29:03.597Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T00:30:18Z

Weaknesses
  • CWE-338

    Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)

  • CWE-804

    Guessable CAPTCHA