CVE-2026-78497 PUBLISHED

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

Assigner: CPANSec
Reserved: 24.08.2026 Published: 18.10.2026 Updated: 18.10.2026

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.

Product Status

Package Collection https://cpan.org/modules
Package Name JQ-Lite
Versions Default: unaffected
  • affected from 0 to 2.51 (excl.)

Solutions

Upgrade to JQ-Lite 2.51 or later.

References

Problem Types

  • CWE-95 Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection') CWE