CVE-2026-33285

LiquidJS: memoryLimit Bypass through Negative Range Values Leads to Process Crash

State
Published
Severity
7.5 High
Published
Mar 26, 2026
Updated
Mar 28, 2026
Reserved
Mar 18, 2026

Read the record on cve.org

Description

LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to version 10.25.1, LiquidJS's `memoryLimit` security mechanism can be completely bypassed by using reverse range expressions (e.g., `(100000000..1)`), allowing an attacker to allocate unlimited memory. Combined with a string flattening operation (e.g., `replace` filter), this causes a V8 Fatal error that crashes the Node.js process, resulting in complete denial of service from a single HTTP request. Version 10.25.1 patches the issue.

Scores

CVSSScoreVectorSource
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HGitHub_M

Weaknesses

  • CWE-20 Improper Input Validation
  • CWE-400 Uncontrolled Resource Consumption

Affected Products

ProductVersions
liquidjsharttle
  • < 10.25.1Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.