CircleCIへの不正アクセスについてまとめてみた - piyolog

piyolog

piyokangoの備忘録です。セキュリティの出来事を中心にまとめています。このサイトはGoogle Analyticsを利用しています。

CircleCIへの不正アクセスについてまとめてみた

2023年1月4日、CircleCIはセキュリティインシデントが発生したことを公表し、利用者へ注意を呼びかけました。また1月13日には侵入経路を含む調査結果などをまとめたインシデントレポートを公表しました。ここでは関連する情報をまとめます。

CircleCIより流出したデータから利用者のサードパーティシステムに影響

  • CircleCIが不正アクセスを受け、同社のプラットフォーム上に保存された利用者のサードパーティシステム(Githubなど)の環境変数、キー、トークンを含む情報の一部が流出した。不正アクセスにより情報が流出したのはクラウドで提供されるCircleCIで、オンプレミス型のCircleCI Serverは影響を受けない。
  • 2023年1月13日公表時点で本件の影響を受け、利用者よりサードパーティシステムへの不正アクセスが生じたと報告を受けたケースは5件未満。但しCircleCIは不正アクセス発生後(2022年12月22日)に同社プラットフォーム上にシークレット情報を保存していた場合はサードパーティシステムが不正アクセスを受けていると想定した対応を講じるよう推奨している。
  • CircleCIでは本件を受けて利用者のサードパーティシステムへの不正アクセスの発生を直接把握する方法がないことから、同社が把握している不正アクセスに関するインディケーター情報を利用者が調査する際の情報として公開している。
ログ調査等の推奨期間 2022年12月16日~2023年1月5日
(マルウエア感染からシークレットのローテーション完了までの期間)

参考:
・2022年12月19日:不正アクセス発生日
・2022年12月22日:データ流出発生日
不正アクセス元IPアドレス ・178[.]249[.]214[.]10
・89[.]36[.]78[.]75
・89[.]36[.]78[.]109
・89[.]36[.]78[.]135
・178[.]249[.]214[.]25
・72[.]18[.]132[.]58
・188[.]68[.]229[.]52
・111[.]90[.]149[.]55
不正アクセス元のデータセンター及びVPNプロバイダー ・Datacamp Limited
・Globalaxs Quebec Noc
・Handy Networks, LLC
・Mullvad VPN
削除対象の悪性ファイル ・/private/tmp/.svx856.log
・/private/tmp/.ptslog
・PTX-Player.dmg*1
・PTX.app
遮断推奨ドメイン potrax[.]com
GitHub監視ログより確認すべきコマンド repo.download_zip

サービス利用者から報告を受け発覚

  • 当該インシデントの発端は2022年12月29日にCircleCIのサービス利用者からGithub OAuthの不審なアクティビティについて報告の受領だった。その後同社のセキュリティチームがGithubの協力を受け調査をしたところ第三者によって当該報告者のGithub OAuthトークンが侵害されていた事実が翌日判明した。
  • 因果関係は明らかになっていないが、2022年12月31日にSlackがセキュリティインシデントの発生を公表している。事象の内容がGithubのトークン窃取及びGithubリポジトリへの不正アクセスで、2022年12月29日に発覚したものであり、さらに原因がサードパーティベンダーの侵害が起因というものであった。

従業員のセッションcookieを窃取し本番環境へ不正アクセス

  • CircleCIのエンジニアのPCがマルウエアに感染しており、その結果セッションcookie(2要素認証が有効なSSOセッション)が窃取されていた。マルウエアの詳細(ハッシュ値等)は開示されていないが、同社のセキュリティソフトでは検知されないものであった。
  • さらに当該エンジニアは本番環境のアクセストークン作成の権限を保有していたことから、攻撃者は窃取した情報を使って遠隔から同社の本番環境(データベースやストア)の一部に不正アクセスを広げ、CircleCI利用者の環境変数、キー、トークンの窃取を試みた。
  • CircleCIで保管されている全てのデータは暗号化が行われていたが、実行中プロセスより暗号化キーを抽出し、暗号化されたデータへのアクセス(復号)が可能だったとみられる。
  • CircleCIは一人のエンジニアのPCが悪用されたことは事実としてあったものの、今回のセキュリティインシデントはシステムのエラーにより生じたものであり、全ての攻撃方法に対して複数の防御を講じることが組織としての責任であると説明。
