
Proof-of-conceptは、tar npmパッケージ(v7.5.3)におけるレースコンディションを実証するもので、並列展開中にファイルの衝突を引き起こし、データの破損や上書きにつながります。
CVE-2026-23950の概念実証 - tarパッケージにおける競合状態の脆弱性。
このリポジトリは、tar npmパッケージ(バージョン7.5.3)における競合状態の脆弱性を実証するもので、展開中にファイルの衝突を引き起こす可能性があります。この脆弱性は、collision_ssとcollision_ßが大文字と小文字を区別しない衝突により同じファイルとして扱われる可能性がある、Unicode正規化の差異を悪用します。
このエクスプロイトは、2つのファイルを含むtarアーカイブを作成します:
collision_ss - 1000個の'A'文字を含むcollision_ß - 1000個の'B'文字を含む並列処理(jobs: 8)を有効にして展開すると、競合状態によりこれらのファイルが衝突し、以下の結果を引き起こす可能性があります:
npm install
node index.js
競合状態が正常に悪用された場合:
[*] GOODと表示される脆弱性が発動しない場合:
[-] No collisionと表示されるこの脆弱性は、以下を引き起こす可能性があります:
利用可能になり次第、tarパッケージのパッチ適用済みバージョンに更新してください。
このコードは教育および研究目的のみで提供されています。このエクスプロイトを悪意のある目的で使用しないでください。