Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
BLEAでAWSアカウントのセキュリティレベルを向上させよう
Search
こーへい
February 03, 2025
Technology
0
170
BLEAでAWSアカウントのセキュリティレベルを向上させよう
こーへい
February 03, 2025
Tweet
Share
More Decks by こーへい
See All by こーへい
コンテナセキュリティ入門ウェビナー ~ECS on Fargate構成に必要なセキュリティ対策を知ろう~
koheiyoshikawa
0
1.2k
〜AWS初心者向け〜 ベストプラクティスから学ぶ 「AWSセキュリティの高め方」
koheiyoshikawa
1
1.3k
AWSアカウントセキュリティ(セキュアアカウント) 入門セミナー ~面倒な設定はクラスメソッドにお任せ!~
koheiyoshikawa
0
3.9k
ECSの仕組み解説~ECSをチャーハンセットに例えてみた~ #devio2023
koheiyoshikawa
0
3.6k
Other Decks in Technology
See All in Technology
まだ間に合う! エンジニアのための生成AIアプリ開発入門 on AWS
minorun365
PRO
4
490
Amazon Location Serviceを使ってラーメンマップを作る
ryder472
2
180
AWSエンジニアに捧ぐLangChainの歩き方
tsukuboshi
2
450
Googleマップ/Earthが一般化した 地図タイルのイマ
mapconcierge4agu
1
170
Classmethod AI Talks(CATs) #15 司会進行スライド(2025.02.06) / classmethod-ai-talks-aka-cats_moderator-slides_vol15_2025-02-06
shinyaa31
0
130
デザインから逆算して難易度を見積もるための観点
fumiyasac0921
0
110
Creative Pair
kawaguti
PRO
1
150
AIプロダクト開発から得られた知見 - 2025年1月版
takaakikakei
0
160
依存関係があるコンポーネントは Barrel ファイルでまとめよう
azukiazusa1
2
460
[JAWS-UG栃木]地方だからできたクラウドネイティブ事例大公開! / jawsug_tochigi_tachibana
biatunky
0
210
【弥生】20250130_AWSマルチアカウント運用セミナー登壇資料
yayoi_dd
1
160
ソフトウェア開発現代史:製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
16
5.9k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Unsuck your backbone
ammeep
669
57k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Six Lessons from altMBA
skipperchong
27
3.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
128
19k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
A Philosophy of Restraint
colly
203
16k
GitHub's CSS Performance
jonrohan
1030
460k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Designing Experiences People Love
moore
139
23k
Transcript
BLEAでAWSアカウント のセキュリティレベル を向上させよう 2024.7.11 AWS事業本部 吉川晃平
⾃⼰紹介 2
⾃⼰紹介 3 • 吉川 晃平 • クラスメソッド株式会社 • AWS事業本部コンサルティング部 ◦
ソリューションアーキテクト • この一年で特に関わったAWSサービス ◦ AWS Security Hub https://dev.classmethod.jp/author/yoshikawa-kohei/
⾃⼰紹介 4 • 最近嬉しかったこと ◦ 自転車で琵琶湖一周したこと • 最近の興味 ◦ 麻雀
◦ 担々麺 https://dev.classmethod.jp/author/yoshikawa-kohei/
セッション概要 5
ターゲット 6 AWSアカウントのセキュリティレベルを上げたい、興味のある方
セッションで説明すること 7 • セッションで説明すること ◦ 前半パート ▪ AWSアカウントに発生しうる脅威例の紹介 ▪ AWSセキュリティサービスの紹介
◦ 後半パート ▪ Baseline Environment on AWS(BLEA)の概要や中身の説明 ▪ クラスメソッドが提供する「セキュアアカウント」の概要説明 ▪ BLEAとセキュアアカウントの比較 • セッションでお話ししないこと ◦ CDK自体の話
セッション終了時点の⽬標 8 今回のセッションに参加された方がAWSアカウントのセキュリティレベル を効率よく向上させる方法がわかる状態
皆さんはAWSアカウントの セキュリティ対策してますか? 9
セキュリティ対策例 10 • AWSアカウントの操作記録 • AWSリソースの記録 • アカウント内に存在する非推奨な設定の検知 • アカウント内で発生した危険な挙動の検知
脅威例の紹介 11
不正ログインからの コインマイニング 12
脅威例 13
攻撃者による不正ログイン 14
攻撃者による不正ログイン対策 15 • AWSアカウントの操作記録 • AWSリソースの記録 • アカウント内に存在する非推奨な設定の検知 • アカウント内で発生した危険な挙動の検知
攻撃者による不正ログイン対策 16
攻撃者によるコインマイニング 17
攻撃者によるコインマイニング対策 18 • AWSアカウントの操作記録 • AWSリソースの記録 • アカウント内に存在する非推奨な設定の検知 • アカウント内で発生した危険な挙動の検知
攻撃者によるコインマイニング対策 19
AWSサービスの紹介 20
代表的なAWSセキュリティサービス 21 • AWSアカウントの操作記録→AWS CloudTrail • AWSリソースの記録→AWS Config • アカウント内に存在する非推奨な設定の検知→AWS
Security hub • アカウント内で発生した危険な挙動の検知→Amazon GuardDuty
CloudTrail 22
CloudTrailとは 23 • アカウント内の操作(API実行)を記録するサービス • AWS内の操作の多くはAPIを通して実行される ◦ EC2インスタンスの起動 ◦ アクセスキーを作成
◦ その他AWSサービスに関する操作のほとんど
CloudTrailは AWSアカウントの 〇〇〇実⾏を記録する 24
CloudTrailは AWSアカウントの API実⾏を記録する 25
AWSにおけるAPIとは 26 AWSにおけるAPIの理解は絶対してほしい
AWSにおけるAPIとは 27 普段ユーザーが意識するのは赤枠の部分
AWSにおけるAPIとは 28
AWSにおけるAPIとは 29 ユーザーの操作はマネコンでもCLIの場合でも同じAPIにて実行される
AWSにおけるAPIとは 30
AWSにおけるAPIとは 31 EC2インスタンスを起動をした場合、マネコンやCLI、SDKの操作手段を問 わず、API「RunInstance」が実行される
AWSにおけるAPIとは 32 AWSアカウント内の操作確認は、API実行の記録が重要
Config 33
Configとは 34 各種AWSリソースを記録するサービス
Configとは 35 タイムラインにてConfigの記録履歴を確認することが可能
Configとは 36 • どういう時に役に立つのか ◦ セキュリティ監査 ◦ トラブルシューティングなど • 特定時点におけるAWSリソースのパラメータを確認したい場合に有効
◦ 同時に実行されたAPIをCloudTrailで確認することが多い
参考ブログ 37
Security Hub 38
Security Hubとは 39 • CSPM(Cloud Security Posture Management)に相当するサービスで 「AWSリソースのセキュリティ設定がベストプラクティスから逸脱し ていないか」を自動でチェック
◦ S3バケットが公開設定になっていないか ◦ アクセスログを有効化しているか ◦ セキュリティグループにて不要なポートを開けていないか ◦ GuardDutyが有効化されているか ◦ etc
Security Hubとは 40 AWSアカウント内のセキュリティレベルをスコアで表示
Security Hubとは 41 • 自動チェックは各ルール(コントロール)に沿って実施 • GuardDuty.1は、GuardDutyの有効化を監視するコントロール
Security Hubとは 42 • コントロール例 ◦ [GuardDuty.1] GuardDuty を有効にする必要があります ◦
[Config.1] AWS Config を有効にする必要があります ◦ [CloudTrail.1] CloudTrail を有効にして、少なくとも 1 つのマル チリージョンの追跡で、読み取りと書き込みの管理イベントを含め た設定をする必要があります ◦ [EC2.7] EBS のデフォルト暗号化を有効にする必要があります ◦ [IAM.4] IAM ルートユーザーアクセスキーが存在してはいけませ んなど
参考ブログ 43
GuardDuty 44
GuardDutyとは 45 • AWSアカウント内の各情報(ログ等)を分析し、危険な挙動を検知する サービス ◦ コインマイニング ◦ AWSアカウントへの不正アクセス ◦
C&Cサーバーとの接続など
GuardDutyとは 46 • Security HubとGuardDutyは対になるようなサービス(個人的見解) ◦ Security Hub:予防的統制 ▪ 危険な設定を監視し、脅威の発生を未然に防ぐ
◦ GuardDuty:発見的統制 ▪ 発生した脅威をすぐに検知し、被害拡大を防ぐ ◦ 参考 ▪ https://aws.amazon.com/jp/builders-flash/202302/conti nuous-security/
予防的統制と発⾒的統制の関係 47
予防的統制と発⾒的統制の関係 48
予防的統制と発⾒的統制の関係 49
GuardDutyとは 50 • GuardDutyの検知ルールはドキュメントに網羅 ◦ https://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/gu ardduty_finding-types-active.html • テスト検知を出す方法もあるので是非やっていただきたい ◦
実際に検知してみることでGuardDutyの理解が進む
参考ブログ 51
ここで発⽣する課題 52
ここが課題 53 各セキュリティサービスの設計とAWSアカウントへの適用が大変
BLEAの紹介 54
BLEAとは 55 • AWSが公式に開発しているオープンソースのCDKサンプルテンプレー ト集 ◦ https://github.com/aws-samples/baseline-environment-on-a ws/blob/main/README_ja.md • Baseline
Environment on AWSの頭文字をとったもの ◦ その名の通り、AWSアカウント環境のベースライン(基本的な設定) を整えてくれる
BLEAとは 56 • 「CloudTrail」や「Security Hub」などシステムに依らず必要とされ るセキュリティサービスがCDKテンプレートで提供 • テンプレートのカスタマイズも簡単 ◦ 0から設計しなくて良く、柔軟性が高い
• CDKテンプレートをデプロイするだけでAWSアカウントに反映 ◦ 自動化による負担軽減 ◦ 各AWSアカウントにテンプレートを適用させることで組織全体の統 制(=ガバナンス)を効かせられるのも良い
BLEAとは 57
BLEAの全体概要図(スタンドアロン版) 58 引用:https://qiita.com/Ak_ki/items/14b588160c83c8e6559f
IAMグループとロール 59 • システム開発における役割ごとのIAMグループとロールを用意 ◦ SysAdmin ◦ IAM Admin ◦
InstanceOps ◦ readOnlyAdmin
IAMグループとロール 60 • 役割に応じた雛形が用意されている • そのまま利用するというよりは、これをベースにカスタマイズして利用 すると良さそう
各種セキュリティサービス 61 システムに依らず必須とされているセキュリティサービス群
参考ブログ 62
各種セキュリティサービス 63 • イベント通知例 ◦ GuardDuty:重大性がMedium以上 ◦ Security Hub:重大性が「CRITICAL」「HIGH」 ◦
Health:アカウント固有のイベント ◦ CloudTrail:特定のイベント ◦ Config:特定の条件下
CloudTrail 64 BLEAではS3とCloudWatchに保存する構成
CloudTrail 65 • EventBridgeにて特定イベント時に通知 ◦ CloudTrailの設定変更(停止、削除、更新) ◦ セキュリティグループの作成、更新、削除イベント ◦ ネットワークACLの作成、更新、削除イベント
CloudTrail 66 • CloudWatchにもログを流し、特定イベントにて発報 ◦ ルートユーザーによるアクティビティ ◦ アクセスキーの作成 ◦ 5回以上の不正なアクセス試行
◦ IAMポリシーの変更
Config 67 BLEAではS3に保存する構成
Config 68 • 適合パック「AWS Control Tower Detective Guardrails」により特定 のConfigルール集が追加される •
デフォルトセキュリティグループのルールが存在する場合に通知と自動 削除を行うConfigルールも用意されている
通知アーキテクチャ 69 SNSとChatbotを通じてEメールやSlackに各種イベントを通知
通知アーキテクチャ 70 • イベント通知例(復習) ◦ GuardDuty:重大性がMedium以上 ◦ Security Hub:重大性が「CRITICAL」「HIGH」 ◦
Health:アカウント固有のイベント ◦ CloudTrail:特定のイベント ◦ Config:特定の条件下
BLEAの他のテンプレートも 簡単に紹介 71
Control Tower版テンプレート 72 • マルチアカウント向けのControl Tower版テンプレートも用意されてい る • 先ほどまで紹介していたスタンドアロン版とでは、最終的に実現できる セキュリティ機能の差はほとんどない
• GuardDutyなど一部サービスの有効化部分をOrganizaitonsの機能に 寄せているなど、ControlTower用に最適化されている
ゲストシステム版テンプレート 73 • EC2やECS、サーバーレス構成のサンプルアプリケーションテンプレー トも存在しているので、これを元に各システムを作成することが可能 • 今回のセッションテーマであるAWSアカウント自体のセキュリティレ ベル向上とはテーマが少し異なるので本セッションでは説明を割愛
セキュアアカウントの紹介 74
セキュアアカウントとは 75 • クラスメソッドが提供する各種セキュリティサービスを有効化した状態 でAWSアカウントを払い出すサービス • クラスメソッドメンバーズにご加入の方のみ利用可能
セキュアアカウントとは 76 • BLEAと同じように各種AWSセキュリティサービスを自動で有効化 ◦ 各種セキュリティサービスの有効化+通知設定 ◦ AWSアカウントの非推奨なデフォルト設定の是正 • デフォルトVPCの削除
• S3ブロックパブリックアクセス機能の有効化 • etc
セキュアアカウントとは 77
セキュアアカウントの全体概要図 78 引用:https://dev.classmethod.jp/articles/aws-security-operation-bestpractice-on-secure-account/
参考ブログ 79
BLEAとセキュアアカウント どちらを利⽤するか 80
⽬的と意識の整理 81 • 両者の目的 ◦ AWSアカウントのセキュリティレベルの向上 • BLEAが意識しているところ ◦ テンプレートによるクラウド環境に適した組織全体の統制(=ガバナ
ンス)を意識しており、カスタマイズを前提としている • セキュアアカウントが意識しているところ ◦ お客様の負担軽減を意識しており、設計や適用についてはクラスメ ソッドが実施
⽐較表 82
使い分け 83 • こんな方にBLEAがおすすめ ◦ ControlTower環境があったり、スタンドアロンAWSアカウントを 多数所持しており、組織全体の統制を行いたい方 ◦ ある程度AWSアカウントに必要なセキュリティ設定を理解してお り、BLEAのカスタマイズや運用体制がある方
• こんな方にセキュアアカウントがおすすめ ◦ 組織全体の統制よりも先に、AWSアカウント単位からセキュリティ 対策を始めていきたい方 ◦ 設計や適用の負担軽減を重視したい方
まとめ 84
まとめ(話したこと) 85 • 前半パート ◦ AWSアカウントに発生しうる脅威例の紹介 ◦ AWSセキュリティサービスの紹介 • 後半パート
◦ Baseline Environment on AWS(BLEA)の概要や中身の説明 ◦ クラスメソッドが提供する「セキュアアカウント」の概要説明 ◦ BLEAとセキュアアカウントの比較
86