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
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Music & Morning Musume
bryan
46
6.2k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
89
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
It's Worth the Effort
3n
183
27k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
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