JVNDB-2026-017418 | |
GitoxideLabsのgix-fsにおけるリンク解釈に関する脆弱性 | |
| 概要 | |
gitoxideはRustで書かれたgitの実装です。0.21.1より前のバージョンでは、悪意のあるツリーを作成することが可能であり、gitoxideでチェックアウトすると攻撃者が制御するシンボリックリンクをユーザーが書き込み権限を持つ任意の既存ディレクトリに書き込むことが可能でした。チェックアウト時にはすべてのシンボリックリンクのインデックスエントリが後回しにされ、通常のファイルの後に単一の共有gix_worktree::Stackを使って作成されます。内部的にはgix_fs::Stackが使用されています。gix_fs::Stack::make_relative_path_current()は検証済みのパスプレフィックスをキャッシュします。以前に処理されたリーフコンポーネントが次のパスの先頭コンポーネントと完全に一致すると、gix-fs/src/stack.rsのリーフからディレクトリへの遷移はdelegate.push_directory()のみを呼び出し、delegate.push()は呼び出しません。gix_worktree::stack::delegate::StackDelegateでは、stateメンバーがState::CreateDirectoryAndAttributesStackの場合、Attributes::push_directory()は属性(クローンの場合はODBから)を読み込むだけで他のチェックは行いません。ディスク上のsymlink_metadata()チェックと衝突時のunlinkはStackDelegate::push()内のcreate_leading_directory()の呼び出しに存在し、キャッシュされたプレフィックスではこれが回避されます。最終的なシンボリックリンクは標準のstd::os::unix::fs::symlinkで作成されており、親ディレクトリのシンボリックリンクをたどります。したがって、重複したシンボリックリンクおよびディレクトリエントリを含むツリーを提供することでこの脆弱性を悪用することが可能です。この脆弱性は0.21.1で修正されました。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 7.8 (重要) [その他]
| |
| 影響を受けるシステム | |
|
| |
GitoxideLabs | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/05/13 |
| 登録日 | 2026/06/03 |
| 最終更新日 | 2026/06/03 |