CircleCIに対して行われた不正アクセスの流れ

今回 CircleCIが受けた攻撃と同様の手口はこれまでも度々報告されている。

利用者へのセキュリティベストプラクティスとビルド環境の安全性確保

CircleCIは今回の件を受けて、利用者に対しパイプラインのセキュリティを向上させる推奨方法として以下を案内している。

またビルド環境に対する安全性確保について以下の対策を講じたと説明をしている。

  • 今回使用されたマルウェアが示す特定の動作に対して、MDMおよびアンチウィルスソリューションによる検知とブロックの追加。
  • 本番環境へアクセス権限を保有する社員の最小化。
  • 本番環境へのアクセスを保持する従業員に対し追加の認証とコントロールを追加。(今回同様にセッション情報が窃取されても本番環境への不正なアクセスを防止可)
  • 今回確認した行動パターンに対し複数のトリガーと様々なサードパーティベンダーによる監視とアラートを実施。
  • 強化された継続的なレビューの実施。

関連タイムライン

日時 出来事
2022年12月16日 CircleCIのエンジニアのPCがマルウエアに感染しSSOセッションCookieが窃取される。
2022年12月19日 CircleCIの本番環境に対して不正アクセスが発生。攻撃者による予備調査が行われた可能性。
2022年12月22日 CircleCIの本番環境からデータの窃取が発生。
2022年12月29日 サービス利用者よりGithub OAuthの不審なアクティビティが発生したとの報告を受ける。
2022年12月30日 調査より当該利用者のGithub OAuthトークンが侵害されていたことが判明。
2022年12月31日 全ての利用者のGithubのOAuthトークンのローテーションを開始。
2023年1月4日 調査より影響範囲と侵入経路を特定。
同日 16時35分 セッション情報が流出したエンジニアの全てのアクセスを停止。
同日 18時30分 本番環境の運用に関わる極少数のグループのみにアクセスを制限。
同日 22時30分 影響を受けた可能性のあるすべての本番環境のローテーション完了。
同日 CircleCIがセキュリティインシデントの発生を公表し利用者へ注意喚起。
2023年1月5日 3時26分 すべてのプロジェクトAPIトークンを無効化。
同日 公表しているインシデント情報を更新。(ビルドが可能であること、シークレットローテーションのお願い)
2023年1月6日 5時 前日以前に作成されたすべてのパーソナルAPIトークンを無効化。
同日 6時40分 Atlassianと協力し利用者のBitbucketトークンをローテーションする作業を開始。
同日 10時15分 Bitbucketトークンのローテーションが完了。
同日 公表しているインシデント情報を更新。(トークン無効化等の対応方針の説明)
2023年1月7日 7時30分 GitHub OAuthトークンのローテーションが完了。
2023年1月7日18時30分 AWSと協力して、影響を受けた可能性のあるAWSトークンの利用者に対して通知開始。
同日 公表しているインシデント情報を更新。(Github OAuthローテーション進捗、その後完了の報告)
2023年1月10日 公表しているインシデント情報を更新。(シークレットローテーション方法の案内)
2023年1月12日 影響を受けたAWSトークンに関する通知が完了。
2023年1月10日 公表しているインシデント情報を更新。(影響対象者に対するAWSからの案内についての説明)
2023年1月13日 CircleCIがインシデントの調査結果を公表。

更新履歴

  • 2023年1月16日 AM 新規作成

*1:SHA256: 8913e38592228adc067d82f66c150d87004ec946e579d4a00c53b61444ff35bf