BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース 新たなGit Submoduleの脆弱性にパッチが当てられた

新たなGit Submoduleの脆弱性にパッチが当てられた

原文(投稿日:2018/10/10)へのリンク

Gitコミュニティは、cloneおよびsubmoduleコマンドに影響を及ぼすセキュリティ脆弱性を公開した。これは、脆弱性のあるマシンが悪意のあるリポジトリにアクセスした時、リモートコードの実行を可能にするというものだ。この脆弱性はMitreによってCVE–2018–17456にアサインされ、Git 2.19.1で修正された

悪意のあるリポジトリは、ダッシュから始まるURLを含む.gitmodulesをでっち上げることで、この脆弱性を引き起こすことができる。これはgit clone --recurse-submodulesgit submodule update --recursiveの両方に影響を与える。ダッシュから始まるURLはgit cloneもしくはgit submoduleサブプロセスに再帰的に渡され、URLをコマンドオプションとして解釈する。これはローカルマシン上で任意のコマンド実行を引き起こすことができる。この脆弱性はCVE–2017–1000117と似ている。これもダッシュから始まるssh URLをでっち上げ、gitが実行するsshサブプロセスにオプションとして解釈させ、オプションインジェクション攻撃を可能にするものだ。現在のところ、悪用は報告されていない。

また、私たちは時間をかけて、攻撃に使われていないか、GitHub上の全リポジトリをスキャンしました。実例が見つからなかったことを報告できて幸いです(現在はこれを検出するため、誰も追加できません)。

@joernchenによる脆弱性修正のPRにあるように、修正自体は非常に簡単だ。しかし、今回の発見は.gitmodulesを全体的にチェックする良い機会となり、その内部で見つかったパスとURLの両方のチェックを厳格にすることにつながった。

前述のように、この脆弱性の修正はGit 2.19.1に含まれている。加えて、2.14.5、2.15.3、2.16.5、2.17.2、2.18.1にバックポートされている。gitはGitHub DesktopやAtomなどのGitHubプロジェクトにも統合されているため、それらにもパッチが当てられている。したがって、これらもできるだけ早急にアップグレードした方がよいだろう。

 
 

Rate this Article

Adoption Stage
Style
 
 

この記事に星をつける

おすすめ度
スタイル

BT