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 のマネージドサービスを使ったセキュリティ強化のための自動化 / aws-securit...
Search
Manabu Sakai
March 10, 2018
Technology
11
16k
AWS のマネージドサービスを使ったセキュリティ強化のための自動化 / aws-security-automation
JAWS DAYS 2018 の発表資料です。 #jawsdays #jawsug
Manabu Sakai
March 10, 2018
Tweet
Share
More Decks by Manabu Sakai
See All by Manabu Sakai
アウトプットが切り拓いた自分のエンジニア人生 / Infra Study 2nd #8
manabusakai
0
28k
GitHub Actions の self-hosted runner と Amazon EKS を使った Docker のビルドパイプライン / secure-docker-build-pipeline
manabusakai
0
2.1k
SaaS における EKS のシングルテナントクラスタ戦略とスポットインスタンス活用術 / EKS single-tenant cluster strategy and Spot Instances
manabusakai
0
7.3k
freee のエンジニアは障害から何を学び、どう改善しているのか? / What do freee engineers learn and improve from failures?
manabusakai
8
19k
我々は Kubernetes の何を監視すればいいのか? / CloudNative Days Kansai 2019
manabusakai
25
8.6k
CI/CD パイプラインを最速で組み立てるための 4 つのポイント / Four points to assemble the CI CD pipeline fastest
manabusakai
9
3.7k
Kubernetes を使ってエンジニア組織の生産性を上げよう / kubernetes-and-engineer-productivity
manabusakai
3
7.4k
freee のマイクロサービスを K8s + Go で組む! 短期プロジェクト成功の記録 / microservices-using-k8s-and-go
manabusakai
4
10k
Kubernetes 入門者が 3 か月で本番導入するためにやったこと / kubernetes-beginner
manabusakai
7
14k
Other Decks in Technology
See All in Technology
Witchcraft for Memory
pocke
1
290
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
1
220
_第3回__AIxIoTビジネス共創ラボ紹介資料_20250617.pdf
iotcomjpadmin
0
150
初めてのAzure FunctionsをClaude Codeで作ってみた / My first Azure Functions using Claude Code
hideakiaoyagi
1
220
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
630
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
160
CSS、JSをHTMLテンプレートにまとめるフロントエンド戦略
d120145
0
290
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
130
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
110
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
3
470
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
39
1.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Adopting Sorbet at Scale
ufuk
77
9.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
What's in a price? How to price your products and services
michaelherold
246
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Site-Speed That Sticks
csswizardry
10
660
Raft: Consensus for Rubyists
vanstee
140
7k
Code Review Best Practice
trishagee
68
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Scaling GitHub
holman
459
140k
The Invisible Side of Design
smashingmag
299
51k
Transcript
AWS のマネージドサービスを使った セキュリティ強化のための自動化 +"84%":4 ࡔҪֶ!NBOBCVTBLBJ
#jd2018_c
͜ͷηογϣϯͷΰʔϧ w "84͕ఏڙ͢ΔηΩϡϦςΟؔ࿈ͷϚωʔδυαʔϏεΛ ͬͯΒ͏ w ηΩϡϦςΟڧԽͷͨΊͷΞΠσΞΛ࣋ͬͯؼͬͯΒ͏
ࡔҪֶ!NBOBCVTBLBJ w GSFFFגࣜձࣾ43&ΤϯδχΞݸਓࣄۀओ w ݸਓࣄۀͰελʔτΞοϓͷٕज़ࢧԉΛߦ͏ w ಘҙ"84ʢࣗಈԽपΓʣ w ϒϩάͬͨΓΤϯδχΞͷඋ
freee をご存知の方は挙手を お願いします✋
GSFFFͷαʔϏε w ձܭGSFFF w ਃࠂGSFFF w ਓࣄ࿑GSFFF w ϚΠφϯόʔཧGSFFF w
ձࣾઃཱGSFFF w ։ۀGSFFF
GSFFFͷαʔϏε w ϛογϣϯʮεϞʔϧϏδωεʹܞΘΔͯ͢ͷਓ͕ తͳ׆ಈʹϑΥʔΧεͰ͖ΔΑ͏ʯ w όοΫΦϑΟεʹؔΘΔ#UP#ΫϥυαʔϏεΛఏڙ w ձܭGSFFFສࣄۀॴҎ্ʹ͓͍͍͖ͨͩɺ ΫϥυձܭιϑτͷγΣΞ/P
GSFFFͷαʔϏε w ձܭGSFFF w ਃࠂGSFFF w ਓࣄ࿑GSFFF w ϚΠφϯόʔཧGSFFF w
ձࣾઃཱGSFFF w ։ۀGSFFF ͓ۚ ਓ ਓ ͓ۚ
お金や人に関わる情報漏洩は 絶対に起こしてはいけない
ͦͷͨΊʹʜ w 04ϛυϧΣΞͷमਖ਼ύον͙͢ʹద༻͍ͨ͠ w %P4߈ܸϦετܕ߈ܸࣗಈతʹϒϩοΫ͍ͨ͠ w "84্Ͱͷෆ৹ͳΞΫςΟϏςΟʹؾ͖͍ͮͨ w σʔλ͕վ͟ΜͰ͖ͳ͍Α͏ʹ͍ͨ͠ w
FUD
挙げればキリがない
一方でエンジニアのリソースは 限られている
そうだ、 自動化だ
w "84ʹηΩϡϦςΟڧԽʹ͑ΔϚωʔδυαʔϏε͕ ଟ͘ఏڙ͞Ε͍ͯΔ w 8"' 4IJFME (VBSE%VUZ .BDJF *OTQFDUPS FUDʜ
w ΞΠσΞͱϓϩάϥϛϯάͰࣗಈԽͷΈΛ࡞Δ w ͦͯ͠ɺΤϯδχΞϢʔβʔʹͱͬͯຊ࣭తʹՁͷ͋ Δ͜ͱʹϑΥʔΧε͢Δ
今回は freee で実践している 自動化を 3 つご紹介します
CodeBuild を使った AMI 作成の自動化
w GSFFFͰӡ༻͍ͯ͠Δ&$(PMEFO".*ํࣜ w 04ͷجຊઃఆϛυϧΣΞͷΠϯετʔϧ͕ࡁΜͩ ".*Λ͋Β͔͡Ί࡞͓ͬͯ͘ w ΞϓϦέʔγϣϯىಈ࣌ʹ࠷৽ͷͷΛऔಘ͢Δ w मਖ਼ύονΛͯΔʹ".*Λ࡞Γ͢ w
"OTJCMFͱ1BDLFSͰίʔυԽ͞Ε͍ͯΔ
ࣗಈԽ͢Δલʜ w 43&͕खݩͷϚγϯͰAQBDLFSCVJMEAͯ͠".*Λ࡞ w ".*ͷछྨ͕૿͑ͯ͘Δͱ࡞Γ͠ʹ͕͔͔࣌ؒΔΑ͏ʹ ͳ͖ͬͯͨ w ۓٸͷߴ͍मਖ਼ύον͕ϦϦʔε͞ΕΔͱɺ ΄͔ͷ࡞ۀΛࢭΊͯશһͰख͚͍ͯͬͯͨ͠
ボトルネックは↓ここ
$PEF#VJMEͱ w $PEF#VJMEϑϧϚωʔδυͷϏϧυαʔϏε w Ϗϧυ͝ͱʹݸผͷ%PDLFSίϯςφ͕ىಈ͠ɺ ෳͷϏϧυΛಉ࣌ʹ࣮ߦͰ͖Δ w 1BDLFS(PͰॻ͔ΕͨπʔϧͳͷͰ%PDLFSͰಈ͘ w AQBDLFSCVJMEAΛ$PEF#VJMEʹΒͤΕָͰ͖Δʂ
1 コマンドで完了!
ࣗಈԽͷΈ w 3VCZͰγϯϓϧͳϥούʔίϚϯυΛॻ͍ͨ w ΤϯδχΞ͕Δ͜ͱΛίϚϯυΛ࣮ߦ͢Δ͚ͩ w $PEF#VJMECVJMETQFDZNMʹԊͬͯ".*Λ࡞ w ϏϧυΛಉ࣮࣌ߦ͢Δ͜ͱͰτʔλϧͷ࣌ؒॖ
AWS WAF を使った 攻撃の自動ブロック
ࣗಈԽ͢Δલʜ w %P4߈ܸϦετܕ߈ܸͷݕ͕ޙखʹճΔ w ߈ܸݩͷ*1ΞυϨε͕සൟʹมΘΔͷͰɺ 4FDVSJUZ(SPVQ/FUXPSL"$-Ͱ͖͗Εͳ͍ w OHJOYͰ߈ܸݩͷ*1ΞυϨεΛϒϩοΫ͕ͨ͠ɺ ݁ہ8FCαʔόʹෛՙ͕͔͔Δ w
ਂૣேͳͲखബͳ࣌ؒଳ͕Ͱ͖ͯ͠·͏
"848"'ͱ w "848"'ϑϧϚωʔδυͷ8"'αʔϏε w $MPVE'SPOUͱ"-#ʹઃఆͰ͖Δ w 42-J944ͱ͍ͬͨ੬ऑੑΛૂͬͨ߈ܸɺ *1ΞυϨεϚονϯά(FP*1ͰϒϩοΫͰ͖Δ w ߈ܸͷॳಈ"848"'ʹϒϩοΫͤ͞Δʂ
攻撃者には 403 を返す
ࣗಈԽͷΈ w "848"'ͷ3BUFCBTFEϧʔϧΛ׆༻ w ಛఆͷ63-ʹ/ؒʹ/ճͷϦΫΤετ͕͋Δͱൃ ಈʢ/ͷࣈඇެ։ʣ w ࣗಈతʹϒϩοΫͯ͘͠ΕΔͷͰ༨༟Λ࣋ͬͯௐࠪͰ͖Δ w "-#ͰϒϩοΫ͢ΔͷͰ8FCαʔόʹෛՙ͕͔͔Βͳ͍
GuardDuty を使った 脅威検出と Slack 通知
ࣗಈԽ͢Δલʜ w 4FDVSJUZ(SPVQͷมߋϛεʹؾ͚ͮΔΑ͏ʹ࣍ͰࠩΛ ݕग़͢ΔΈΛ࡞ͬͨ w ࣗલͰͯ͢Λ࡞ΓࠐΉͷେมʜ w ڴҖΛݕग़͢ΔΈͦͦͳ͔ͬͨ w Կ͔͋ͬͨΒ$MPVE5SBJMΛ֬ೝ͍ͯͨ͠
(VBSE%VUZͱ w (VBSE%VUZϑϧϚωʔδυͷڴҖݕग़αʔϏε w $MPVE5SBJMɺ71$ϑϩʔϩάɺ%/4ϩάΛऩूͯ͠ڴҖΛ ݕग़ͯ͘͠ΕΔ w ͨͱ͑&$ʹର͢ΔϙʔτεΩϟϯͳͲɺ ΄΅ϦΞϧλΠϜʹݕग़ͯ͘͠ΕΔ w
ෆ৹ͳΞΫςΟϏςΟʹରͯ͠ϓϩΞΫςΟϒʹରԠͰ͖Δʂ
ほぼリアルタイムに通知
重要度に応じて色やメンションの有無が変わる
ࣗಈԽͷΈ w (VBSE%VUZڴҖΛݕग़ͯ͠௨ͯ͘͠Εͳ͍ w ڴҖ͕ݕग़͞ΕΔͱ$MPVE8BUDI&WFOUT͔Β-BNCEBΛ ىಈͯ͠4MBDLͷ8FCIPPLΛୟ͘ w ڴҖϨϕϧʹԠͯ͡ϝοηʔδͷ༰Λม͍͑ͯΔ w $SJUJDBMͷڴҖ!DIBOOFMͰϝϯγϣϯΛඈ͢
ิ w GSFFFͰଞʹ༷ʑͳηΩϡϦςΟରࡦΛߦ͍ͬͯ·͢ w ηΩϡϦςΟଟޚ͕ॏཁ w "84ͷϚωʔδυαʔϏεΛ׆༻ͭͭ͠ɺଞͷ؍͔Βͷ ରࡦ߹Θͤͯߦ͍·͠ΐ͏
·ͱΊ w ΞΠσΞ࣍ୈͰηΩϡϦςΟڧԽࣗಈԽͰ͖Δ࣌ w "84ͷϚωʔδυαʔϏεΛ͏·͘׆༻͠·͠ΐ͏ w GSFFFͷ43&Ϣʔβʔʹຊ࣭తͳՁΛಧ͚ΔͨΊʹ ҆৺ͯ͑͠ΔΠϯϑϥڥΛࢦ͍ͯ͠·͢ʂ
@manabusakai
ϨϑΝϨϯε w $PEF#VJMEΛͬͯ".*࡞ͷ࣌ؒΛେ෯ʹॖͨ͠ w "848"'ͷϨʔτϕʔεϧʔϧΛࢼͯ͠Έͨ w (VBSE%VUZ͕ݕग़ͨ͠ڴҖΛ͍͍ײ͡ʹ4MBDL௨͢Δ