マイクロソフト、GitHub、GitLab、BitBucketの4社は、人気のGitソフトウェアクライアント「GitKraken」に脆弱性が発見されたことを受け、SSHキーの大量失効措置を開始したと発表しました

9月下旬、GitKrakenチームは、2021年5月12日から2021年9月27日の間にリリースされたバージョン7.6.x、7.7.x、8.0.0に実装されていたオープンソースのSSH鍵生成ライブラリに欠陥があることを発見しました。
この欠陥により、弱い形式の公開SSH鍵が作成されていました。脆弱な鍵はエントロピーが低く作成されるため、鍵が複製される確率が高くなります。
GitKrakenのエンジニアリングチームは、バージョン8.0.1の時点で、従来のSSH鍵生成ライブラリを新しいものに置き換えることで、この問題を修正しました。注:バージョン8.0.1以降にアップグレードしたユーザーは、GitKrakenで生成された鍵が影響を受けるバージョンで生成されたものであれば、引き続き鍵を交換する必要があります。
また、Gitホスティングサービスを提供しているGitHub、Bitbucket、GitLab、およびAzure DevOpsにも連絡を取り、この問題について注意を促しました。これらのプロバイダーと緊密に連携し、使用されていた脆弱な公開鍵を無効にしました。可能な限り、影響を受けた鍵は、Gitホスティングサービスプロバイダーによって永久的にブロックされています。
今回の大量失効は、GitKrakenを開発したアリゾナ州のソフトウェア企業Axosoft社の要請によるもので、同社は自社のソフトウェアにセキュリティ上の欠陥があることを発見した企業でもあります。
Axosoft社はブログ記事で、GitKrakenアプリのバージョン7.6.x、7.7.x、8.0.0では、「keypair」というライブラリを使用してSSHキーを生成し、開発者がGitKrakenアプリをAzure DevOps、GitHub、GitLab、BitBucketなどのリモートGitソースコードホスティングサーバーのアカウントに接続できるようにしていたと説明しています。
しかし、Axosoft社によると、このライブラリの古いバージョンではエントロピーの低いRSA鍵が生成されるため、攻撃者は特定の条件下でこのライブラリを使用して、重複したSSH鍵を生成することができるとのことです。
攻撃者は、この鍵を使ってユーザーのアカウントにアクセスし、プロプライエタリなソースコードを盗むことができるとのことです。
Axosoft社は、この問題を発見してすぐにGitKrakenアプリ内のキーペアライブラリを交換し、バージョン8.0.1をリリースして、4社に通知したと述べています。
Axosoft社のブログ投稿後まもなく、Azure DevOps、GitHub、GitLab、AtlassianのBitBucketのセキュリティチームは、ソースコードの同期にGitKrakenアプリが使用されていたアカウントに接続されていたすべてのSSHキーの失効を開始しました。
4社は現在、別のGitクライアントを使用するか、更新されたGitKrakenアプリを使用して新しいSSHキーを生成するようユーザーに求めています。
Axosoft社と4社は、今のところ攻撃者がこのバグを利用してアカウントを侵害したという証拠は見つかっていないと述べています。
また、GitHubは、Gitクライアントに限らず、他のソフトウェアアプリケーションの開発者に対しても、脆弱なキーペアライブラリを使用していないかどうかを確認し、適宜コードを更新するよう求めています。
コメント