ニュース

バージョン管理システム「Git」に任意コード実行の脆弱性、修正版が公開

Windows環境には影響しないが、“WSL”“Cygwin”環境の場合は注意が必要

Microsoftの公式ブログ“Microsoft DevOps Blog”

 分散型バージョン管理システム「Git」の開発チームは10月5日、「Git」に任意コードの実行を許す脆弱性が存在することを明らかにした。修正を施した最新版v2.14.5、v2.15.3、v2.16.5、2.17.2、v2.18.1、v2.19.1がリリースされている。

 開発チームによると、旧バージョンの「Git」には“git clone --recurse-submodules”コマンドを実行する際、URLの有効性を十分にチェックせず、“-”から始まるURLをオプションと解釈してしまう欠陥がある(CVE-2018-17456)。最新版では、この脆弱性の修正に加え、「fsck」でチェックする機能が追加されているという。

 なお、Microsoftによると本脆弱性は「Visual Studio 2017」には影響しないとのこと。脆弱性を悪用にするには名前に“:”を含むファイルを作成する必要があるが、Windows環境ではそのようなファイル名が認められていないため、「Git for Windows」では攻撃が成立しない。「Visual Studio 2017」に含まれる「Git」は「Git for Windows」であるため、脆弱性の影響は受けない。

 また、以前のバージョンの「Visual Studio」や「Visual Studio for Mac」では“libgit2”が利用されているが、これも今回の脆弱性の影響を受けないため安全だ。

 ただし、“Windows Subsystem for Linux(WSL)”や“Cygwin”などの環境で「Git」を利用している場合は本脆弱性の影響を受ける。また、「Visual Studio Code」本体には「Git」が含まれていないものの、システムにインストールされているバージョンによっては影響を受ける可能性がある。念のため、最新バージョンへ更新しておくことをお勧めする。