Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ペパコンナイト:セキュリティWG成果報告 / pepacon night: security ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Komei Nomura
May 13, 2019
Research
1.9k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ペパコンナイト:セキュリティWG成果報告 / pepacon night: security working group report
ペパコンナイト :
https://pepabo.connpass.com/event/128486/
Komei Nomura
May 13, 2019
More Decks by Komei Nomura
See All by Komei Nomura
さくらのクラウドでのcloud-initの実装と利用例の紹介 / Implementation of cloud-init in SAKURA Cloud and introduction of usage examples
komei22
3
1.4k
Kerasによるモデル構築 / Model-building-with-Keras
komei22
0
7.2k
ハンドメイド作品を対象としたECサイトにおける単語の出現頻度を用いた稀覯品の検出 / Detection of Rare Works Using Term Frequency on Electronic Commerce Site for Trading Handmade Works
komei22
1
1k
Automatic Whitelist Generation for SQL Queries Using Web Application Tests
komei22
3
1.6k
Webアプリケーションテストを用いたSQLクエリのホワイトリスト自動作成手法 / Automatic whitelist generation for SQL queries using web application tests
komei22
2
1.2k
不正クエリを検知するsqdを作った
komei22
1
930
Webアプリケーションテストを用いたSQLクエリのホワイトリスト自動作成手法
komei22
0
6.2k
Webアプリケーションテストを用いたSQLクエリのホワイトリスト自動作成手法
komei22
0
1.6k
新卒研究員の研究開発 〜セキュアなWebサービスを目指して〜
komei22
0
2k
Other Decks in Research
See All in Research
山中市政が招いた組織崩壊:よこはま安心ボックスを例に
sishi
0
350
論文読み会 SNLP2026 Tau2-Bench: Evaluating Conversational Agents in a Dual-Control Environment
s_mizuki_nlp
0
310
GLIM とMegaParticles:正規分布近似の限界とタイトカップリング&パーティクルフィルタの進展 / GLIM and MegaParticles : Progress of the distribution representation in SLAM
koide3
0
970
XDPerf: A High-Performance Traffic Generator Built with WASM and eBPF
takehaya
1
350
Cross-Media Human-Information Interaction
signer
PRO
0
290
Santé et fertilité des sols : ce que nous disent les pratiques dans les systèmes de polyculture-élevage
institutdelelevage
PRO
0
140
Visual SLAM未来予測 / Future Prediction in Visual SLAM
koide3
1
1.3k
MIRU2026 チュートリアル講演2:三次元データ処理の動向
nnchiba
8
5.4k
Physical AIでモデリングはどう変わるか/How Physical AI Will Change Modeling
stktu
0
310
横浜市長(山中氏)の言動にかかる第三者による調査報告書
sishi2026
0
660
Model Predictive Control for Uncertain Systems: Robust & Data-Driven Designs
kohlerjohannes
0
180
COMETAを用いたデータ民主化運動の歴史
sazimai
0
290
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
41
2.8k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
500
30 Presentation Tips
portentint
PRO
1
430
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
How STYLIGHT went responsive
nonsquared
100
6.3k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
First, design no harm
axbom
PRO
2
1.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
400
Transcript
ଜ໋ / Pepabo R&D institute, GMO pepabo, inc. 2019.05.13 ϖύίϯφΠτ
ηΩϡϦςΟWGՌใࠂ ʙͳΊΒ͔ͳηΩϡϦςΟΛࢦͯ͠ʙ
2 ΤϯδχΞ ଜ໋!,PNFJ (.0ϖύϘגࣜձࣾɹϖύϘݚڀॴ
1. ηΩϡϦςΟWGͱͳΊΒ͔ͳηΩϡϦςΟ 2. ݚڀͷհ 3. ·ͱΊͱࠓޙ 3 ࣍
1. ηΩϡϦςΟWGͱͳΊΒ͔ͳηΩϡϦςΟ
• ݚڀର • ిࢠূ໌ॻͷར׆༻ • TLS1.3ରԠ • TLS/SSLͷ҆શੑͱػձଛࣦ • WebηΩϡϦςΟ
• ߴػೳ҉߸Ԡ༻ 5 ηΩϡϦςΟWG
6 ͳΊΒ͔ͳηΩϡϦςΟʹ͓͚ΔηΩϡϦςΟWG ηΩϡϦςΟ8(ɼηΩϡϦςΟࢪࡦΛ࣮ݱ͢ΔϚΠΫϩίϯϙʔωϯτΛ࡞Γग़͢͜ͱʹ୲ ͜ͷࡍॏཁͳͷɼηΩϡϦςΟରࡦಋೖʹΑΔརศੑͷԼʢΰπΰπʣΛൃੜͤ͞ͳ͍͜ͱ
7 ηΩϡϦςΟࢪࡦಋೖʹ͓͚Δΰπΰπ Ϣʔβ ӡ༻։ൃऀ ίΞαʔϏε ӡ༻։ൃऀଆͷΰπΰπ Ϣʔβଆͷΰπΰπ ͳΊΒ͔ͳηΩϡϦςΟʹ͓͍ͯɼ&EHFར༻ऀʹӨڹΛ༩͑ͣʹ࣮ݱ͢Δ͜ͱ͕ॏཁ &EHF w
ࢪࡦಋೖʹΑΔγεςϜߏͷมߋ w ηΩϡϦςΟͷϝϯςφϯε ʜ w ਖ਼ৗͳϦΫΤετΛޡݕ w ϨεϙϯεͷԼ ʜ &EHF ใγεςϜ
• ͳΊΒ͔ͳηΩϡϦςΟ࣮ݱʹ͚ͨɼηΩϡϦςΟWGͷݚڀࣄྫͱOSSͷ հ • ݚڀࣄྫɿ • ʮWebΞϓϦέʔγϣϯςετΛ༻͍ͨSQLΫΤϦͷϗϫΠτϦετࣗಈ ੜख๏ʯ • OSSɿ
• tcpdp : TCPύέοτΛղੳͯ͠ߏԽϩάΛग़ྗ͢Δπʔϧ • sqd : SQLͷϗϫΠτϦετ࡞ͱෆਖ਼ΫΤϦݕπʔϧ 8 ຊͷ͓
2. ݚڀͷհ
• WebαʔϏεʹ͓͍ͯσʔλϕʔε্ͷػີใͷอޢॏཁ • ߈ܸऀWebΞϓϦέʔγϣϯͷ੬ऑੑΛ͡Ίͱ༷ͯ͠ʑͳखஈͰػີ ใΛऔ • ߈ܸͷྫɿSQLΠϯδΣΫγϣϯɼOSίϚϯυΠϯδΣΫγϣϯͳͲ • σʔλϕʔεͷ߈ܸ։ൃऀͷఆ֎ͷΫΤϦʢෆਖ਼ΫΤϦʣΛσʔλϕʔ εʹൃߦ͢Δ͜ͱͰ࣮ࢪ
• σʔλϕʔεʹൃߦ͞ΕΔΫΤϦΛࢹ͠ෆਖ਼ΫΤϦΛݕ͢ΔΈ͕ඞཁ 10 ݚڀͷഎܠ
• ϒϥοΫϦετํࣜ • ෆਖ਼ͳΫΤϦύλʔϯΛϦετʹఆٛ͠ɼύλʔϯͱ߹க͢ΔͷΛݕ͢Δ • ϗϫΠτϦετํࣜ • ਖ਼ৗͳΫΤϦύλʔϯΛϦετʹఆٛ͠ɼύλʔϯͱ߹க͠ͳ͍ͷΛݕ͢Δ ϒϥοΫϦετͷΈར༻Ͱطͷύλʔϯ͔͠ݕͰ͖ͳ͍͕ɼෆਖ਼ΫΤϦʹະ ͷύλʔϯ͋ΓಘΔ
ະͷύλʔϯͷݕʹϗϫΠτϦετ͕ඞཁͱͳΔ 11 ෆਖ਼ΫΤϦͷݕํ๏
• WebΞϓϦέʔγϣϯ͕ൃߦ͢ΔΫΤϦΛखಈͰϗϫΠτϦετʹొ • େنͳWebΞϓϦέʔγϣϯͰൃߦΫΤϦ͕େ → શͯͷΫΤϦΛϗϫΠτϦετʹొ͢Δ͜ͱ͕ࠔ • WebΞϓϦέʔγϣϯͷվमʹΑͬͯൃߦΫΤϦมԽ → ϗϫΠτϦετͷߋ৽͕ඞཁ
12 ϗϫΠτϦετ࡞ͱͦͷ՝ ӡ༻ऀͷෛՙ͕ߴ͍ ӡ༻ऀͱใγεςϜ͕ؒΰπΰπͨ͠ঢ়ଶ
• ։ൃӡ༻ऀ͕ϗϫΠτϦετͷ࡞Λҙࣝ͢Δ͜ͱͳ͘࡞Ͱ͖ɼϗϫΠτϦ ετΛ༻͍ͯෆਖ਼ΫΤϦΛݕ͢ΔΈͷ࣮ݱ • ϗϫΠτϦετWebΞϓϦέʔγϣϯͷൃߦΫΤϦͷมߋʹै͠ͳ͕ ΒࣗಈͰ࡞͢Δඞཁ͕͋Δ 13 ݚڀͷత
• WebΞϓϦέʔγϣϯͷςετ࣌ʹൃߦ͞ΕͨΫΤϦ͔ΒϗϫΠτϦετΛ ࡞͢Δ • ࣗಈςετΛ༻͍ͨ։ൃϓϩηεʹϗϫΠτϦετ࡞ΛΈࠐΉ • ΫΤϦͷऩूσʔλϕʔεϓϩΩγͰߦ͍ɼऩूͨ͠ΫΤϦ͔ΒϗϫΠτ ϦετΛ࡞͢Δ 14 ఏҊख๏ͷ֓ཁ
15 ࣗಈςετΛ༻͍ͨ։ൃϓϩηε w ৽ػೳͷՃ w طଘػೳͷमਖ਼ w 8FCΞϓϦέʔγϣϯͷಈ࡞खॱͱಈ࡞ͷ݁ՌΛهड़ w ςετίʔυΛݩʹࣗಈͰςετΛ࣮ߦ
w 8FCΞϓϦͷಈ࡞͕༷௨Γ͔Λ֬ೝ w ςετࣦഊɿ8FCΞϓϦέʔγϣϯͷιʔείʔυ ͘͠ςετίʔυʹ͋Γ w ςετޭɿ8FCΞϓϦέʔγϣϯ͕༷௨Γʹಈ࡞ w 8FCΞϓϦέʔγϣϯͷιʔείʔυΛαʔόʹஔ w 8FCΞϓϦέʔγϣϯΛՔಇ ։ൃ ςετίʔυͷهड़ αʔόʔʹஔ ࣗಈςετ࣮ߦ /P :FT ΞϓϦέʔγϣϯՔಇ ςετޭʁ
16 w ςετ࣌ʹൃߦ͞ΕͨΫΤϦ͔ΒϗϫΠτϦετΛ ࡞ w ҎԼΛͦΕͧΕαʔόʹஔ w 8FCΞϓϦέʔγϣϯͷιʔείʔυ w ϗϫΠτϦετ
։ൃϓϩηεʹ͓͚ΔఏҊख๏ͷҐஔ͚ w 8FCΞϓϦέʔγϣϯͷมߋʹैͯ͠ςετίʔυ มߋ ˠൃߦΫΤϦͷมԽʹैͯ͠ϗϫΠτϦετΛߋ৽ w 8FCΞϓϦέʔγϣϯՔಈલʹϗϫΠτϦετ࡞ ˠՔಈޙɼଈ࠲ʹෆਖ਼ΫΤϦΛݕՄೳ ։ൃ ςετίʔυͷهड़ αʔόʔʹஔ /P :FT ΞϓϦέʔγϣϯՔಇ ςετޭʁ ΫΤϦͷऩू `ࣗಈςετ࣮ߦ ϗϫΠτϦετ࡞
17 ఏҊख๏ͷઃܭ • σʔλϕʔεͷલஈʹσʔλϕʔεϓϩΩγΛஔ͠ɼςετ࣮ߦதʹൃߦ͞Ε ͨΫΤϦΛऩू • ΫΤϦ͔ΒϗϫΠτϦετΛ࡞Δ͜ͱͰɼWebΞϓϦέʔγϣϯͷ࣮ʹґଘͤ ͣɼϗϫΠτϦετΛ࡞Մೳ ςετ࣮ߦத σʔλϕʔε
8FCΞϓϦέʔγϣϯ σʔλϕʔεϓϩΩγ ϗϫΠτϦετ ΫΤϦͷऩूͱ ϗϫΠτϦετͷग़ྗ ΫΤϦ ΫΤϦ
18 ఏҊख๏ͷઃܭ • WebΞϓϦέʔγϣϯՔಇதൃߦΫΤϦͱϗϫΠτϦετΛর߹͠ɼෆਖ਼ΫΤ ϦΛݕ σʔλϕʔε 8FCΞϓϦέʔγϣϯ σʔλϕʔεϓϩΩγ 8FCΞϓϦέʔγϣϯՔಇத ΫΤϦ
ΫΤϦ ΫΤϦΛϗϫΠτϦετͱর߹ ෆਖ਼ΫΤϦ ग़ྗ ϗϫΠτϦετ
OSSͷհ
• TCPύέοτΛΩϟϓνϟɾղੳͯ͠ɼߏԽϩάͱͯ͠ग़ྗ͢Δπʔϧ • MySQL, PostgreSQLͷϓϩτίϧʹରԠ • σʔλϕʔεϓϩΩγͱͯ͠ར༻ʢtcpdumpͷΑ͏ʹར༻Մೳʣ 20 tcpdp UDQEQ
σʔλϕʔε ΫϥΠΞϯτ ΫΤϦ UDQEQIUUQTHJUIVCDPNL-P8UDQEQ ΫΤϦ ߏԽϩά \ RVFSZl4&-&$5 '30.VTFST8)&3&JEz DMJFOU@BEESl VTFSOBNFlBQQz ʜ ^
• SQLͷϗϫΠτϦετ࡞ͱෆਖ਼ΫΤϦͷݕΛߦ͏πʔϧ 21 sqd ΫΤϦϩά ϗϫΠτϦετͷ࡞ ෆਖ਼ΫΤϦͷݕ TRE ϗϫΠτϦετ 4&-&$5
'30.VTFST8)&3&JE 4&-&$5 '30.VTFST8)&3&OBNF %&-&5&'30.VTFST8)&3&OBNF ʜ ΫΤϦͷϦςϥϧΛ ϓϨʔεϗϧμʔʹஔ͖͑ͨ ΫΤϦߏʹม 4&-&$5 '30.VTFST8)&3&JE 4&-&$5 '30.VTFST8)&3&JE ΫΤϦϩά TRE ϗϫΠτϦετ TREIUUQTHJUIVCDPN,PNFJTRE ΫΤϦߏϕʔεͰͷൺֱ ෆਖ਼ΫΤϦ
• ςετ࣌tcpdpͰऩूͨ͠ΫΤϦ͔Βsqd͕ϗϫΠτϦετΛग़ྗ • WebΞϓϦέʔγϣϯՔಇ࣌tcpdp͕ऩूͨ͠ΫΤϦ͔Βෆਖ਼ΫΤϦΛग़ྗ 22 tcpdp + sqdΛ༻͍ͨఏҊख๏ͷ࣮ UDQEQ σʔλϕʔε
8FCΞϓϦέʔγϣϯ ΫΤϦ TRE ΫΤϦϩά ϗϫΠτϦετ ςετ࣌ 8FCΞϓϦέʔγϣϯՔಈ࣌ ෆਖ਼ΫΤϦ ΫΤϦ ςετ࣌ͱ8FCΞϓϦέʔγϣϯՔಇ࣌Ͱ TREͷಈ࡞ΛΓସ͑
ධՁ
• ఏҊख๏ʹΑͬͯෆਖ਼ΫΤϦΛݕͰ͖Δ͔ɼWebΞϓϦέʔγϣϯ͕ൃߦ ͢Δਖ਼ৗͳΫΤϦΛޡݕ͠ͳ͍͔ɼΛ࣮ݧʹΑΓ֬ೝ͢Δ • ҎԼͷ2ͭͷධՁࢦඪΛఆٛ͢Δ • False positive: WebΞϓϦέʔγϣϯ͕ൃߦ͢Δਖ਼ৗͳΫΤϦΛޡͬͯෆਖ਼ ͱஅ͢Δ͜ͱ
• False negative: ߈ܸʹΑͬͯൃੜ͢Δෆਖ਼ΫΤϦΛޡͬͯਖ਼ৗͱஅ͢Δ ͜ͱ 24 ධՁํ๏
25 ࣮ݧํ๏ 8FC "QQMJDBUJPO %BUBCBTF ϒϥβ TRMNBQ ʢ42-ΠϯδΣΫγϣϯ߈ܸΛߦ͏πʔϧʣ ϖʔδΛཏతʹૢ࡞͠ )551ϦΫΤετ
42-ΠϯδΣΫγϣϯ߈ܸΛؚΜͩ )551ϦΫΤετ ਖ਼ৗͳΫΤϦʢݸʣ ෆਖ਼ͳΫΤϦʢݸʣ ݕ͞Εͨਖ਼ৗͳΫΤϦ ΛΧϯτ ʢ'BMTFQPTJUJWFʣ ݕͰ͖ͳ͔ͬͨ ෆਖ਼ͳΫΤϦΛΧϯτ ʢ'BMTFOFHBUJWFʣ ˞8FCΞϓϦέʔγϣϯʹ42-ΠϯδΣΫγϣϯͷ੬ऑੑ͕͋Γɼશͯͷ࣮ϝιουʹςετ͕هड़ͯ͋͠Δ ϗϫΠτϦετ ϗϫΠτϦετ র߹ র߹
• ਖ਼ৗͳΫΤϦͷҰ෦Λޡݕ • SQLΠϯδΣΫγϣϯʹΑΔෆਖ਼ΫΤϦΛશͯݕ 26 ࣮ݧ݁Ռ σʔληοτ ΫΤϦ 'BMTFQPTJUJWF 'BMTFOFHBUJWF
ਖ਼ৗͳΫΤϦ ෆਖ਼ΫΤϦ ʢ42-ΠϯδΣΫγϣϯʣ
3. ·ͱΊͱࠓޙ
• ͳΊΒ͔ͳηΩϡϦςΟʹ͚ͨηΩϡϦςΟWGͷऔΓΈΛհ • Edgeʹஔ͢ΔϚΠΫϩίϯϙʔωϯτͱͯ͠ɼʮWebΞϓϦέʔγϣϯς ετΛ༻͍ͨSQLΫΤϦͷϗϫΠτϦετͷࣗಈ࡞ख๏ʯΛհ • ࠓޙɼϢʔβͷଐੑʹΑͬͯར༻͢ΔϗϫΠτϦετΛΓସ͑ɼΑΓύʔ ιφϥΠζԽ͞ΕͨίϯϙʔωϯτΛࢦ͢ 28 ·ͱΊͱࠓޙ
ݚڀһɺੵۃతʹืूதʂ http://rand.pepabo.com/