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
webサイトのセキィリティまとめ
Search
nyoshiky
July 29, 2017
Technology
0
59
webサイトのセキィリティまとめ
webサイトのセキュリティ対策にはどのようなものがあるか、まとめてみました。
nyoshiky
July 29, 2017
Tweet
Share
Other Decks in Technology
See All in Technology
GrafanaMeetup_AmazonManagedGrafanaのアクセス制御機能とマルチテナント環境下でのアクセス制御について
daitak
0
230
データベース02: データベースの概念
trycycle
0
160
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
280
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
650
DMM.com アルファ室採用案内資料
hsugita
1
150
推しは推せるときに推せ! プロダクトにフィードバックしていこう
nakasho
0
320
一生覚えておきたい「システム開発=コミュニケーション」〜初めての実務案件振り返りLT〜
maimyyym
0
140
VS CodeでAWSを操作しよう
smt7174
8
1.7k
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
750
Cracking the KubeCon CfP
inductor
2
250
生産性向上チームの紹介
cybozuinsideout
PRO
1
870
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
170
Featured
See All Featured
Navigating Team Friction
lara
178
13k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
A Philosophy of Restraint
colly
197
16k
Building Your Own Lightsaber
phodgson
99
5.7k
Product Roadmaps are Hard
iamctodd
44
9.7k
Building Applications with DynamoDB
mza
88
5.6k
The Invisible Side of Design
smashingmag
294
49k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Music & Morning Musume
bryan
41
5.6k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Transcript
WEBαΠτͷηΩϡϦςΟରࡦ ͡ΊͷҰา
͜ͷεϥΠυͷత - webαΠτͷηΩϡϦςΟରࡦʹ͍ͭͯ֓ཁΛѲ͢Δɻ
ใηΩϡϦςΟ10େڴҖ ग़లɿใॲཧਪਐػߏʮใηΩϡϦςΟ10େڴҖ 2016ʯ https://www.ipa.go.jp/security/vuln/10threats2016.html ηΩϡϦςΟΠϯγσϯτͷࣄྫ ඪతܕ߈ܸ ɾJTB(2016) ɾຊۚػߏ(2015) ෦ෆਖ਼ʹΑΔใ࿙͍͑ ɾϕωοηίʔϙϨʔγϣϯ(2014)
ɾΤσΟΦϯ(2015) ΣϒαʔϏε͔Βͷݸਓใͷऔ ɾApache Struts2ͷ੬ऑੑΛ͍ͭͨ߈ܸ(2017) ɹɹ- ࠃަলɺ૯লɺGMO-PGͳͲ
WEBΞϓϦέʔγϣϯͷηΩϡϦςΟରԠਤ ਤܗ࡞ɿdraw.io
IDS / IPSʹ͍ͭͯ IDS / IPS ͱ IDSʹIntrusion Detection Systemʢ৵ೖݕγεςϜʣɻݕग़ޙʹޚાஔΛͱΒͳ͍ɻ
IPSʹIntrusion Prevention Systemʢ৵ೖޚγεςϜʣɻݕग़ޙʹޚાஔΛͱΔɻ IDS / IPS ͕ग़དྷΔ͜ͱ IDS৵ೖΛݕ͠ɺཧऀʹ௨͢Δ͜ͱ͕ओతɻ௨Λड͚ͨཧऀ͕ରࡦΛߨ͡Δඞཁ͕͋ΔͷͰɺ͕͔͔࣌ؒΔɻ IPSIDSʹޚͷػೳΛ༩ɻ৵ೖͷݕͱಉ࣌ʹ௨৴Λःஅ͢ΔͳͲɻ ֎෦͔ΒͷDDos߈ܸͷޚɺ෦͔Β֎෦ͷෆਖ਼ͳ௨৴ͷϒϩοΫͳͲ͕Մೳɻ IDS / IPS ͷछྨ ઃஔॴʹΑͬͯԼهͷछྨ͕͋Δ ʲϗετܕʳ OS͝ͱͷରࡦͱͳΔͨΊɺରίϯϐϡʔλʹݸผʹιϑτΣΞΛΠϯετʔϧ͢Δඞཁ͕͋Δɻ ʲωοτϫʔΫܕʳ ωοτϫʔΫ্ʹஔɻύέοτͷ༰Λผ͢ΔͨΊɺ৵ೖ߈ܸͷରԠ͕ૉૣ͘Ͱ͖Δɻ ͞Βʹઃஔॴ͕ʮϑΝΠΞΥʔϧͷ֎ଆʯʮDMZ্ʯʮ෦ωοτϫʔΫʯͷ̏ύλʔϯ͕͋Δɻ ɹɹ- ϑΝΠΞΥʔϧͷ֎ଆɿϩάऔಘʹΑΔ߈ܸͷѲɺੳ͕ओతɻ ɹɹ- DMZ্ɿϑΝΠΞΥʔϧͰϒϩοΫͰ͖ͳ͔ͬͨ߈ܸͷݕग़ɺޚ͕తɻ ɹɹ- ෦ωοτϫʔΫɿ෦͔Βͷෆਖ਼ͳ௨৴Λࢹ͢Δ͜ͱ͕తɻ
WAFʹ͍ͭͯ WAFʢWeb Application Firewallʣͱ webΞϓϦέʔγϣϯͷ੬ऑੑΛར༻ͨ͠߈ܸ͔ΒwebαΠτΛอޢ͢ΔηΩϡϦςΟରࡦͷͨΊͷޚπʔϧɻ ΞϓϦέʔγϣϯϨϕϧͷηΩϡϦςΟରࡦɻ WAFͷछྨ Ϋϥυܕ / ιϑτΣΞܕʢϗετܕʣ
/ ήʔτΣΠܕʢωοτϫʔΫܕʣ FirewallɺIDS / IPSͱͷҧ͍ FWɿωοτϫʔΫϨϕϧͷରࡦɻύέοτͷৼΓ͚ͷΈͰ௨৴ͷதݟͳ͍ͨΊɺ80/443൪ϙʔτͷਖ਼ৗͳ௨৴Λͬͨ߈ܸʹରԠͰ͖ͳ͍ɻ IDS/IPSɿϓϥοτϑΥʔϜϨϕϧͷରࡦʢOSϛυϧΣΞͷ੬ऑੑରԠͳͲʣɻSQLΠϯδΣΫγϣϯͳͲߴԽͨ͠߈ܸͷݕऑ͍ɻ WAFͰޚՄೳͳ߈ܸʢ˞1ʣ SQLΠϯδΣΫγϣϯɺόοϑΝΦʔόʔϑϩʔɺηογϣϯϋΠδϟοΫɺڧ੍ϒϥζɺOSίϚϯυΠϯδΣΫγϣϯ ύεϫʔυϦετ߈ܸɺXXSɺCSRFɺύϥϝλվ͟ΜɺύετϥόʔαϧɺΤϥʔίʔυ ※1ɿNECʮ InfoCage SiteShell ʯͷ߹
શHTTPSԽʹ͍ͭͯ શHTTPSԽʢৗ࣌HTTPSԽʣͱ WebαΠτͷͯ͢ͷϖʔδΛHTTPSԽʢSSL / TLS҉߸Խʣ͢Δ͜ͱɻ શHTTPSԽͷϝϦοτɾσϝϦοτ ʲϝϦοτʳ ɾηΩϡϦςΟ໘ͷڧԽ ɾݕࡧॱҐͰͷ༏۰ʢgoogleʣ ɾ௨৴ͷ্ʢHTTP/2ར༻࣌ʹHTTPS͕ඞਢʣ
ɾΞΫηεϩάղੳͷਫ਼্ʢϦϑΝϥडͷվળʣ ɾαΠτͷ৴པੑΛΞϐʔϧ ʲσϝϦοτʳ ɾطଘαΠτͷҠߦ࡞ۀͷίετ͕͔͔Δ ɾAdSenseऩӹݮগͷՄೳੑ͕͋Δ ɾSSLূ໌ॻͷൃߦඅ༻ͱӡ༻ίετ͕͔͔Δ ɾSNSͳͲͷιʔγϟϧϘλϯͷΧϯτϦηοτ
ϦόʔεϓϩΩγʹΑΔηΩϡϦςΟରࡦ ϦόʔεϓϩΩγߏʹ͢Δ͜ͱͰɺηΩϡϦςΟڧԽ͕ظग़དྷΔ 90ඵͷಈըͰֶͿITΩʔϫʔυɿϦόʔεϓϩΩγʢReverse Proxyʣ - ˏIT http://www.atmarkit.co.jp/ait/articles/1608/25/news034.html ͦͷଞϦόʔεϓϩΩγͷϝϦοτ - IPΞυϨεͷϑΟϧλϦϯάʢڐՄɺःஅʣ
- URLͷܗ - ෛՙࢄɺϝϞϦ༻ͷ্ʢ੩త / ಈతϦιʔεͷৼΓ͚ʣ - ෳαʔϏεͷαʔό౷߹ - SSLͷूதཧ
αʔόࢹʢOSSπʔϧʣ Munin Ϧιʔε༻ঢ়گͷϞχλϦϯάɻूதཧαʔόͱΫϥΠΞϯτΤʔδΣϯτܕ Nagios ωοτϫʔΫαʔϏεͷࢹɺϗετͷϦιʔεࢹ Zabbix ωοτϫʔΫࢹɺσʔλϕʔεࢹɺԾϚγϯࢹɺγφϦΦΛར༻ͨ͠ΣϒࢹɺZabbixϓϩΩγʹΑΔࢄࢹɺোݕͱΞ ϥʔτ௨ɺZabbixAPIͷఏڙ Pandora FMS
αʔόɾωοτϫʔΫػثͷࢮ׆ࢹɺSNMPࢹͳͲɻWindows ServerΛαϙʔτɻΦʔϓϯιʔε൛ͱEnterprise൛͕͋Δ sensu / uchiwa αʔόɺԾίϯςφɺσʔλϕʔεɺωοτϫʔΫػثɺϦϞʔτϦιʔεࢹͳͲɻuchiwaμογϡϘʔυͷػೳΛఏڙ͢Δผϓϩ μΫτ͕ͩɺ௨ৗsensuͱηοτͰ༻͞ΕΔɻNagiosͷεέʔϧΞτ໘ͰͷղܾͷͨΊʹ࡞ΒΕͨɻ Xymon αʔόɺωοτϫʔΫͷࢹɻSNMPରԠ͕ͩΤʔδΣϯτϨεࢹՄೳɻRRDToolͰࢹσʔλͷཧɺάϥϑදࣔɻ
ʲ͓·͚ʳCSIRTͱ γʔαʔτʢCSIRTɿ Computer Security Incident Response Teamʣ ίϯϐϡʔληΩϡϦςΟʹ͔͔ΔΠϯγσϯτʹରॲ͢ΔͨΊͷ৫ͷ૯শɻ Πϯγσϯτؔ࿈ใɺ੬ऑੑใɺ߈ܸ༧ஹใΛऩूɺੳ͠ɺରԠํखॱͷࡦఆͳͲͷ׆ಈΛ͓͜ͳ͏ɻ ຊγʔαʔτڠٞձͱʛCSIRT
- ຊγʔαʔτڠٞձʢhttp://www.nca.gr.jp/outline/index.htmlʣ ถࠃCERT Coordination CenterʹΑΔ6ྨ ৫CSIRTɿ৫Ͱൃੜͨ͠ΠϯγσϯτʹରԠ ࠃࡍ࿈ܞCSIRTɿຊͰJPCERT/CCͳͲ ίʔσΟωʔγϣϯηϯλʔɿڠྗؔʹ͋ΔଞͷCSIRTͱͷ࿈ܞɾௐ ੳηϯλʔɿΠϯγσϯτͷੳɺϚϧΣΞղੳɺࠟੳɺҙשىͳͲ ϕϯμνʔϜɿࣗࣾͷ੬ऑੑʹରԠ ΠϯγσϯτɾϨεϙϯεϓϩόΠμɿηΩϡϦςΟϕϯμɺSOCʢηΩϡϦςΟΦϖϨʔγϣϯηϯλʔʣࣄۀऀͳͲ େखಋೖࣄྫ େݐઃɺANAγεςϜζɺδϟύϯωοτۜߦɺδΣʔγʔϏʔɺ໌࣏҆ాੜ໋ɺ౦ژిྗϗʔϧσΟϯάεɺJFEϗʔϧσΟϯάε Έͣ΄ϑΟφϯγϟϧάϧʔϓɺSOMPOϗʔϧσΟϯάεɺΦϦϯύεɺϠϚϋൃಈػɺαΠϘζɺઍ༿େֶ etc… αΠόʔ߈ܸͷଟ༷ԽɺଟൃԽ͕ܦӦϦεΫͱͳΔࡢࠓʹ͓͍ͯɺ֤ࣾͱCSIRTͷߏஙΛٸϐονͰਐΊ͍ͯΔ͕ɺηΩϡϦςΟਓࡐٕज़ͷෆɺࣾ֎ ͱͷ࿈ܞɺܦӦݱͷηΩϡϦςΟҙࣝվֵɺνʔϜͷܧଓൃలͳͲ͕՝ͱͳ͍ͬͯΔɻ
ʲ͓·͚ʳϝϧΧϦݸਓใ࿙͍͑ʹݟΔΩϟογϡͷ᠘ 20176݄22ʹൃੜͨ͠ϑϦϚΞϓϦʮϝϧΧϦʯweb൛αΠτͰͷใ࿙͍͑ࣄ݅ɺCDNαʔόͷΓସ͑ʹࡍͯ͠ɺHTTPϨεϙϯ εͷʮCache-ControlϔομʔʯͷઃఆʹΑΓຊདྷΩϟογϡ͞Ε͍͚ͯͳ͍ίϯςϯπ͕Ωϟογϡ͞Εͯ͠·ͬͨ͜ͱ͕ݪҼɻ ◆Γସ͑લͷΩϟογϡઃఆ - CDNଆͰΩϟογϡઃఆʢԼهͷΩϟογϡ͕ແޮʹͳΒͳ͍߹͕͋ΔϨεϙϯεϔομͷઃఆద༻͞Ε͍ͯͳ͔ͬͨʣ ◆Γସ͑ޙͷΩϟογϡઃఆ - ସઌͷCDNϓϩόΠμ͕Cache-ControlϔομͰΩϟογϡΛແޮʹͰ͖ͨͨΊɺCDNଆͰͳ͘nginxʹΑΔઃఆʢԼهʣͷΈͱͨ͠ɻ -
͔ͦ͠͠ͷCDNϓϩόΠμͰΩϟογϡ͕ߦΘΕͳ͍ͷɺCache-Controllϔομ͕ʮprivateʯͷ߹͚ͩͩͬͨɻ - ସॳɺϝϧΧϦͰCache-Controlʹʮno-cacheʯΛઃఆ͍ͯͨ͠ɻno-cacheʮΩϟογϡ͠ͳ͍ʯͰͳ͘ɺʮʢϓϩΩγαʔό Ωϟογϡαʔόʹରͯ͠ʣΩϟογϡʹه͞Εͨίϯςϯπ͕ݱࡏ༗ޮ͔൱͔ΛɺΦϦδϯͷWebαʔόʹ͍߹Θͤͯ֬ೝ͠ͳ͚Ε ࠶ར༻ͯ͠ͳΒͳ͍ʢͱ͍͏ࢦࣔΛ͢Δʣʯͱ͍͏ҙຯͷHTTPϨεϙϯεɻWebαʔό͕ʮ304 Not Modifiedʢมߋͳ͠ʣʯͷεςʔλε ίʔυΛฦ͢ͱɺΩϟογϡ͕ΘΕͯ͠·͏ɻ - ҰํɺCache-Controlʹmax-age·ͨs-maxageͷ͍ͣΕࢦఆ͍ͯ͠ͳ͔ͬͨͨΊɺExpiresϔομ͕࠾༻͞Ε͍ͯͨɻ - ExpiresϔομʹΞΫηεͷ1ඵલͱ͍͏ҙຯͰʮ -1 ʯΛࢦఆ͠ΩϟογϡΛແޮԽ͍͕ͯͨ͠ɺաڈͷ߹0ඵͱͯ͠ѻΘΕ͍ͯͨɻ - Expiresϔομ͕0ඵͷ߹ɺCDN͔ΒΦϦδϯͷϦΫΤετதʹಉ͡URLͷϦΫΤετ͕ൃੜ͢Δͱɺ2ͭҎ߱ͷಉ͡URLͷϦΫΤε τʹಉ͡Ϩεϙϯε͕ฦΔ༷ʹͳ͍ͬͯͨʢʹଞਓͷใؚ͕·ΕΔίϯςϯπ͕ӾཡͰ͖ͯ͠·ͬͨʣ - ΩϟογϡΛ͠ͳ͍Α͏ʹ͢Δʹʮno-storeʯΛࢦఆ͢ΕΑ͍ʢϝϧΧϦସޙͷCDNͷ߹ʮprivateʯͷΈΩϟογϡແޮԽʁʣ - ·ͨCDNͷΩϟογϡݸਓใΛؚ·ͳ͍ը૾js / css ϑΝΠϧʹݶΔΑ͏ʹ͢ΔɺͳͲͷରࡦ͕ߟ͑ΒΕΔɻ
ࢀߟจݙɺαΠτ ͯ͢Θ͔ΔηΩϡϦςΟେશ2018 (ܦBPϜοΫ) ใηΩϡϦςΟ10େڴҖ 2016ɿIPA ಠཱߦ๏ਓ ใॲཧਪਐػߏ https://www.ipa.go.jp/security/vuln/10threats2016.html WebαΠτશମͷHTTPSԽʮৗ࣌SSLʯ͕ඞཁͳཧ༝ͱϝϦοτΛཧղ͠Α͏ :
ϏδωεͱIT׆༻ʹཱͭใ http://www.asobou.co.jp/blog/web/ssl-2 WAFͱʁʛSiteGuardʛΩϠϊϯITιϦϡʔγϣϯζ https://www.canon-its.co.jp/products/siteguard/waf/ 5Ͱઈରʹ͔Δɿ5Ͱઈରʹ͔ΔIDSʗIPS (1/6) - ˏIT http://www.atmarkit.co.jp/ait/articles/0203/16/news001.html idsͱipsͷҧ͍ʛϑϦʔϏοτΫϥυ | ϑϦʔϏοτΫϥυ https://cloud.freebit.com/contents/security/161/ CDNΓସ͑࡞ۀʹ͓͚ΔɺWeb൛ϝϧΧϦͷݸਓใྲྀग़ͷݪҼʹ͖ͭ·ͯ͠ - Mercari Engineering Blog http://tech.mercari.com/entry/2017/06/22/204500 ηΩϡϦςΟରࡦͱͯ͠ͷ Cache-Conrol ϔομʹ͍ͭͯ - ཧܥֶੜه http://kiririmode.hatenablog.jp/entry/20170625/1498389317