CVE-2026-106120
Deferred Deferred - Pending Action

Stored Prototype Pollution in LiquidJS Template Engine

Vulnerability report for CVE-2026-106120, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-06

Last updated on: 2026-10-06

Assigner: GitHub, Inc.

Description

LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.27.2, enabling ownPropertyOnly does not consistently restrict inherited array indices because negative indexing, .first, .last, the first filter, the last filter, join, reverse, slice, compact, and for-loop iteration can read prototype-provided elements outside readJSProperty(). An attacker who can influence prototype state or inherited array-index data and cause templates to render affected operations can disclose values that ownPropertyOnly is expected to hide. Direct positive indexing and ordinary object prototype reads are blocked, but the alternate array paths remain affected. This issue is fixed in 10.27.2.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-06
Last Modified
2026-10-06
Generated
2026-10-06
AI Q&A
2026-10-06
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
harttle liquidjs < 10.27.2

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-200 The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

LiquidJS is a JavaScript template engine vulnerable before version 10.27.2. When ownPropertyOnly is enabled, it fails to consistently block inherited array indices. Attackers can exploit negative indexing, filters like first/last, or array methods to access prototype properties that should be restricted. This allows disclosure of values meant to be hidden.

Impact Analysis

If you use LiquidJS with ownPropertyOnly enabled, an attacker could read sensitive data from prototype properties. This could expose internal values, configuration details, or other hidden information in templates. The impact depends on what data is processed by the templates.

Mitigation Strategies

Update LiquidJS to version 10.27.2 or later to address the vulnerability. Ensure templates do not rely on ownPropertyOnly for security-sensitive data handling.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-106120. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart