English version →
Webアプリケーション
CVE-2026-71215 high CVSS 7.5

art-template's sub-template resolution logic (src/compile/adapter/resolve-filename.js), used by...

概要

art-template's sub-template resolution logic (src/compile/adapter/resolve-filename.js), used by...

原文の説明

取得元が公開している説明をそのまま載せています (多くは英語)。

art-template's sub-template resolution logic (src/compile/adapter/resolve-filename.js), used by both the include() and extend() template directives, resolves the target file path via path.resolve(root, filename) with no check afterward that the result remains inside root. Because path.resolve() discards root entirely when filename is an absolute path, and does not block '../' traversal sequences, and the resolved path is passed directly to fs.readFileSync() in loader.js with its contents compiled and rendered, an application that lets a sub-template name be influenced by external input (e.g. a query parameter passed into {{include page}}) allows an attacker to read arbitrary files on disk that the Node process can access.

出典: NIST National Vulnerability Database NVD GitHub Advisory

AI要約

外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。

art-templateのサブテンプレート解決ロジックにおける問題で、絶対パスを処理するときにディレクトリ外へのファイルアクセスが可能です。攻撃者は、外部入力を利用して任意のファイルを読み取ることができます。

❓ 何が問題か

art-templateのサブテンプレート解決ロジックで、絶対パス処理時にディレクトリ外アクセスが可能な問題。

📍 影響範囲

src/compile/adapter/resolve-filename.jsとloader.jsファイル。

🔥 重要度

攻撃者は任意のファイルを読み取ることができるため、高いリスクです。

🔧 修正方法

ディレクトリ外へのアクセスをチェックし、防ぐコードを追加する必要があります。

🛡️ 暫定回避

入力をサニタイズし、絶対パスを禁止することで一時的な対策を行う。

🔍 検知方法

テンプレート名が外部入力から影響を受けている個所を確認し、パスが予期しないディレクトリに解決されないか確認する。

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく