decode-uri-componentに入力処理の遅延で サービス拒否される脆弱性
概要
decode-uri-componentの0.5.1より前のバージョンには、不正な形式のパーセントエンコーディングを含む入力を処理すると、CPU負荷が二次関数的に増え、Node.jsのイベントループが止まる脆弱性があります。リクエストボディで大きな入力を送られると影響が大きくなるとされ、CVSS v4.0のスコアは8.2です。0.5.1以降の修正版に更新してください。
AI要約
外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。
decode-uri-componentの0.5.1より前のバージョンには、不正な形式のパーセントエンコーディングを含む入力を処理すると、CPU負荷が二次関数的に増え、Node.jsのイベントループが止まる脆弱性があります。リクエストボディで大きな入力を送られると影響が大きくなるとされ、CVSS v4.0のスコアは8.2です。0.5.1以降の修正版に更新してください。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| SamVerschueren | decode-uri-component | — | — |
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
decode-uri-component provides a more robust alternative to decodeURIComponent. Prior to 0.5.1, decodeUriComponent in index.js falls back to customDecodeURIComponent after native decoding throws, and the fallback collects every distinct percent-encoded run before performing a full-string regular-expression replacement for each entry. Malformed input containing many distinct runs can therefore make both the number of replacements and the scanned input length grow together, causing quadratic CPU consumption and blocking the Node.js event loop; request-body inputs can reach the demonstrated size, while ordinary URL header limits reduce the practical delay. This issue is fixed in version 0.5.1.
出典: CVE.org (CVE Program・cvelistV5) NVD