CVE-2026-32731
ApostropheCMSのImport-Export Gzip展開における任意ファイル書き込み(Zip Slip / パストラバーサル)
- 公開済み
- 2026/03/18
- 更新済み
- 2026/03/19
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/08/25
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H低 · 今後 30 日間
- パーセンタイル
- 36.9%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
ApostropheCMSは、オープンソースのコンテンツ管理フレームワークです。`@apostrophecms/import-export`のバージョン3.5.3より前では、`gzip.js`内の`extract()`関数が`fs.createWriteStream(path.join(exportPath, header.name))`を使用してファイル書き込みパスを構築します。`path.join()`は`../`などのトラバーサルセグメントを解決またはサニタイズしません。それらをそのまま連結するため、`../../evil.js`という名前のtarエントリは、意図した抽出ディレクトリの外側のパスに解決されます。書き込みストリームが開かれる前に、正規パスチェックは実行されません。これは教科書通りのZip Slip脆弱性です。Global Content Modify権限を付与されたユーザー(コンテンツ編集者やサイト管理者に日常的に割り当てられる役割)は、標準のCMSインポートUIを通じて細工された`.tar.gz`ファイルをアップロードし、Node.jsプロセスがホストファイルシステム上で到達可能な任意のパスに攻撃者が制御するコンテンツを書き込むことができます。`@apostrophecms/import-export`のバージョン3.5.3でこの問題は修正されています。
ソース
1CVE-2026-32731の概念実証エクスプロイト。脆弱性を実証し、セキュリティテストと検証のための動作するエクスプロイトを提供します。
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。