認証情報漏洩後のクラウド乗っ取りを防ぐ
継続的インテグレーションと継続的デリバリー/デプロイメント(CI/CD)ツールは、もはやどんなスタートアップにとっても贅沢品ではない。最も勢いのあるスタートアップは、大きな、野心的なアイデアを出荷するためには、小さな、漸進的でレビューしやすい変更を出荷することが最も効果的であることを学んだ。最も生産性の高いスタートアップは、1日に40回出荷している。なかには、1日に80回も出荷する企業もある。これは、CircleCI、GitHub Actions、GitLabのパイプラインのようなCI/CDツールを活用することで、安全に行うことができる。

CI/CDはハッカーを惹きつける
最近では、多くの新興企業や大企業がこうしたツールを利用している。クラウドにコードをデプロイさせるためには、特別なAPIシークレットをツールの中に保存しなければならない。そのため、CI/CDツールはハッカーにとって価値の高いターゲットとなる。実際、これらのツールは常にハッキングされてきた歴史がある。
これらのインシデントは、最近公表された情報漏えいのほんの一部である:
CircleCI breach retrospective w/ IOC and TTP
- ライアン・マクギーハン(@Magoo) 2023年1月14日
Quick TLDR:
1. eng laptop上のマルウェア
2.リモートセッション用のアクティブなSSOセッションを盗んだ
4.本番用アクセストークンを生成
5.顧客のENV、トークン、キーの流出。
6.CircleCI暗号化キーも流出https://t.co/25x9t5NLG6。
- コードシップ"重大なセキュリティ通知:GitHub breach" (2020)
- GitHub「オープンソースプロジェクトにおけるGitHubアクションの悪用」(2022年)
- GitLab:「Oktaの情報漏えいの可能性に対応するために取った措置」(2022年)
- Jenkins:「Jenkinsの重大なバグが発見された」(2020年)
お分かりのように、それはかなり定期的に起きていることだ。あなたはどのように守っていますか?
このような侵害からクラウドインフラを守るにはどうすればいいのか?
これらのCI/CDプラットフォームがハッキングされた場合、通常は侵害を公表する。それは、侵害に気づいてから1日以内に起こる傾向がある。しかし、情報漏洩が発覚するまでに数週間活動することもある。残念なことに、その時間はプラットフォームのすべての顧客へのアクセスをエスカレートさせるために使われる可能性がある。
Aikido CI/CDの守備範囲を特定するのに役立つ
幸いなことに、選択したプラットフォームがハッキングされても安全でいられるようにする方法がいくつかある。Aikido SecurityのAWSとの新しい統合は、あなたのクラウドが以下の対策のいずれかを積極的に講じていない場合に警告を発します。Aikidoの無料トライアルアカウントを使って、お使いのクラウドにこれらのスレッドに対する防御策がすでにあるかどうかを確認してください。
CI/CDを守るために取るべきステップ:
- CI/CDプラットフォームにIAMロールを割り当てるときは、IPで制限されていることを確認する。ほとんどのCI/CDツールには、特定のIPアドレスからのトラフィックのみを送信するオプションがある。このオプションにより、盗まれたAPIトークンはCI/CDインフラストラクチャの外では使えなくなる。ハッカーは自分のサーバーでAPIトークンを使うことができないので、サーバーの動作が大幅に遅くなり、完全にブロックされる可能性もある。
- CI/CDプラットフォーム用の認証情報を作成する際は、最小限のアクセスになるように時間をかけること。管理者権限を与えないこと。
- クラウドを複数のアカウントに分割しましょう。こうすることで、情報漏えいの影響を最小限に抑えることができます。例えば、ステージング環境の認証情報が侵害されても、本番環境が侵害されることはありません。
- シングルサインオン(SSO)または多要素認証(MFA)を使用する。当然のことです。

悲しいことに(しかし現実的に)、CI/CDはいつかハッキングされると考えるべきだ。だから、その時が来たら、すべてのデプロイトメントトークンを早急にローテーションするようにしてほしい。