High severity · published Aug 19, 2026
CVE-2026-61556
LiquidJS: An infinite loop vulnerability in `strip_html` filter
8.7
CVSS
0.5%
EPSS
No
On KEV
Description
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. From 10.26.0 until 10.27.1, the strip_html filter in src/filters/html.ts can enter an infinite loop when an input string contains <, includes at least one preceding character, and has no later >. In strip_html, the search for the next opener advances lt while the loop index remains unchanged when the closer search returns -1, and the equality-only stall guard does not exit because the loop index is less than lt. Reprocessing the same state indefinitely blocks template rendering and can cause denial of service with an input as short as a<. This issue is fixed in version 10.27.1.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 44% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LI
liquidjs · harttle
>= 10.26.0, < 10.27.1 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-61556
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-61556
github.com
https://github.com/harttle/liquidjs/commit/5c3522f33928aae66f0fe85c36e1d9015c768fe2
github.com
https://github.com/harttle/liquidjs/pull/917
github.com
https://github.com/harttle/liquidjs/releases/tag/v10.27.1
github.com
https://github.com/harttle/liquidjs/security/advisories/GHSA-m7fp-h3p4-hr49
More from liquidjs
10.0
CVE-2026-45618
LiquidJS is Vulnerable to Remote Code Execution
8.2
CVE-2026-55575
LiquidJS: `pop` filter bypasses `memoryLimit` accounting that its array-filter siblings enforce
7.5
CVE-2026-69222
LiquidJS: Uncontrolled Resource Consumption in `join` filter allows template authors to bypass `memoryLimit` and crash the process
7.5
CVE-2026-45357
LiquidJS: Memory and render limit bypass via unbounded width padding in `date` filter (strftime)
7.5
CVE-2026-45617
LiquidJS: ReDoS via Quadratic Backtracking in `strip_html` Filter Regex
