30秒で判断
- 対応すべき人:
@fastify/http-proxyを使い、rewritePrefixで上流パスを書き換え(隠蔽)しているNode.jsアプリの運用者 - 対応不要な人:
@fastify/http-proxyを使っていない、または 11.6.0 以降を使用している - 確認コマンド:
npm ls @fastify/http-proxy
概要
@fastify/http-proxy に、プレフィックス書き換えをすり抜けて上流の意図しないパスへ到達できる脆弱性(CVSS 10.0)が報告されました。
Fastifyのルーターはルート照合のためにリクエストパスをURLデコードしますが、request.url はエンコードされた元の形を保持します。プレフィックス書き換え処理はデコード済みプレフィックスに対する単純な文字列置換で行われるため、プレフィックスの一部をURLエンコードしたリクエストは、ルートには一致する一方で書き換えをすり抜けます。結果として、エンコードされたままの生のパスが上流サーバへ転送され、上流がそれをデコードして応答することで、rewritePrefix で隠したはずの内部・管理用エンドポイントに攻撃者が到達できる可能性があります。
CVSSベクトル
| 指標 | 値 |
|---|---|
| Attack Vector | Network |
| Attack Complexity | Low |
| Privileges Required | None |
| User Interaction | None |
| Scope | Changed |
| CVSSスコア | 10.0 (Critical) |
影響を受けるソフトウェア
| 製品 | パッケージ | バージョン |
|---|---|---|
| @fastify/http-proxy | npm | 11.5.0 以前(11.5.0 を含む) |
修正バージョンと回避策
- 対策:
@fastify/http-proxy11.6.0 へアップデート - 回避策: なし(アップグレードが必要)
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
