Patch Forecast
Yellow warning
Plan into this sprint.

CVE-2026-106120 · GHSA-fwxr-j5w2-587m

LiquidJS: ownPropertyOnly bypass for inherited array indices in first/last/join/reverse/slice/compact, `.first`/`.last`, negative index, and for-loop iteration

Risk score
52/100
CVSS
6.0 v4.0
Exploit chance (30 days)
0.4%
Published
6 Oct 2026

Open in the live forecast Today's forecast

What to know

What it is
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 re…
Affected
liquidjs (npm) <= 10.27.1
Fix
Upgrade liquidjs to 10.27.2 or later.
Exploitation
Public proof of concept

Why it is Yellow

  • CVSS 6.0 medium
  • Public exploit or proof of concept referenced
  • On your watchlist: npm

Affected packages

PackageEcosystemVulnerableFixed in
liquidjsnpm<= 10.27.110.27.2

References

Original 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.

Last activity 6 Oct 2026. Patch Forecast updates every hour.