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セキュリティ -Developers.IO 2017 WORLD in ...
Search
阿部洸樹
September 28, 2017
Technology
1
250
ここからはじめるAWSセキュリティ -Developers.IO 2017 WORLD in 名古屋-
Developers.IO 2017 WORLD in 名古屋
阿部洸樹
September 28, 2017
Tweet
Share
More Decks by 阿部洸樹
See All by 阿部洸樹
クラスメソッドの新卒向け会社説明会(エンジニア)
abeika
0
1.2k
20190425
abeika
0
780
ここからはじめるAWSセキュリティ
abeika
1
1.7k
Other Decks in Technology
See All in Technology
freeeのアクセシビリティの現在地 / freee's Current Position on Accessibility
ymrl
2
280
データ戦略部門 紹介資料
sansan33
PRO
1
3.3k
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
2
1.7k
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
230
united airlines ™®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedhelp
1
470
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
6.8k
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
930
データ基盤からデータベースまで?広がるユースケースのDatabricksについて教えるよ!
akuwano
3
170
Delegating the chores of authenticating users to Keycloak
ahus1
0
180
安定した基盤システムのためのライブラリ選定
kakehashi
PRO
3
120
ロールが細分化された組織でSREは何をするか?
tgidgd
1
260
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Adopting Sorbet at Scale
ufuk
77
9.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
Scaling GitHub
holman
460
140k
Practical Orchestrator
shlominoach
189
11k
4 Signs Your Business is Dying
shpigford
184
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Site-Speed That Sticks
csswizardry
10
700
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Transcript
͔͜͜Β͡ΊΔ"84ηΩϡϦςΟ Ϋϥεϝιου Ѩ෦ᔨथ DNEFWJP
͓͍͑ͨ͜͠ͱ ᶅηΩϡϦςΟରࡦͰָΛ͢ΔͨΊͷख๏ ᶃใηΩϡϦςΟͱԿ͔ ᶄAWSηΩϡϦςΟͷجຊ ηΩϡϦςΟͱ͍͏ݴ༿ࡍݶͳ͘ΘΕ͕ͪ AWSฐࣾͷϕετϓϥΫςΟεʹج͍ͮͨରࡦ ڞ༗Ϟσϧ ηΩϡϦςΟΛࢧԉ͢ΔαʔϏε
ΞδΣϯμ wใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲ w
&$ͷηΩϡϦςΟϕετϓϥΫςΟε w ϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
ใηΩϡϦςΟͱ ̏େཁ݅ɺ̏ཁૉͱݺΕΔ ػີੑʢ$POpEFOUJBMJUZʣ શੑʢ*OUFHSJUZʣ Մ༻ੑʢ"WBJMBCJMJUZʣ ༷ʑͳڴҖ͔Βɺใࢿ࢈Λ ػີੑɺશੑɺՄ༻ੑͷ֬อΛߦ͍ͭͭɺ ਖ਼ৗʹҡ࣋͢Δ͜ͱ
ػີੑ ใࢿ࢈Λਖ਼ͳݖརΛ࣋ͬͨਓ͚͕ͩ ༻Ͱ͖Δঢ়ଶʹ͓ͯ͘͜͠ͱ
ػີੑ͕ଛͳΘΕͨঢ়ଶ څ༩ใ Ӧۀσʔλ ਓࣄ෦ Ӧۀ෦
ػີੑ͕ଛͳΘΕͨঢ়ଶ څ༩ใ Ӧۀσʔλ ਓࣄ෦ Ӧۀ෦ ϑΝΠϧαʔόઃఆͷޡΓ
ػີੑ͕ଛͳΘΕͨঢ়ଶ ഇغґཔ ۀऀ
ػີੑ͕ଛͳΘΕͨঢ়ଶ ഇغґཔ ୈࡾऀͷԣྲྀ͠ ۀऀ ਖ਼ৗͳϓϩηε͔Βͷҳ
ػີੑ͕ଛͳΘΕͨঢ়ଶ ਖ਼ৗͳ௨৴ ̋̋ͷϗʔϜϖʔδ ҰൠϢʔβʔ ѱҙͷ͋Δ௨৴ ੬ऑੑͷ͋Δ ΞϓϦέʔγϣϯ
શੑ ใࢿ࢈͕ਖ਼ͳݖརΛ࣋ͨͳ͍ਓʹΑΓมߋ͞Ε ͍ͯͳ͍͜ͱΛ࣮֬ʹ͓ͯ͘͜͠ͱ
શੑ͕ଛͳΘΕͨঢ়ଶ ̋̋ͷϗʔϜϖʔδ 8FCվ͟Μ ίϯςϯπͷվ͟Μ ϚϧΣΞ͢ΔڪΕ ˠҙਤͤͣɺ໎ߦҝΛߦ͏Մೳੑ
Մ༻ੑ ใࢿ࢈Λඞཁͳͱ͖ʹ༻Ͱ͖Δ͜ͱ
Մ༻ੑ͕ଛͳΘΕͨঢ়ଶ ̋̋ͷϗʔϜϖʔδ %%P4߈ܸ ਖ਼ͳϢʔβʔ Ϙοτωοτ
ΞδΣϯμ w ใηΩϡϦςΟͱ w*".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲ w
&$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
*".ͷॏཁੑ IAMͷྲྀग़ѱ༻ 3େཁ͕݅ଛͳΘΕΔ Մೳੑ͕͋Δ
ػີੑ͕ଛͳΘΕͨঢ়ଶ ෆਖ਼μϯϩʔυ 4όέοτ
શੑ͕ଛͳΘΕͨঢ়ଶ ઃఆมߋ
Մ༻ੑ͕ଛͳΘΕͨঢ়ଶ EC2ͷఀࢭ/আ &$Πϯελϯε
*".Λѱ༻͞Εͳ͍ͨΊʹ IAMͷϕετϓϥΫςΟεΛ ࣮ફ͠Α͏ IAM ͷϕετϓϥΫςΟε http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/best-practices.html
*".Ξϯνύλʔϯ ϧʔτΞΧϯτ IAMϢʔβʔ ৗతͳϧʔτΞΧϯτͷར༻ IAMϢʔβʔͷڞ༗
*".ϕετϓϥΫςΟε ਓʹ͖ͭɺͭͷ*".Ϣʔβʔ
*".ϕετϓϥΫςΟε "ENJOJTUSBUPST 7JFXFS &$"ENJO *".άϧʔϓͷར༻
*".ϕετϓϥΫςΟε .'"ͷར༻ "84ίϯιʔϧͷϩάΠϯ .'"σόΠε
*".Ξϯνύλʔϯ &$ͷ*".Ωʔͷొ "84$-*ɺ4%,ͷ࣮ߦ ϑΝΠϧΞοϓόοΫΞοϓ Ωʔใ͕ॻ͔ΕͨϓϩάϥϜɺ ઃఆϑΝΠϧΛγΣΞ ˠ࿙Ӯ
*".ϕετϓϥΫςΟε *".ϩʔϧͷར༻ Ωʔͷొ͕ෆཁ ىಈதͷ&$ͷׂΓͯɺ ׂΓͯղআ͕Մೳ ϑΝΠϧΞοϓόοΫΞοϓ /FX
*".ϕετϓϥΫςΟε IAMͷఆظతͳݟ͠
ҟಈͳͲʹ͋Θͤͨ*".ͷมߋ *".ϢʔβʔͷՃআɺ*".Ωʔͷআ ҟಈ ୀ৬ ݕূΩʔͷআ
"84αʔϏεΛͬͨݟ͠ IAMೝূใϨϙʔτ CSVܗࣜͷϨϙʔτ Trusted Advisor ίετɺύϑΥʔϚϯεɺηΩϡϦςΟɺੑʹؔ͢ΔΞυόΠε AWS Config Rules
ΧελϜϧʔϧΛ࡞Մೳ ఆظతʹνΣοΫ͍ͨ͠αʔϏε IAMίϯιʔϧ ઃఆঢ়گͷ֬ೝ AWSϦιʔε͕ϧʔϧʹԊͬͯ࡞͞Ε͍ͯΔ͔νΣοΫ
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε wূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲ w
&$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
"84$MPVE5SBJM "84Ͱ࣮ߦ͞Εͨ"1*ΛϩΪϯά ૹ৴ݩ*1ΞυϨε Կ͕͋ͬͨͷ͔ɺͳ͔ͬͨͷ͔Λ֬ೝ ࣌ؒ Ϣʔβʔ ΞΫγϣϯ 165
"84$POpH "84ͷߏه ਓ͕ݟͯΘ͔Γ͍͢ "84Ϧιʔεͷ࡞มߋΛه λΠϜϥΠϯͰදࣔ
"84$POpHͷλΠϜϥΠϯ ྫɿηΩϡϦςΟάϧʔϓͷλΠϜϥΠϯ &$ͷׂΓͯ ʢϦϨʔγϣϯγοϓͷมߋʣ "84ϦιʔεͷมߋཤྺΛͰ͖Δ ϧʔϧͷมߋ ʢઃఆͷมߋʣ 'SPN 5P
"84$POpHͱ&$4ZTUFNT.BOBHFSͷ࿈ܞ 04Ξοϓσʔτʹ͍ͭͯՄೳ ྫɿΧʔωϧΞοϓσʔτͷه 44.ΤʔδΣϯτͷΠϯετʔϧ͕ඞཁ ྫ Χʔωϧͷόʔδϣϯ͕ˠʹΞοϓσʔτ Πϯετʔϧ࣌
֤αʔϏεͷϩά༗ޮԽ &-#ʢϩʔυόϥϯαʔʣ ϩάͷղੳྫʣ 4ʹΞΫηεϩάΛ165 "NB[PO"UIFOBʹΑΔղੳ 42-ΫΤϦ࣮ߦ $MPVE'SPOUʢ$%/ʣ αϙʔτͷ͍߹Θͤʹඞཁ 165
ղੳ
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ wڞ༗ϞσϧͰߟ͑Δׂ୲ w
&$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
ڞ༗Ϟσϧ "84ͷηΩϡϦςΟ"84ͱϢʔβʔ͕࿈ܞͯ͠ୡ "84ͷ୲ΫϥυͷηΩϡϦςΟ Ϣʔβʔͷ୲ΫϥυͷηΩϡϦςΟ αʔϏεͷछྨ͝ͱʹɺ୲ൣғ͕ҟͳΔ ΠϯϑϥετϥΫνϟαʔϏε ίϯςφαʔϏε நԽαʔϏε
ΠϯϑϥετϥΫνϟαʔϏεʢ&$ʣ ސ٬σʔλ ϓϥοτϑΥʔϜͱ ΞϓϦέʔγϣϯͷཧ 04ɺωοτϫʔΫɺ ϑΝΠΞΥʔϧߏ ҉߸Խɺ߹ੑ Ϣʔβʔͷ୲ "84ͷ୲
ج൫αʔϏε "84άϩʔόϧ ΠϯϑϥετϥΫνϟ ࢀߟ: AWS ηΩϡϦςΟͷϕετ ϓϥΫςΟε
୲ͷྫᶃ σΟεΫͷഇغ "84 ηΩϡϦςΟϓϩηεͷ֓ཁ ʢϗϫΠτϖʔύʔʣ Amazon Web Services: Overview
of Security Processes August 2016
୲ͷྫᶄ 04ɺϛυϧΣΞͷόʔδϣϯΞοϓ Ϣʔβʔ ఆظతͳύονద༻ ใऩू ৫प "NB[PO-JOVY".*4FDVSJUZ$FOUFS 5XJUUFSͷΑ͏ͳ4/4 ϓϥοτϑΥʔϜஅ
ਂࠁͳ੬ऑੑͷରԠ ύονద༻
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲
w&$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิ
"84ηΩϡϦςΟͷϕετϓϥΫςΟε AWSͷϗϫΠτϖʔύʔ
৴པͰ͖Δ".*Λ͏ ىಈ EC2 AMI AMI୭Ͱެ։Մೳ AWS৴པͰ͖Δϕϯμ͕ఏڙ͢ΔAMIΛར༻ "AMI IDΛΑ֬͘ೝͤͣʹར༻
৴པͰ͖Δ".*Λ͏8JOEPXTͷྫ ॴ༗ऀ=AmazonΠϝʔδ ྫɿ8JOEPXT4FSWFS3 ຊޠ ͷݕࡧ ϓϥοτϑΥʔϜ=Windows AMI໊=Windows-Server-2012-R2_RTM-Japanese
ඞཁͳ௨৴ͷΈڐՄ ϓϩτίϧ ૹ৴ݩ 44) ϝϯςφϯεڌ )551 ෆཁͳϓϩτίϧϒϩοΫ ཧ༻ΞΫηεଓݩΛߜΔ
ड৴ ϓϩτίϧ ૹ৴ݩ "-- ૹ৴ ཁ݅ʹԠ੍ͯ͡ޚ ※ NTP, AWS API, ύονద༻ͳͲʹҙ
࠷৽ͷ04ɺϛυϧΣΞΛ͏ EC2 ϓϥοτϑΥʔϜஅ *OTQFDUPS ϕϯμ "αϙʔτظݶ͕Εͨ04ɿύον͕ఏڙ͞Εͳ͍ "ݹ͍ϛυϧΣΞɿ੬ऑੑ͕͋ΔՄೳੑ ఆظతʹ04ɺϛυϧΣΞΛΞοϓσʔτ ఆظతͳϓϥοτϑΥʔϜஅ
࠷৽ͷΞϓϦέʔγϣϯΛ͏ EC2 ΞϓϦέʔγϣϯஅ ϕϯμ "ݹ͍ΞϓϦέʔγϣϯʹ੬ऑੑ͕͋Δ͜ͱ͕ଟ͍ ఆظతͳΞϓϦέʔγϣϯஅ ϕϯμʹґཔ͢Δࡍɺ"84ʹ৵ೖςετਃ͕ඞཁ
ϚϧΣΞରࡦ EC2 ΠϧεεύϜରࡦιϑτΣΞͷಋೖ ϗετํࣜͷ*%4ιϑτΣΞͷಋೖ
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲
w &$ͷجຊతͳηΩϡϦςΟରࡦ wϚωʔδυαʔϏεͷݕ౼ w αʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
ϚωʔδυαʔϏεͷݕ౼ DBαʔόͰ RDSΛݕ౼
ίϯςφαʔϏεʢ3%4ʣ ސ٬σʔλ ϓϥοτϑΥʔϜͱ ΞϓϦέʔγϣϯͷཧ ϑΝΠΞΥʔϧߏ ҉߸Խɺ߹ੑ Ϣʔβʔͷ୲ "84ͷ୲ ج൫αʔϏε
"84άϩʔόϧ ΠϯϑϥετϥΫνϟ 04ɺωοτϫʔΫߏ ࢀߟ: AWS ηΩϡϦςΟͷϕετ ϓϥΫςΟε
3%4ͷ04ɺϓϥοτϑΥʔϜཧ ϝϯςφϯεϑϦʔͰແ͍ Ϣʔβʔͷ୲ൣғ ϝϯςφϯεΟϯυʢि࣍ͷϝϯςφϯε࣌ؒʣͷࢦఆ Խ/γϯάϧߏ ※ ຊ൪ڥԽΛਪ ϝϯςφϯε࣮ࢪλΠϛϯάͷࢦఆ AWS͔Βͷϝʔϧͷ֬ೝ
ͳͲ
3%4ͷϝϦοτ 3%4 Խ͕؆୯ %#Τϯδϯɺ04ͷߋ৽͕؆୯ όοΫΞοϓɺϦετΞ͕؆୯ ઐ͕ࣝඞཁͳ࡞ۀΛ؆୯ʹ࣮ࢪՄೳ
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲
w &$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ wαʔόʔϨεΞʔΩςΫνϟͷݕ౼ w ิͱ·ͱΊ
੩తͳ8FCαΠτʢ4 $MPVE'SPOUʣ $MPVE'SPOU 4 Ωϟογϡ ίετ Ϣʔβʔύονద༻Λҙࣝ͠ͳͯ͘ྑ͍ ੈքதʹ͋ΔΤοδϩέʔγϣϯ ʢΩϟογϡαʔόʔʣ
நԽαʔϏεʢ4ͳͲʣ ސ٬σʔλ ϓϥοτϑΥʔϜͱ ΞϓϦέʔγϣϯͷཧ ҉߸Խɺ߹ੑ Ϣʔβʔͷ୲ "84ͷ୲ ج൫αʔϏε "84άϩʔόϧ
ΠϯϑϥετϥΫνϟ 04ɺωοτϫʔΫߏ S3ઃఆϢʔβʔͷ୲ ࢀߟ: AWS ηΩϡϦςΟͷϕετ ϓϥΫςΟε
ΞδΣϯμ w ใηΩϡϦςΟͱ w *".ͷॏཁੑͱϕετϓϥΫςΟε w ূͷऔಘ w ڞ༗ϞσϧͰߟ͑Δׂ୲
w &$ͷجຊతͳηΩϡϦςΟରࡦ w ϚωʔδυαʔϏεͷݕ౼ w ΫϥυωΠςΟϰͳΞʔΩςΫνϟͷ࠾༻ wิͱ·ͱΊ
"84͔Βͷ࿈བྷΛແࢹ͠ͳ͍ ҧ๏ߦҝͷ௨ εύϜϝʔϧͷૹ৴ DDoSͷՃ୲ ϝϯςφϯεใ ηΩϡϦςΟΠϯγσϯτ IAMใ࿙ӮͷՄೳੑ S3όέοτͷΞΫηεઃఆʹؔ͢Δҙשى S3όέοτͷΞΫηεઃఆ
ҧ๏ߦҝͷ௨Λड͚औͬͨΒ εύϜϝʔϧͷྫ ΦʔϓϯϦϨʔͷՄೳੑ DDoS߈ܸՃ୲ͷྫ ϚϧΣΞײછͷ͍͕ٙ͋ΔͷͰɺΠϯελϯεഁغ ΫϦʔϯͳEC2ʹσϓϩΠ ҧ๏ߦҝͷϦεΫ AWSΞΧϯτɺΠϯελϯεͷఀࢭ ࣾձతͳ৴༻Լ
ૌু
·ͱΊᶃ"84ηΩϡϦςΟͷجຊ ηΩϡϦςΟͷ3େཁ݅ ػີੑɺશੑɺՄ༻ੑ IAMॏཁ 3େཁ͕݅ଛͳΘΕΔՄೳੑ ূͷऔಘ AWS CloudTrailɺAWS ConfigΛ༗ޮԽ
ڞ༗Ϟσϧ AWSͷηΩϡϦςΟϢʔβͱAWS͕ڠྗͯ͠ରԠ
·ͱΊᶄηΩϡϦςΟରࡦͰָΛ͢ΔͨΊʹ ϚωʔδυαʔϏεͷݕ౼ αʔόϨεΞʔΩςΫνϟͷݕ౼ Ϣʔβʔͷ୲ൣғΛॖখ͢Δ AWS৴པͰ͖Δ৫ͷϕετϓϥΫςΟεʹै͏ IAMϕετϓϥΫςΟε AWSͷηΩϡϦςΟϕετϓϥΫςΟε AWSαʔϏε֎෦ϕϯμʔͷαʔϏεΛͬͨஅɺݟ͠ IAMೝূใϨϙʔτɺTrusted
AdvisorɺAWS Config Rules ϓϥοτϑΥʔϜஅɺΞϓϦέʔγϣϯஅ
None