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
XSSについて説明します
Search
hirari123
March 18, 2021
Programming
0
75
XSSについて説明します
非エンジニアがXSS(クロスサイトスクリプティング)について調べてみて説明しました。
hirari123
March 18, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
260
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
180
Go製CLIツールをnpmで配布するには
syumai
2
1.1k
あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known
ktr_0731
0
220
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
930
書き捨てではなく継続開発可能なコードをAIコーディングエージェントで書くために意識していること
shuyakinjo
0
190
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
実践!App Intents対応
yuukiw00w
0
120
Terraform やるなら公式スタイルガイドを読もう 〜重要項目 10選〜
hiyanger
11
2.8k
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
780
Workers を定期実行する方法は一つじゃない
rokuosan
0
140
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
870
Designing for humans not robots
tammielis
253
25k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How GitHub (no longer) Works
holman
314
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Scaling GitHub
holman
461
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Transcript
ฏɹଠ XSSʹ͍ͭͯઆ໌͠·͢ɻ
XSSͬͯԿͧ🤔 • XSS(ΫϩεαΠτεΫϦϓςΟϯά) ܝࣔ൘αΠτTwitterͷΑ͏ͳɺϢʔβʔ͔Βͷೖྗ༰ʹΑͬͯද͕ࣔಈతʹมΘΔ WebϖʔδWebΞϓϦέʔγϣϯʹ͓͍ͯɺWebαΠτʢඪతαΠτʣͷ੬ऑੑ ʢXSS੬ऑੑʣΛར༻ͨ͠߈ܸख๏Λࢦ͢ɻ
߈ܸͷྲྀΕ ᶄϢʔβʔ͕ܝࣔ൘αΠτBΛӾཡ͢Δɻ ᶃ߈ܸऀC͕XSSʹରͯ͠੬ऑੑͷ͋ΔAࣾΛൃݟ͠ɺAࣾʹ ڵຯΛ࣋ͪͦ͏ͳϢʔβʔͷ͍Δܝࣔ൘αΠτBʹ᠘Λֻ͚Δ (ྫɿεΫϦϓτ͖ϦϯΫΛషΔͳͲ) ᶅܝࣔ൘αΠτBͰεΫϦϓτ࣮ߦ ᶆϢʔβʔεΫϦϓτใΛ࣋ͬͨ··AࣾͷϖʔδʹҠಈ ʢΫϩεαΠτʣ͢Δɻ ᶇεΫϦϓτͷޮՌʹΑΓʮAࣾͷαΠτͱͯ͠ʯදࣔ͞Εͨ ِαΠτʹδϟϯϓ͢Δɻὃ͞ΕͨϢʔβʔ͕ใΛೖྗͨ͠
݁ՌɺεΫϦϓτ͕ѱ͞Λ͢Δ ᶈ߈ܸऀCͷखʹΑΓɺϢʔβʔʹର༷ͯ͠ʑͳඃ͕ൃੜ ʢϚϧΣΞײછɾ߈ܸऀCͷใ࿙ӮͳͲʣ ࣹܕXSS
߈ܸͷݪҼ XSSͷࠜຊతͳݪҼɺ߈ܸऀ͕ෆਖ਼ͳεΫϦϓτΛૠೖ͢Δ͜ ͱ͕Ͱ͖ΔڥΛ༩͑ͯ͠·͏͜ͱʹ͋Δɻ XSSʹରͯ͠੬ऑੑΛ࣋ͭಈతαΠτͷ์ஔͰ͋Δɻ ͜ͷεΫϦϓτจষʹɺΤϯυϢʔβʔଆ͕อ༗͢Δݸਓใ ΛඪతαΠτͱผͷαΠτʹૹ৴͢ΔΑ͏ʹઃఆ͞Ε͓ͯΓɺ ͜Ε͕తͳඃΛੜΈग़͢ݪҼͱͳ͍ͬͯΔɻ
߈ܸඃͷӨڹ XSSʹΑΔ߈ܸɺඪతαΠτͷΤϯυϢʔβʔ͕ඃΛड͚Δ͜ ͱͰൃੜ͢Δɻදతͳඃྫͱͯ͠ɺ •CookieใΛར༻ͨ͠ɺͳΓ͢·͠ͷෆਖ਼ΞΫηε (ηογϣϯϋΠδϟοΫ) •HTMLλάΛͬͨೖྗϑΥʔϜʹΑΔใऩू •ِαΠτΛͬͨϑΟογϯάٗ
ඃࣄྫ YouTubeෆਖ਼ΞΫηεࣄ݅ (2010/7/4ʙ7/5) ถYouTubeΛૂͬͨ߈ܸ͕ൃੜ͠ɺγϣοΫͳ σϚ͕ྲྀΕͨΓɺίϝϯτ͕දࣔ͞Εͳ͘ͳΔ ͳͲͷӨڹ͕͕ͬͨɻ χϡʔεใ!! ՎखͷδϟεςΟϯɾϏʔόʔ͕ ަ௨ࣄނͰࢮ
ඃࣄྫ ͜ͷ߈ܸͰYouTubeͷίϝϯτγεςϜʹଘࡏ͢ΔXSSͷ੬ऑੑ͕ ѱ༻͞Εͨɻ ۩ମతʹɺίϝϯτΞϓϦέʔγϣϯͷग़ྗσʔλͷ҉߸Խॲཧʹ ͕ଘࡏ͓ͯ͠Γɺ͜ΕΛಥ͍ͯ߈ܸऀ͕CookieΛ౪Έɺ JavaScriptίʔυΛࠐΜͰϢʔβʔͷWebϒϥβͰ࣮ߦ͞ΕΔ͜ ͱ͕Ͱ͖ͯ͠·ͬͨͱݟΒΕΔɻ ͦͷଞʹෆਖ਼ͳϙοϓΞοϓ͕ग़ͨΓɺѱझຯͳWEBαΠτʹϦμ ΠϨΫτ͞ΕͨΓ͢Δέʔε͕૬͍࣍Ͱ͍ͨͱݴΘΕ͍ͯΔɻ
WebαΠτͷ੬ऑੑͷछྨผͷಧग़ঢ়گ 2019ୈ4࢛ظ(10݄ʙ12݄)
߈ܸ͞Εͳ͍ͨΊͷରࡦ 1.ೖྗͷ੍ݶ ྫɿIDύεϫʔυΛೖྗ͢ΔϑΥʔϜͰʮ֯ӳࣈ◦จࣈ·Ͱʯ ͳͲ੍ݶ͢Δ αʔόʔଆͰͷೖྗͷ੍ݶΛ͢ΔͨΊʹJavaScriptΛͬͯϢʔβʔଆͷ ϒϥβͰߦΘͤΔํ๏͋Δ͕ɺϢʔβʔ͕JavaScriptΛແޮʹ͍ͯ͠Ε ೖྗͷ੍ݶ͕ߦΘΕͳ͍ͷͰXSS߈ܸͷରʹͳΒͳ͍ɻ
߈ܸ͞Εͳ͍ͨΊͷରࡦ 2.αχλΠδϯά(Τεέʔϓ) αΠτͷϑΥʔϜͳͲεΫϦϓτͷߏʹඞཁͱͳΔจࣈ͕ೖྗ͞Εͨ߹ʹɺ ͦͷจࣈΛผͷจࣈॻ͖͑ͯ͠·͏ख๏ͷ͜ͱɻ ͜ΕʹΑΓɺԾʹ߈ܸऀ͕εΫϦϓτΛຒΊࠐ͏ͱͯ͠ແޮԽ͢Δ͜ͱ͕Ͱ͖ Δɻ ରͷจࣈ ฦؐޙͷจࣈྻ < <
> > & & “ " ‘ #39; αχλΠδϯά͖͢จࣈڥʹΑͬͯҟͳΔ͕ɺ ӈͷද͕දతͳྫͰ͢ɻ
߈ܸ͞Εͳ͍ͨΊͷରࡦ 3.WAF(Web Application Firewall)ͷઃఆ WebΞϓϦέʔγϣϯઐ༻ͷϑΝΠΞΥʔϧͰ͋Δɻ ϑΝΠΞΥʔϧͱ͍͏ͱɺϙʔτ൪߸IPΞυϨεͳͲʹΑΓ߈ܸΛޚ͢Δ ωοτϫʔΫϨϕϧͷํ͕Α͘ΒΕ͍ͯΔɻ͕ͩɺܝࣔ൘ͳͲͰೖྗ͞Εͨ ༰·ͰνΣοΫ͠ͳ͍ɻͦ͜Ͱ͜ͷWAF͕ඞཁʹͳΔɻ WAFɺWebΞϓϦέʔγϣϯʹର͢Δ௨৴༰ΛνΣοΫ͠ɺٙΘ͍͠༰͕ ͋ΕϒϩοΫ͢Δ͜ͱ͕ՄೳͰ͋Δɻ
੬ऑੑΛѲ͓ͯ͜͠͏ • XSSͷ੬ऑੑɺ։ൃऀଆ͕ιʔείʔυΛ֬ೝ͢Δ͜ͱͰ੬ऑੑΛνΣοΫ͢Δ͜ ͱՄೳͰ͋Δɻ • ੬ऑੑΛ࡞Γࠐ·ͳ͍Α͏։ൃ͢ΔͨΊʹɺIPA(ಠཱߦ๏ਓɹใॲཧਪਐػߏ) ͕ެ։͍ͯ͠Δʮ҆શͳΣϒαΠτͷ࡞ΓํʯʮIPA ISEC ηΩϡΞɾϓϩάϥ ϛϯάߨ࠲ʯΛࢀߟʹ্ͨ͠ɺඞཁͳ҆શରࡦΛ࣮ࢪͯ͠ɺ։ൃΛҕୗ͢Δ߹ʹ
ࣗࣾͰ։ൃ͢Δ߹ͱಉ༷ʹ͜ΕΒͷରࡦΛ࣮ࢪ͢Δ͜ͱΦεεϝͰ͢ɻ
·ͱΊ • XSS͕ඇৗʹةݥͳαʔόʔ߈ܸͰ͋Δ͜ͱɺաڈͷେنͳෆਖ਼ΞΫηεࣄ͔݅ Β໌Β͔Ͱ͋Δɻ • ݸਓใͷऩूΛతͱͨ͠߈ܸऀʹΑΓ࣮ߦ͞ΕΔͱɺଟେͳΔඃΛٴ΅͢͜ͱ ʹͳͬͯ͠·͏ɻ • ࠜຊతͳରࡦઃܭ࣌ͷεΫϦϓτ͔Βݟ͢ඞཁ͕͋ΔͨΊʹඇৗʹ͍͠ͳ ͷͰɺαΠτͷ੍࡞ऀ͔ͬ͠ΓͱใΛௐ͔ࠪͯ͠Βͷ࡞͕ඞཁͰ͋Δɻ
• ϢʔβʔଆΤϯυϙΠϯτͷηΩϡϦςΟιϑτΛಋೖ͢ΔͳͲɺجຊతͳηΩϡ ϦςΟରࡦߦ͓ͬͯ͘͜ͱ͕ॏཁͰ͋Δɻ
ࢀߟʹͨ͠αΠτɾॻ੶ • αΠτ ɹCyber security.com ʮΫϩεαΠτεΫϦϓςΟϯάͱ?ʯΈࣄྫ͔Βߟ͑Δରࡦ • ॻ੶ ʰ҆શͳWebΞϓϦέʔγϣϯͷ࡞Γํʱ120ʙ149ϖʔδ
🙇͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠🙇