Security Affairsは1月24日(現地時間)、「5379 GitLab servers vulnerable to zero-click account takeover attacks」において、オンラインに公開されているGitLabサーバのうち5,379台が緊急の脆弱性(CVE-2023-7028)を対策していないとして警告した。

この脆弱性は悪用されるとユーザーの関与なしにパスワードがリセットされ、アカウントが乗っ取られる危険性がある。この脆弱性の影響を受けるGitLabバージョンの一覧および脆弱性の詳細は、「GitLabに緊急の脆弱性、更新を | TECH+(テックプラス)」から確認することができる。

  • 5379 GitLab servers vulnerable to zero-click account takeover attacks

    5379 GitLab servers vulnerable to zero-click account takeover attacks

脆弱性の影響を確認する手順

Security Affairsによると、GitLabはこの脆弱性を使用した攻撃を確認していないという。しかしながら、GitLabを運用している管理者に対し、次の手順に従って脆弱性を悪用した形跡がないかを確認することが推奨されている。

  • ログファイル「gitlab-rails/production_json.log」において、「/users/password」へのHTTPリクエストのうち、「"params.value.email"」に複数のメールアドレスを含むJSON配列が記録されていないか確認する(参考:「production_json.log - Log system | GitLab」)
  • ログファイル「gitlab-rails/audit_json.log」において、「"meta.caller.id":"PasswordsController#create"」を含むオブジェクトの「"target_details"」に複数のメールアドレスを含むJSON配列が記録されていないか確認する(参考:「audit_json.log - Log system | GitLab」)

脆弱なサーバ

非営利のセキュリティ組織「ShadowServer」の研究者は、2024年1月23日の時点においてオンラインで公開されているGitLabサーバのうち5,379台がこの脆弱性を対策していないと報告している。脆弱なサーバは米国(964台)が最も多く、これにドイツ(730台)、ロシア(721台)が続いている。また、日本国内においても149台が脆弱としている。

  • ShadowServerがXに投稿した脆弱なサーバの分布

    ShadowServerがXに投稿した脆弱なサーバの分布

対策

GitLabは脆弱性を修正するため、次の手順に従って速やかにアップデートすることを推奨している。

  • GitLabは一度に最新版にアップデートすることはできない。「Upgrade paths」にて公開されている情報から中継する必要のあるバージョンを確認する
  • バージョンごとのアップデート手順「Version-specific upgrading instructions」に従ってアップデートを実施する

また、今回指摘された脆弱性(CVE-2023-7028)によるアカウント乗っ取りは、二要素認証(2FA: Two-Factor Authentication)を有効にすることで侵害を回避できる可能性がある。攻撃からアカウントを保護するために、この追加の対策を実施することが望まれている。