CVE-2026-33287

LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to version 10.25.1, the `replace_first` filter in LiquidJS uses JavaScript's `String.prototype.replace()` which interprets `$&` as a back reference to the matched substring. The filter only charges `memoryLimit` for the input string length, not the amplified output. An attacker can achieve exponential memory amplification (up to 625,000:1) while staying within the `memoryLimit` budget, leading to denial of service. Version 10.25.1 patches the issue.
Configurations

Configuration 1 (hide)

cpe:2.3:a:liquidjs:liquidjs:*:*:*:*:*:node.js:*:*

History

30 Mar 2026, 16:46

Type Values Removed Values Added
First Time Liquidjs
Liquidjs liquidjs
References () https://github.com/harttle/liquidjs/commit/35d523026345d80458df24c72e653db78b5d061d - () https://github.com/harttle/liquidjs/commit/35d523026345d80458df24c72e653db78b5d061d - Patch
References () https://github.com/harttle/liquidjs/security/advisories/GHSA-6q5m-63h6-5x4v - () https://github.com/harttle/liquidjs/security/advisories/GHSA-6q5m-63h6-5x4v - Exploit, Vendor Advisory
CPE cpe:2.3:a:liquidjs:liquidjs:*:*:*:*:*:node.js:*:*
Summary
  • (es) LiquidJS es un motor de plantillas compatible con Shopify / GitHub Pages en JavaScript puro. Antes de la versión 10.25.1, el filtro 'replace_first' en LiquidJS utiliza 'String.prototype.replace()' de JavaScript, que interpreta '$&' como una retroreferencia a la subcadena coincidente. El filtro solo carga 'memoryLimit' por la longitud de la cadena de entrada, no por la salida amplificada. Un atacante puede lograr una amplificación exponencial de la memoria (hasta 625.000:1) mientras se mantiene dentro del presupuesto de 'memoryLimit', lo que lleva a una denegación de servicio. La versión 10.25.1 corrige el problema.

26 Mar 2026, 15:16

Type Values Removed Values Added
References () https://github.com/harttle/liquidjs/security/advisories/GHSA-6q5m-63h6-5x4v - () https://github.com/harttle/liquidjs/security/advisories/GHSA-6q5m-63h6-5x4v -

26 Mar 2026, 01:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-26 01:16

Updated : 2026-03-30 16:46


NVD link : CVE-2026-33287

Mitre link : CVE-2026-33287

CVE.ORG link : CVE-2026-33287


JSON object : View

Products Affected

liquidjs

  • liquidjs
CWE
CWE-20

Improper Input Validation

CWE-400

Uncontrolled Resource Consumption