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
AWSセキュリティガードレールにより開発者がセキュリティ監視するようになったDMM_課題...
Search
Wataru Nishiyama
April 05, 2022
0
120
AWSセキュリティガードレールにより開発者がセキュリティ監視するようになったDMM_課題と今後.pptx.pdf
Wataru Nishiyama
April 05, 2022
Tweet
Share
More Decks by Wataru Nishiyama
See All by Wataru Nishiyama
DMMでAWSセキュリティガードレールを作ったので、開発者がAWSセキュリティをチェックする文化を広げていきたい
runble1
7
7.8k
DMMにおける300アカウント67チームのAWSセキュリティを「開発者」に監視してもらうまでの道のり
runble1
1
1.1k
GCP無料枠を使ってデータ分析基盤を作ってみた
runble1
1
1.1k
英語できないエンジニア Google I/O にいく
runble1
0
350
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
How GitHub (no longer) Works
holman
311
140k
The Language of Interfaces
destraynor
154
24k
The Pragmatic Product Professional
lauravandoore
32
6.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Unsuck your backbone
ammeep
669
57k
Optimising Largest Contentful Paint
csswizardry
33
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Transcript
© DMM.com CONFIDENTIAL 合同会社DMM.com セキュリティ部 CloudSecチーム 西山渉 AWS セキュリティガードレールにより
開発者がセキュリティ監視するように なったDMM、課題と今後
© DMM.com 自己紹介 2 - 名前 : 西山渉 - 所属
: 合同会社DMM.com セキュリティ部 • クラウドセキュリティの推進 • WAF 導入支援 • PCIDSS セキュリティ監視
© DMM.com DMM 3
© DMM.com 今日話すこと 4 1. DMM で AWS セキュリティガードレールを構築 2.
AWS セキュリティガードレールのシステム保守 3. 開発者がセキュリティを自走する仕組み
© DMM.com 1つ目 5 DMM で AWS セキュリティ ガードレールを構築
© DMM.com DMM で AWS セキュリティガードレール構築 6 - AWS レイヤーのセキュリティ監視開始
© DMM.com DMM で AWS セキュリティガードレール構築(2021/9) 7 - AWS レイヤーのセキュリティ監視開始
• DB パブリック公開:20 • S3 書き込み権限でパブリック公開:6 • セキュリティ侵害 : 3
© DMM.com DMM で AWS セキュリティガードレール構築(2022/3) 8 - AWS レイヤーのセキュリティ監視開始
• DB パブリック公開:20 → 23 • S3 書き込み権限でパブリック公開:6 → 8 • セキュリティ侵害 : 3 → 4
© DMM.com 9 - AWS レイヤーのセキュリティ監視開始 • DB パブリック公開:20 →
23 • S3 書き込み権限でパブリック公開:6 → 8 • セキュリティ侵害 : 3 → 4 - 開発者がセキュリティ監視に参加し続けることで セキュリティ自給率が向上中 DMM で AWS セキュリティガードレール構築(2022/3)
© DMM.com セキュリティガードレールとは 10 - セキュリティ品質の担保のため、脅威を検知し クラウド領域を制限する持続可能なアプローチ
© DMM.com DMM のセキュリティガードレール実装 11 - AWS Landing Zone -
Amazon GuardDuty / AWS Config Rules を監視
© DMM.com DMM のセキュリティガードレール実装 12 - AWS Landing Zone -
Amazon GuardDuty / AWS Config Rules を監視 - Slack : チャットコミュニケーションツール - JIRA : チケット管理システム - Slackbot
© DMM.com AWS Landing Zone 13
© DMM.com GuardDuty / Config Rules を監視 14
© DMM.com GuardDuty / Config Rules を監視 15 チームごとの Slack
チャンネルへ通知
© DMM.com Slack 16
© DMM.com Slack 17 一緒に監視
© DMM.com Slack 18 チームごとのSlack チャンネルが約70個
© DMM.com JIRA 19 アラート1個につきチケット1つ作成
© DMM.com JIRA : アラートをステータス管理 20 ToDo → レビュー中 →
完了
© DMM.com Slackbot 21
© DMM.com DMM のセキュリティガードレール使い方 22 - セキュリティガードレールを使うことで、開発者と セキュリティ管理者が「一緒」にセキュリティ監視
© DMM.com DMM のセキュリティガードレール使い方 23 - セキュリティガードレールを使うことで、開発者と セキュリティ管理者が「一緒」にセキュリティ監視 開発者がセキュリティ運用に参加
© DMM.com DMM Tech Vision 24
© DMM.com DMM が目指す開発像 25
© DMM.com セキュリティも開発者が面倒をみる 26
© DMM.com 監視モデル 27 管理者 開発者 AWS 主役
© DMM.com 監視モデル 28 管理者 開発者 AWS 開発者の後
© DMM.com 全チーム(85)へ説明 29
© DMM.com 全チーム(85)へ説明 30 リソースとお金
© DMM.com 結果 31
© DMM.com 結果(2021/9) 32 棚卸しにより削除されたアカウント : 約50 セキュリティ設定完了アカウント : 300
セキュリティ了承チーム : 80
© DMM.com 結果(2022/3) 33 棚卸しにより削除されたアカウント : 約50 セキュリティ設定完了アカウント : 300
→ 350 セキュリティ了承チーム : 80 → 85
© DMM.com アラート数の推移(2020/10~2022/3) 34
© DMM.com 35 AWSが約5700のアラートを発報 アラートチェック状況(2020/10~2022/3)
© DMM.com アラートチェック状況(2020/10~2022/3) 36 開発者が約4400チェック完了
© DMM.com チームA チームA チームB チームC チームD チームG チームE チームF
チームH チームごとのアラートチェック状況 37
© DMM.com 構築の過程の話はこちら 38
© DMM.com 2つ目 39 AWS セキュリティガードレールの システム保守
© DMM.com ガードレールに利用されるシステム 40 - AWS Organizations OU - サービスマネージド型
CloudFormation StackSets - CICD - Slack - JIRA - AWS のセキュリティサービス・通知サービスetc…
© DMM.com ガードレールに利用されるシステム 41 - AWS Organizations OU - サービスマネージド型
CloudFormation StackSets - CICD - Slack - JIRA - AWS のセキュリティサービス・通知サービスetc… 一気通貫で設計しないと大変
© DMM.com 大変なことになっていること 42 - OU の階層を深くしすぎた - CloudFormation テンプレートを分けすぎた
- 例外設定をコード化した
© DMM.com OU の階層を 深くしすぎた 43
© DMM.com 現状 44 - OU と DMM の組織構造を同じにしていた -
ex) Root • DMM • 事業部A • チームaaa • チームbbb • 事業部B • チームccc • チームddd…
© DMM.com 問題 45 - DMM の組織変更の頻度が多すぎて合わせるのが困難 • 大胆不敵な合併・再編・サービス譲渡... -
目当ての OU を見つけられない • Organizations コンソールで OU 名で検索できない
© DMM.com 解決法(未対応) 46 - 事業部 OU を消し、会社 OU 直下に揃える
- チーム OU に事業部名を入れる - ex) Root • DMM • チームA-aaa • チームA-bbb • チームB-ccc • チームB-ddd…
© DMM.com CloudFormation テンプレートを 分けすぎた 47
© DMM.com 現状 48 6個 - 1つの OU に適用する CloudFormation
テンプレート • chatbot.yaml • config.yaml • config_rules.yaml • config_sns.yaml • guardduty_sns.yaml • lambda_billing_statement.yaml
© DMM.com 問題 49 - OU × CloudFormation テンプレートの StackSets
が 存在する
© DMM.com 問題 50 - OU × CloudFormation テンプレートの StackSets
が 存在する 88×6= 528
© DMM.com 解決策(未対応) 51 - 1 OU 1 CloudFormation テンプレートにまとめる
※DMM はセキュリティレベルに応じたプランを用意 • strong.yaml • standard.yaml • minimal.yaml
© DMM.com 例外設定を コード化した 52
© DMM.com 現状 53 - 開発者からリクエストされた例外を、コードで管理 ex ) このアカウントではこのアラート無効化して〜
© DMM.com 問題 54 - CloudFormation StackSets のデプロイ単位が OU →例外追加のたびに
OU が増加
© DMM.com 解決策(未対応) 55 - ドキュメントにメモし手動対応するのがコスト低い
© DMM.com その他問題の数々 56 - どの OU にどの AWS アカウントを入れるかわからない
- CloudFormation StackSets の自動デプロイ使うべき? 使わないべき? - CloudFormation StackSets のアップデートを手動でやるの つらい、CICD 入れるべき?etc…
© DMM.com 運用課題の話はこちらでも 57
© DMM.com 3つ目 58 開発者がセキュリティ チェックする文化
© DMM.com 開発者がセキュリティアラートをチェック! 59
© DMM.com 実際どうなのか? 数字で表してみた 60
© DMM.com チームの網羅率 61
© DMM.com チームの網羅率 62 85/87= 97.7%
© DMM.com アラートのチェック率 63
© DMM.com アラートのチェック率 64 4300/5700= 75%
© DMM.com アラートチェックにかかる平均日数 65
© DMM.com アラートチェックにかかる平均日数 66 177 日
© DMM.com 管理者に対してのセキュリティ可視化 67 - 開発者がセキュリティを自走する文化は浸透した?
© DMM.com 管理者に対してのセキュリティ可視化 68 - 開発者がセキュリティを自走する文化は浸透した? すごくやってくれてる!
© DMM.com もちろんチーム格差がある 69 チェックしてない数 チームA チームB チームC チームD チームG
チームE チームF チームH 未 済
© DMM.com もちろんチーム格差がある 70 チームA チームA チームB チームC チームD チームG
チームE チームF チームH 何も言わなくてもやっ てくれるチーム 未 済
© DMM.com もちろんチーム格差がある 71 チームA チームB チームC チームD チームG チームE
チームF チームH 言えばやってくれる チーム 未 済
© DMM.com セキュリティ部と一緒に残アラート確認 72 チームA チームA チームB チームC チームD チームG
チームE チームF チームH 未 済 言ってもやってくれな いチーム
© DMM.com アプローチ 73
© DMM.com アプローチ方法 74 - 月イチで残アラートを通知 - 月イチでセキュリティサービス費用を通知 - セキュリティ部と一緒に残アラート確認
MTG
© DMM.com 月イチで残アラートを通知 75 - セキュリティ部はチームごとの残アラートを把握
© DMM.com 月イチでセキュリティサービス費用を通知 76 - お金方面からセキュリティを自覚 - 生きたチャンネルだと認識させる
© DMM.com 補足:セキュリティサービス費用の傾向 77 - PRD より DEV/STG アカウントが高くなる →1日1回
AWS リソースの削除・作成の運用
© DMM.com セキュリティ部と一緒に残アラート確認 78
© DMM.com セキュリティ部と一緒に残アラート確認 79 チームA チームA チームB チームC チームD チームG
チームE チームF チームH 未 済
© DMM.com まとめと今後 80
© DMM.com まとめと今後 81 - AWS セキュリティガードレールのシステム保守
© DMM.com まとめと今後 82 - AWS セキュリティガードレールのシステム保守 →保守しやすいように再設計中
© DMM.com まとめと今後 83 - AWS セキュリティガードレールのシステム保守 →保守しやすいように再設計中 →セキュリティレベルの高度化 (現在は、ドア閉めてる?をチェックするレベル)
© DMM.com まとめと今後 84 - AWS セキュリティガードレールのシステム保守 →保守しやすいように再設計中 →セキュリティレベルの高度化 (現在は、ドア閉めてる?をチェックするレベル)
- 開発者がセキュリティチェックする文化 →順調、今後も文化を広げていく
© DMM.com まとめと今後 85 - AWS セキュリティガードレールのシステム保守 →保守しやすいように再設計中 →セキュリティレベルの高度化 (現在は、ドア閉めてる?をチェックするレベル)
- 開発者がセキュリティチェックする文化 →順調、今後も文化を広げていく セキュリティをエンジニアリングで解決
© DMM.com 今後の DMM 86 https://dmm-corp.com/recruit/engineer/800/
© DMM.com おしまい 87