| タイトル | fastifyのfastify-staticにおけるパストラバーサルの脆弱性 |
|---|---|
| 概要 | @fastify/static バージョン8.0.0から9.1.0まででは、listオプションを使用してディレクトリリスティングが有効になっている場合にパストラバーサルが発生します。dirList.path()関数はpath.join()を利用して設定されたstaticルート外のディレクトリを解決しますが、包含チェックを行っていません。これにより、リモートの認証されていない攻撃者がNode.jsプロセスからアクセス可能な任意のディレクトリのリストを取得し、ディレクトリやファイル名を漏洩させる可能性があります。ただし、ファイルの内容は漏洩しません。この問題を修正するには@fastify/staticを9.1.1にアップグレードしてください。回避策として、プラグイン設定からlistオプションを削除してディレクトリリスティングを無効にすることを推奨します。 |
| 想定される影響 | 当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| 対策 | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年4月16日0:00 |
| 登録日 | 2026年4月27日11:19 |
| 最終更新日 | 2026年4月27日11:19 |
| CVSS3.0 : 警告 | |
| スコア | 5.3 |
|---|---|
| ベクター | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N |
| fastify |
| fastify-static 8.0.0 以上 9.1.1 未満 |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年04月27日] 掲載 |
2026年4月27日11:19 |
| 概要 | @fastify/static versions 8.0.0 through 9.1.0 allow path traversal when directory listing is enabled via the list option. The dirList.path() function resolves directories outside the configured static root using path.join() without a containment check. A remote unauthenticated attacker can obtain directory listings for arbitrary directories accessible to the Node.js process, disclosing directory and file names. File contents are not disclosed. Upgrade to @fastify/static 9.1.1 to fix this issue. As a workaround, disable directory listing by removing the list option from the plugin configuration. |
|---|---|
| 公表日 | 2026年4月16日23:16 |
| 登録日 | 2026年4月17日4:12 |
| 最終更新日 | 2026年4月24日4:31 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:fastify:fastify-static:*:*:*:*:*:*:*:* | 8.0.0 | 9.1.1 | |||