CVE-2021-32804
任意のファイル作成・上書き(絶対パスサニタイズ不備による)
- 公開済み
- 2021/08/03
- 更新済み
- 2024/08/03
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/08/05
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N中 · 今後 30 日間
- パーセンタイル
- 96.6%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
npmパッケージ「tar」(別名node-tar)のバージョン6.1.1、5.0.6、4.4.14、3.3.2より前のバージョンには、絶対パスのサニタイズ処理が不十分なため、任意のファイル作成・上書きの脆弱性があります。node-tarは、`preservePaths`フラグが`true`に設定されていない場合に、絶対パスを相対パスに変換することで、tarファイルからの絶対パスの抽出を防ぐことを目的としています。これは、tarファイルに含まれる絶対ファイルパスから絶対パスのルート部分を取り除くことで実現されます。例えば、`/home/user/.bashrc`は`home/user/.bashrc`に変換されます。このロジックは、ファイルパスに`////home/user/.bashrc`のような繰り返しのパスルートが含まれる場合に不十分でした。`node-tar`は、そのようなパスから単一のパスルートのみを取り除いていました。繰り返しのパスルートを持つ絶対ファイルパスが与えられた場合、結果のパス(例:`///home/user/.bashrc`)は依然として絶対パスとして解決されるため、任意のファイル作成および上書きが可能になりました。この問題は、リリース3.2.2、4.4.14、5.0.6、6.1.1で対処されました。ユーザーはアップグレードせずに、`entry.path`をサニタイズするカスタム`onentry`メソッド、または絶対パスを持つエントリを削除する`filter`メソッドを作成することで、この脆弱性を回避できます。詳細については、参照されているGitHub Advisoryを参照してください。後期バージョンのtarで同様のバグを修正するCVE-2021-32803に注意してください。
ソース
1CVE-2021-32804(npmに影響するnode-tarのパストラバーサル脆弱性)のためのDockerベースの再現環境と、ステップバイステップの悪用スクリプト。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。