Description
JQ::Lite versions before 2.51 for Perl execute Perl code embedded in a query's regular expression by compiling it with string eval.

The pattern given to test(), match(), or the match and =~ conditions of select() is placed in a `qr'...'` literal and compiled as source text, so a `(?{ ... })` code block in it runs without `use re 'eval'`. Single quotes in the pattern are escaped, but a code block runs in place and needs none.

An attacker who supplies a query, or text that an application inserts into the pattern of one, can execute arbitrary Perl code in the calling process.
Published: 2026-10-18
Score: n/a
EPSS: n/a
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

JQ::Lite, a Perl module used for manipulating JSON-like structures, allows evaluation of Perl code embedded in a regular expression pattern before version 2.51. A pattern containing a code block such as (?{ ... }) is compiled via string eval inside the module, meaning that any Perl code placed in that block is executed in the context of the calling process. An attacker who supplies a crafted query, or whose input becomes part of a query pattern, can trigger arbitrary Perl code execution. The impact is a full compromise of the host environment, granting attackers full control over the running application and potentially the underlying operating system.

Affected Systems

Perl applications that use JQ::Lite versions prior to 2.51 are affected. The vulnerability applies to all distribution channels that ship this older module, including CPAN releases and any custom deployments that have not updated to 2.51 or later.

Risk and Exploitability

The vulnerability is severe; the CVSS score is not provided, but the nature of arbitrary code execution indicates a high severity rating. EPSS data is unavailable, and the issue is not yet listed in CISA’s KEV catalog. The attack vector is inferred to involve supplied queries or input that becomes part of a pattern, so an application that processes user data through JQ::Lite without sanitization could be exploited remotely. Because the module compiles the pattern directly, no complex prerequisites exist beyond supplying a query containing executable code.

Generated by OpenCVE AI on October 18, 2026 at 12:42 UTC.

Remediation

Vendor Solution

Upgrade to JQ-Lite 2.51 or later.


OpenCVE Recommended Actions

  • Upgrade JQ::Lite to version 2.51 or later
  • If upgrading is not immediately possible, remove or strictly sanitize any user-supplied data that is used in JQ::Lite query patterns to prevent inclusion of code blocks
  • Consider disabling regex eval globally (e.g., using use re 'noeval') in the application or patching JQ::Lite to escape code blocks before compilation

Generated by OpenCVE AI on October 18, 2026 at 12:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 18 Oct 2026 11:45:00 +0000

Type Values Removed Values Added
Description JQ::Lite versions before 2.51 for Perl execute Perl code embedded in a query's regular expression by compiling it with string eval. The pattern given to test(), match(), or the match and =~ conditions of select() is placed in a `qr'...'` literal and compiled as source text, so a `(?{ ... })` code block in it runs without `use re 'eval'`. Single quotes in the pattern are escaped, but a code block runs in place and needs none. An attacker who supplies a query, or text that an application inserts into the pattern of one, can execute arbitrary Perl code in the calling process.
Title JQ::Lite versions before 2.51 for Perl execute Perl code embedded in a query's regular expression by compiling it with string eval
Weaknesses CWE-95
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-10-18T11:32:05.853Z

Reserved: 2026-08-24T17:17:51.029Z

Link: CVE-2026-78497

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T12:17:15.350

Modified: 2026-10-18T12:17:15.350

Link: CVE-2026-78497

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-18T12:45:01Z

Weaknesses
  • CWE-95

    Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')