GitLab に深刻なアカウント乗っ取りの脆弱性:管理者に推奨される対策とは?

Critical GitLab vulnerability lets attackers take over accounts

2022/04/01 BleepingComputer — GitLab は、ハードコードされたパスワードを使用するリモートの攻撃者に、ユーザー・アカウントの乗っ取りを許してしまう、深刻な脆弱性に対処した。この脆弱性 CVE-2022-1162 は、GitLab Community Edition (CE) と Enterprise Edition (EE) の双方に影響をおよぼす。具体的に言うと、GitLab CE/EE で OmniAuth ベースで登録を行う際の、誤って設定された静的なパスワードに起因している。

木曜日に公開されたセキュリティ・アドバイザリで GitLab チームは「ハードコードされたパスワードは、GitLab CE/EE の Ver 14.7〜14.7.7/14.8〜14.8.5/14.9〜14.9.2 において、OmniAuth プロバイダー (OAuth/LDAP/SAML) を介して登録されたアカウントに存在し、攻撃者にアカウント乗っ取りを許す可能性がある」と説明している。

GitLab は、潜在的な攻撃の可能性をブロックするために、すべての GitLab インストールについて、最新バージョン (14.9.2/14.8.5/14.7.7) へと、直ちにアップグレードするようユーザーに促している

2日間に渡って提出されたコード・コミットは、ファイル lib / gitlab / password.rb が、GitLab により削除されたを示している。このファイルは、ハードコードされた脆弱なパスワードを、TEST_DEFAULT 定数に割り当てるために使用されていた

GitLab hardcoded password assignment
GitLab hardcoded password assignment code (BleepingComputer)

パスワードがリセットされる GitLab ユーザーがいた

また、GitLab は、CVE-2022-1162 の緩和策の一環として、限られた数の GitLab.com ユーザーの、パスワードをリセットしたことも付け加えている。また、このハードコード・パスワードのセキュリティ欠陥を利用した攻撃者により、アカウントが侵害されたという証拠は見つからなかったとも述べている。

GitLab チームは、「15:38 UTC の時点で、問題が生じる可能性のあるユーザーたちに対して。GitLab.com のパスワード・リセットを実行した。我々の調査では、ユーザーやアカウントが侵害された兆候はないが、ユーザーのセキュリティのために予防措置を取っている」と述べている。

パスワードがリセットされた Gitlab.com ユーザーの数について質問された GitLab 広報担当者は、BleepingComputer に対して、アドバイザリーで既に公開されている情報を共有し、「特定のユーザーセット」に対してのみリセットを行ったと述べた。

影響を受けるユーザー・アカウントを特定するスクリプト

GitLab によると、現時点において侵入されたユーザー・アカウントは発見されていないが、CVE-2022-1162 の影響を受ける可能性のあるユーザー・アカウントを、self-managed インスタンス管理者が特定するためのスクリプトを作成しているようだ。

このスクリプトを用いて、影響を受ける可能性のあるユーザー・アカウントを特定した後に、そのユーザーのパスワードをリセットすることが、管理者に対して推奨される。

GitLab によると、同社の DevOps プラットフォームは、66カ国の 10万以上の組織に使用されているため、3000万人以上の登録ユーザーが存在すると推定されている。

脆弱性 CVE-2022-1162 ですが、お隣のキュレーション・チームに確認したら、4月2日に報告されていて、CVSS 値は 9.1 とのことでした。また、GitLab ですが、Qiita では、「 GitHub にインスパイアされて作られた、Git リポジトリをホスティングをするソフトウェア」と紹介されています。以前は GitHub と比べると見劣りしていたが今は遜色ないとも記されていますが、依然として脆弱性は多いようです。