What’s Vulnerable › Vulnerabilities
CVE-2026-78497: JQ::Lite versions before 2.51 for Perl execute Perl code embedded in a query's regular expression by compiling it with string eval
- Severity: high (CVSS 8.4 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-10-18 · updated 2026-10-20
- Weakness: CWE-95
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.
Affected products
- JQ-Lite: before 2.51 — fixed in 2.51
How to fix
Upgrade to a fixed version: JQ-Lite 2.51. Check the vendor advisory for mitigations.
References
- https://github.com/kawamurashingo/JQ-Lite/commit/c461721ae3d5a90d6d94dbb234c1b8dfee5c1769.patch
- https://metacpan.org/release/SHINGO/JQ-Lite-2.51/changes
- http://www.openwall.com/lists/oss-security/2026/10/18/3
Get alerted when CVE-2026-78497 or the next vulnerability affects your stack