You are viewing this page in an unauthorized frame window.
This is a potential security issue, you are being redirected to
https://nvd.nist.gov
An official website of the United States government
Official websites use .gov
A .gov website belongs to an official government organization in the United States.
Secure .gov websites use HTTPS
A lock () or https:// means you've safely connected to the .gov website. Share sensitive information only on official, secure websites.
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.3, for {% include %}, {% render %}, and {% layout %}, LiquidJS checks whether the candidate path is inside the configured partials or layouts roots before reading it. That check is path-based, not realpath-based. Because of that, a file like partials/link.liquid passes the directory containment check as long as its pathname is under the allowed root. If link.liquid is actually a symlink to a file outside the allowed root, the filesystem follows the symlink when the file is opened and LiquidJS renders the external target. So the restriction is applied to the path string that was requested, not to the file that is actually read. This matters in environments where an attacker can place templates or otherwise influence files under a trusted template root, including uploaded themes, extracted archives, mounted content, or repository-controlled template trees. This vulnerability is fixed in 10.25.3.
Metrics
NVD enrichment efforts reference publicly available information to associate
vector strings. CVSS information contributed by other sources is also
displayed.
By selecting these links, you will be leaving NIST webspace.
We have provided these links to other web sites because they
may have information that would be of interest to you. No
inferences should be drawn on account of other sites being
referenced, or not, from this page. There may be other web
sites that are more appropriate for your purpose. NIST does
not necessarily endorse the views expressed, or concur with
the facts presented on these sites. Further, NIST does not
endorse any commercial products that may be mentioned on
these sites. Please address comments about this page to [email protected].
Title: LiquidJS de Harttle, Description: LiquidJS es un motor de plantillas compatible con Shopify / GitHub Pages en JavaScript puro. Antes de la versión 10.25.3, para {% include %}, {% render %} y {% layout %}, LiquidJS verifica si la ruta candidata está dentro de las raíces de parciales o diseños configuradas antes de leerla. Esa verificación se basa en la ruta, no en la ruta real. Debido a eso, un archivo como partials/link.liquid pasa la verificación de contención de directorio siempre que su nombre de ruta esté bajo la raíz permitida. Si link.liquid es en realidad un enlace simbólico a un archivo fuera de la raíz permitida, el sistema de archivos sigue el enlace simbólico cuando se abre el archivo y LiquidJS renderiza el objetivo externo. Así, la restricción se aplica a la cadena de ruta que fue solicitada, no al archivo que realmente se lee. Esto importa en entornos donde un atacante puede colocar plantillas o influir de otra manera en archivos bajo una raíz de plantilla de confianza, incluyendo temas subidos, archivos extraídos, contenido montado o árboles de plantillas controlados por repositorio. Esta vulnerabilidad se corrige en la versión 10.25.3.
New CVE Received from GitHub, Inc.4/08/2026 4:16:24 PM
Action
Type
Old Value
New Value
Added
Description
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.3, for {% include %}, {% render %}, and {% layout %}, LiquidJS checks whether the candidate path is inside the configured partials or layouts roots before reading it. That check is path-based, not realpath-based. Because of that, a file like partials/link.liquid passes the directory containment check as long as its pathname is under the allowed root. If link.liquid is actually a symlink to a file outside the allowed root, the filesystem follows the symlink when the file is opened and LiquidJS renders the external target. So the restriction is applied to the path string that was requested, not to the file that is actually read. This matters in environments where an attacker can place templates or otherwise influence files under a trusted template root, including uploaded themes, extracted archives, mounted content, or repository-controlled template trees. This vulnerability is fixed in 10.25.3.