Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Security Hubを有効化したけど見てない人に向けたDevSecOpsの実現方...

AWS Security Hubを有効化したけど見てない人に向けたDevSecOpsの実現方法 / #kayac_andpad_event

2023年12月4日に開催された「カヤック・アンドパッド 合同 プロポーザル供養会」の発表資料です。
CloudNative Days Tokyo 2023で落選したプロポーザルのポイントを、12分にギュッと絞って解説しました。

カヤック・アンドパッド 合同 プロポーザル供養会 - connpass
https://connpass.com/event/301666/

AWS Security Hubを「有効化したけど見てない」人に向けたDevSecOpsの実現方法 | CloudNative Days Tokyo 2023
https://event.cloudnativedays.jp/cndt2023/talks/1982

このプレゼンの技術的な詳細は、以下のブログ記事をご参照ください。

AWS Security Hubコントロールの有効無効をコード管理するのは予想のN倍大変だった話 - ANDPAD Tech Blog
https://tech.andpad.co.jp/entry/2023/09/26/100000

Masahiro Yoshizawa

December 04, 2023
Tweet

More Decks by Masahiro Yoshizawa

Other Decks in Technology

Transcript

  1. Copyright © 2023 ANDPAD Inc. All Rights Reserved. AWS Security

    Hubを 「有効化したけど見てない」人に向けた DevSecOpsの実現方法 株式会社アンドパッド 開発本部 SRE 吉澤 政洋 2023/12/04 カヤック・アンドパッド 合同 プロポーザル供養会
  2. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 自己紹介 •

    吉澤 政洋(@muziyoshiz) • 個人ブログ:https://muziyoshiz.hatenablog.com/ • 2023年3月にアンドパッド入社 • サービス運用監視の研究者、ソフトウェア開発者を 経験したのち、2017年8月からSRE • SRE Lounge、SRE NEXT(2020, 2022, 2023)コアスタッフ • ドキュメンテーションが得意 WEB+DB PRESS Vol.132に「コンテナ化実践ガイド」を寄稿 • 趣味はボルダリング 2
  3. Copyright © 2023 ANDPAD Inc. All Rights Reserved. この発表でお伝えしたいこと •

    私達はなぜSecurity Hubを活用しようとしたか? • Security Hubの活用はなぜ難しいのか? • Security Hubを活用するためにどのようなシステム・運用を構築したか? • Security Hubを導入した結果どうなったか? 技術的な詳細は時間の関係で省略します! 以下のブログ記事をご覧ください🙏 3 AWS Security Hubコントロールの有効無効を コード管理するのは予想のN倍大変だった話 https://tech.andpad.co.jp/entry/2023/09/26/100000
  4. Copyright © 2023 ANDPAD Inc. All Rights Reserved. Security Hubとは

    • ビルトインされたセキュリティのベストプラクティスに基づき、AWS上の リソースのチェック、およびチェック結果の通知機能を持つサービス ◦ ベストプラクティス集 → 「セキュリティ基準」 ◦ 個々のベストプラクティス → 「コントロール」 ◦ ベストプラクティスに従っているかどうかのチェック結果→「検出結果」 • AWSの他サービス(Amazon GuardDutyなど)や他社サービスによる チェック結果を集約する機能も持つ ◦ 本発表では、この「ハブ」としての機能は対象外とする 5
  5. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 私達はなぜSecurity Hubを活用しようとしたか?

    • アンドパッドでは、SREチームだけでなく、開発チームや、Data Platformチー ムも、TerraformなどのIaCツールを活用してAWS上のリソースを管理している • これらのリソースの設定がセキュリティ的に問題ないかを確認するためには、 これまでは定期的なチェックや棚卸しが必要だった • ベストプラクティスに違反するリソースをSecurity HubからSlackに通知するこ とで、日常的なチェックが可能になり、セキュリティリスクを低減できると考 えた 6
  6. Copyright © 2023 ANDPAD Inc. All Rights Reserved. Security Hubの導入イメージ(初期)

    • 導入初期はSREが検出結果を 確認し、リソースの修正や、 不要な通知の抑制を行う 7
  7. Copyright © 2023 ANDPAD Inc. All Rights Reserved. Security Hubの導入イメージ(最終目標)

    • 開発チームにも検出結果を確認し てもらう(特にリソースの作成・ 更新直後) • 誰も対応していない通知があった 場合は、SREが関係するチームを 探して連絡する 8
  8. Copyright © 2023 ANDPAD Inc. All Rights Reserved. メリット •

    セキュリティリスクの早期検知・解決 ◦ リソースの作成・更新から数分〜数時間以内にSlackへ通知 • ベストプラクティスの周知によるセキュリティリスクの低減 ◦ リソースの作成・更新の直後にフィードバックを受けることで、開発チームにもAWS のベストプラクティスが徐々に周知される 9
  9. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 開発チームからの懸念 •

    セキュリティリスクの解決のための工数が増える ◦ ベストプラクティスが周知されることで、最初からベストプラクティスに沿った設定 が行われることにより、この工数は徐々に減っていく見込み • Slackに通知された通知内容を確認するための工数が増える ◦ 徐々にベストプラクティスが周知されていくことで、通知の件数も減る見込み ◦ 冗長と判断された通知については、SREチームで設定変更して抑制し、通知数を最低 限に抑える 10
  10. Copyright © 2023 ANDPAD Inc. All Rights Reserved. Security Hubの活用はなぜ難しいのか?

    • わかりにくい仕様 • 大量に発生する検出結果 12
  11. Copyright © 2023 ANDPAD Inc. All Rights Reserved. わかりにくい仕様 •

    ベストプラクティスを表す概念 ◦ セキュリティ基準 ◦ コントロール、セキュリティコントロール • リソースのチェック結果を表す概念 ◦ 検出結果、コンプライアンスステータス、ワークフローステータス • その他の設定 ◦ 管理者アカウント(※AWS Organizationsの管理アカウントとは別の概念) ◦ クロスリージョン集約 13
  12. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 仕様理解のために大事なポイント(1) •

    Security Hubの設定はアカウントおよびリージョンごとに独立している ◦ セキュリティ基準やコントロールの有効化・無効化はそれぞれで必要 ◦ AWSマネジメントコンソールで、複数アカウント・複数リージョンの検出結果を一覧 したい場合は、管理者アカウントとクロスリージョン集約の設定が必要 14
  13. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 仕様理解のために大事なポイント(2) •

    コントロールはセキュリティ基準に属している ◦ 「統合コントロール結果」機能(2023年2月リリース)を有効にしても、 このデータ構造は同じ ◦ 参考情報を読む際は、この機能のリリースの前後どちらの情報なのかに注意 15 AWS 基礎セキュリティの ベストプラクティス v1.0.0 CIS AWS Foundations Benchmark v1.4.0 PCI DSS v3.2.1 セキュリティ基準 コントロール CloudTrail.2 3.7 PCI.CloudTrail.2 例:コントロール「CloudTrail は保管時の暗号化を有効にする必要があります」 「統合コントロール結果」は これらを単一のコントロール CloudTrail.2に見せかける (データ構造は変わらない)
  14. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 大量に発生する検出結果 •

    コントロールの数が多い ◦ AWS 基礎セキュリティのベストプラクティス v1.0.0:202件(2023-12-04現在) • 見る必要のない検出結果の抑制方法が、場合によって異なる ◦ 一度作られたリソースが変化しない場合: ▪ 検出結果のワークフローステータスを抑制済み(SUPPRESSED)に変更 ◦ 同じARNでリソースが頻繁に削除・再作成される場合: ▪ オートメーションでワークフローステータスを抑制済みに変更 ◦ リソースが頻繁に削除・再作成され、その都度ARNが変わる場合: ▪ コントロールを無効化 16
  15. Copyright © 2023 ANDPAD Inc. All Rights Reserved. システム構成(検出結果の通知) 19

    新たな検出結果の発生 (ワークフローステータス :NEW) ワークフローステータスが NEWの検出結果をSlackに 通知
  16. Copyright © 2023 ANDPAD Inc. All Rights Reserved. システム構成(1回のみの通知の実現) 21

    新たな検出結果の発生 (ワークフローステータス :NEW) 検出結果のワークフロー ステータスをNOTIFIEDに 更新
  17. Copyright © 2023 ANDPAD Inc. All Rights Reserved. その他の設定 •

    クロスリージョン集約により、検出結果を東京リージョンに集約 ◦ 結果を見やすく • 開発環境のAWSアカウントと、本番環境のAWSアカウントで別々に検出結果を 集約 ◦ 通知先のSlackチャンネルも別にすることで、緊急度・重要度を判断可能に 22
  18. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 運用 •

    スクリプトを自作し、コントロールの有効無効をGitHub上のファイルで管理 • 特定のコントロールを無効化する場合は、その理由を専用の台帳に記録 ◦ SREチームとして、他の手段でセキュリティ要件が満たされていると判断した場合 ◦ 特定のリージョンのみ有効化すれば、セキュリティ要件は十分満たされていると判断 した場合 ◦ コストとの兼ね合いなど、合理的な理由のある場合 • 特定のリソースの検出結果を抑制する場合(ワークフローステータスを SUPPRESEDに設定する場合)は、その理由を専用の台帳に記録 23
  19. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 開発チームへの展開 •

    幹部の参加する会議での承認を経て、開発チーム全員が参加する会議で周知 ◦ SREから設定変更を依頼する場合があることを納得してもらうことがまず重要 ◦ すべての開発チームが自発的に検出結果を確認・対応できるようになるまでには、ま だ時間がかかる認識 • Security Hubでの通知が多いリソースについては、今後SREチームがガイドライ ンを作成 24
  20. Copyright © 2023 ANDPAD Inc. All Rights Reserved. メリット •

    セキュリティリスクの早期検知・解決 ◦ 思わぬ設定漏れに、開発環境で、開発の早い段階で気づけるようになった ◦ Security Hubの検出結果をもとに、すでに開発チームでいくつかのリソースの設定が 改善されている • ベストプラクティスの周知によるセキュリティリスクの低減 ◦ こちらの効果はまだ実感できていない。長期的に取り組みたい 26
  21. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 今後の課題 •

    Slackに届く無駄な通知の更なる削減 ◦ コントロールの有効化・無効化の見直しは日々発生 ◦ リソースの削除時に、その過程で通知が発生 ◦ AWSが新しいコントロールを追加した際に、大量の通知が発生 ▪ 「新しいコントロールを自動的に有効にする(Auto-enable new controls in enabled standards)」はオフにしたほうがよい • Slackに通知されるメッセージの改善 ◦ Security Hubが標準で提供するメッセージには、検出結果の内容を理解するための情 報(コントロールIDや、解説ページのURLなど)が不足している ◦ Security Hubが標準で提供するメッセージにはARNが含まれるが、そこからリソース を特定するのが難しい場合がある ▪ 理想的には、リソースに付与されたタグから、そのリソースに関連する開発 チームを自動的に特定したい 27
  22. Copyright © 2023 ANDPAD Inc. All Rights Reserved. まとめ •

    AWS Security Hubを活用し、セキュリティリスクを早期検知・解決するための システムおよび運用を構築した • Security Hubのチェック結果に基づいて、SREだけでなく、開発チームも、 ベストプラクティスに従ってリソースを作成・設定変更できるようになった • 開発チームが、SREチームの支援なしにSecurity Hubのチェック結果に対応でき るようになるにはまだハードルがあり、今後の課題である 29
  23. Copyright © 2023 ANDPAD Inc. All Rights Reserved. 技術的な詳細はこちらをご覧ください AWS

    Security Hubコントロールの有効無効をコード管理するのは 予想のN倍大変だった話 https://tech.andpad.co.jp/entry/2023/09/26/100000 (andpad security hub で検索するとヒットします) 30
  24. Copyright © 2023 ANDPAD Inc. All Rights Reserved. We are

    hiring! 31 https://engineer.andpad.co.jp/ 技術スタックや募集ポジションを 掲載してます!