Skip to main content
VulnerabilityPublished

CVE-2026-30952: harttle liquidjs · Path Traversal

Affects harttle liquidjsSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 8.7 High : upgrade to 10.25.0 soon.

Data as of 30 Oct 2026, 11:52 UTC

CVSS 4.0 base score
8.7High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.5% chance of exploitation in 30 days – higher than 47% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 10.25.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 10 Mar 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: evidence found.

    Public exploit code: GitHub proofs of concept

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), GitHub proofs of concept, the Metasploit, Exploit-DB and nuclei-templates index as of 30 Oct 2026.

What to do

Upgrade liquidjs and harttle/liquidjs to 10.25.0.

Affected software

ProductAffectedFixed in
harttleliquidjsAffected
  • <10.25.0
Fixed in
  • 10.25.0
npmharttle/liquidjspkg:npm/harttle/liquidjsOther threatsAffected
  • <10.25.0
Fixed in
  • 10.25.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

To mitigate CVE-2026-30952, organizations should immediately upgrade all liquidjs instances to version 10.25.0 or later, where the vulnerability is fixed. Additionally, restrict or sanitize any user input that can influence template file paths, especially when dynamicPartials is enabled. Disable dynamicPartials if dynamic file inclusion is not required. Implement strict allowlisting of template directories and enforce path normalization to prevent traversal sequences. Employ runtime monitoring and alerting for suspicious file access patterns. Conduct code reviews and security testing on templates that accept user input to ensure no arbitrary file inclusion is possible. For environments where upgrading is not immediately feasible, consider isolating the application with least privilege file system permissions to limit the impact of potential exploitation. Finally, maintain up-to-date backups and incident response plans to quickly recover from any compromise.

Description

liquidjs is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.0, the layout, render, and include tags allow arbitrary file access via absolute paths (either as string literals or through Liquid variables, the latter require dynamicPartials: true, which is the default). This poses a security risk when malicious users are allowed to control the template content or specify the filepath to be included as a Liquid variable. This vulnerability is fixed in 10.25.0.

References

Community reviews

Loading reviews…