CVE-2026-34166: CWE-400: Uncontrolled Resource Consumption in harttle liquidjs
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.3, the replace filter in LiquidJS incorrectly accounts for memory usage when the memoryLimit option is enabled. It charges str.length + pattern.length + replacement.length bytes to the memory limiter, but the actual output from str.split(pattern).join(replacement) can be quadratically larger when the pattern occurs many times in the input string. This allows an attacker who controls template content to bypass the memoryLimit DoS protection with approximately 2,500x amplification, potentially causing out-of-memory conditions. This vulnerability is fixed in 10.25.3.
AI Analysis
Technical Summary
LiquidJS versions before 10.25.3 have a vulnerability in the replace filter where memory usage is incorrectly calculated when the memoryLimit option is enabled. The filter charges memory usage based on the lengths of the input string, pattern, and replacement string, but the actual output size from str.split(pattern).join(replacement) can be much larger, especially if the pattern occurs frequently. This discrepancy allows an attacker who can control template content to bypass the memoryLimit protection and cause excessive memory consumption, potentially leading to denial-of-service due to out-of-memory conditions. The issue is tracked as CWE-400 (Uncontrolled Resource Consumption) and is resolved in version 10.25.3.
Potential Impact
An attacker able to control template content can exploit this vulnerability to bypass the memoryLimit protection and cause a denial-of-service by consuming excessive memory. This can lead to out-of-memory conditions affecting the availability of applications using vulnerable versions of LiquidJS. There is no impact on confidentiality or integrity. The CVSS score is 3.7 (low severity), reflecting the limited scope and complexity of exploitation.
Mitigation Recommendations
This vulnerability is fixed in LiquidJS version 10.25.3. Users of LiquidJS should upgrade to version 10.25.3 or later to remediate this issue. Patch status is not explicitly stated in the vendor advisory content provided, but the description confirms the fix is included in version 10.25.3. No other mitigation or temporary workaround is indicated.
CVE-2026-34166: CWE-400: Uncontrolled Resource Consumption in harttle liquidjs
Description
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.3, the replace filter in LiquidJS incorrectly accounts for memory usage when the memoryLimit option is enabled. It charges str.length + pattern.length + replacement.length bytes to the memory limiter, but the actual output from str.split(pattern).join(replacement) can be quadratically larger when the pattern occurs many times in the input string. This allows an attacker who controls template content to bypass the memoryLimit DoS protection with approximately 2,500x amplification, potentially causing out-of-memory conditions. This vulnerability is fixed in 10.25.3.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
LiquidJS versions before 10.25.3 have a vulnerability in the replace filter where memory usage is incorrectly calculated when the memoryLimit option is enabled. The filter charges memory usage based on the lengths of the input string, pattern, and replacement string, but the actual output size from str.split(pattern).join(replacement) can be much larger, especially if the pattern occurs frequently. This discrepancy allows an attacker who can control template content to bypass the memoryLimit protection and cause excessive memory consumption, potentially leading to denial-of-service due to out-of-memory conditions. The issue is tracked as CWE-400 (Uncontrolled Resource Consumption) and is resolved in version 10.25.3.
Potential Impact
An attacker able to control template content can exploit this vulnerability to bypass the memoryLimit protection and cause a denial-of-service by consuming excessive memory. This can lead to out-of-memory conditions affecting the availability of applications using vulnerable versions of LiquidJS. There is no impact on confidentiality or integrity. The CVSS score is 3.7 (low severity), reflecting the limited scope and complexity of exploitation.
Mitigation Recommendations
This vulnerability is fixed in LiquidJS version 10.25.3. Users of LiquidJS should upgrade to version 10.25.3 or later to remediate this issue. Patch status is not explicitly stated in the vendor advisory content provided, but the description confirms the fix is included in version 10.25.3. No other mitigation or temporary workaround is indicated.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-03-25T20:12:04.197Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 69d736fd1cc7ad14da418acd
Added to database: 4/9/2026, 5:19:57 AM
Last enriched: 4/9/2026, 5:22:23 AM
Last updated: 4/10/2026, 5:46:28 AM
Views: 9
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.