Skip to main content
← All vulnerabilities
CVE-2026-55575GHSA-G357-X5C3-C72P

LiquidJS: `pop` filter bypasses `memoryLimit` accounting that its array-filter siblings enforce

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 10.27.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: total

Summary

LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.27.1, the pop array filter at src/filters/array.ts allocated a full clone of its input array via [...toArray(v)] without calling this.context.memoryLimit.use(...), allowing a template render such as {{ huge_array | pop }} to allocate an O(N) clone of an attacker-influenced array outside the configured memoryLimit budget. This issue is fixed in version 10.27.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: total

  3. Record last updated

Affected versions

  • harttle liquidjs

    fixed in 10.27.1

  • liquidjsnpm

    fixed in 10.27.1

References 4

GitHub · harttle/liquidjs