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 Messaging のセキュリティ - DOM Invaderを添えて - / We...
Search
okuken
September 30, 2021
Technology
0
2.8k
Web Messaging のセキュリティ - DOM Invaderを添えて - / Web Messaging Security
Web Messaging のセキュリティについての簡単な説明と、デモを行います。
デモで使用するコードはGitHubで公開しています。
okuken
September 30, 2021
Tweet
Share
More Decks by okuken
See All by okuken
全集中Burp extension ISTE勉強会 第1回 / Burp ISTE study 01
okuken
0
400
全集中Burp extension ISTE v0.5.0 ー Request chain の躍進 / Burp extension ISTE v050
okuken
0
390
DOM Invader - prototype pollution対応の衝撃 - / DOM Invader - prototype pollution
okuken
0
790
npm Security ー サプライチェーン攻撃の観点から ー
okuken
1
630
全集中 Burp extension ISTE リリース1周年記念 - 振り返り - / Burp extension ISTE 1st Anniversary
okuken
0
510
Dangerous usage of JNDI
okuken
0
420
全集中 Burp extension ISTE v0.4リリース / Burp extension ISTE v0.4
okuken
0
440
DOM Invader - Burp Suiteの新機能でJavaScriptに立ち向かう - / DOM Invader
okuken
0
1.5k
#BurpISTEで!SECCON Beginners CTF 2021 Web問に全集中した話 / ctf4b 2021 with ISTE
okuken
1
540
Other Decks in Technology
See All in Technology
マルチプロダクト環境におけるSREの役割 / SRE NEXT 2025 lunch session
sugamasao
1
730
ClaudeCode_vs_GeminiCLI_Terraformで比較してみた
tkikuchi
1
1k
「現場で活躍するAIエージェント」を実現するチームと開発プロセス
tkikuchi1002
3
320
安定した基盤システムのためのライブラリ選定
kakehashi
PRO
3
130
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
18
7.6k
ロールが細分化された組織でSREは何をするか?
tgidgd
1
420
ClaudeCodeにキレない技術
gtnao
1
860
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
0
110
LLM拡張解体新書/llm-extension-deep-dive
oracle4engineer
PRO
23
6.2k
Talk to Someone At Delta Airlines™️ USA Contact Numbers
travelcarecenter
0
160
無理しない AI 活用サービス / #jazug
koudaiii
0
100
AIでテストプロセス自動化に挑戦する
sakatakazunori
1
530
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Speed Design
sergeychernyshev
32
1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
990
Become a Pro
speakerdeck
PRO
29
5.4k
Documentation Writing (for coders)
carmenintech
72
4.9k
What's in a price? How to price your products and services
michaelherold
246
12k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
How to train your dragon (web standard)
notwaldorf
96
6.1k
GraphQLとの向き合い方2022年版
quramy
49
14k
Navigating Team Friction
lara
187
15k
Transcript
Web Messaging のセキュリティ -DOM Invader を添えて- @okuken3 2021.09.30 第11回 初心者のためのセキュリティ勉強会
0. 自己紹介 1. Web Messaging とは 2. Web Messaging のセキュリティ
3. デモ 4. 参考サイト Agenda
NO IMAGE Kenichi Okuno Twitter: @okuken3 略歴 1. SIerで色々 2.
業務パッケージベンダで開発 3. Web事業会社でプロダクトセキュリティチーム立上げ 4. 情報セキュリティサービス会社でWeb脆弱性診断 最近の出来事 ・家庭内RPA 1ネタ運用開始 ・ISTE v0.4.0 近日リリース予定
1. Web Messaging とは ✓ HTML5で導入されたAPI ✓ 異なるOriginのWindowオブジェクト間で メッセージのやりとりができる
1. Web Messaging とは iframe https://a.example.com https://a.example.com https://b.example.com message message
2. Web Messaging のセキュリティ ✓ 想定内の相手(Origin)とだけやりとりする ・送信時:送信先のOriginを指定する ・受信時:送信元のOriginを確認する ✓ 悪意を前提としてメッセージを扱う
・相手のサイトが攻撃者の手に落ちている可能性も考慮する
3. デモ ・Cross-document messaging https://github.com/okuken/sectest_html5/tree/main/01_cross-document_messaging ・Channel messaging https://github.com/okuken/sectest_html5/tree/main/02_channel_messaging
(補足) DOM Invader の機能 DOM-based XSS 関連 ・カナリアによるシンク/ソース検出 ・カナリアの自動挿入 ・イベントの自動発火
・リダイレクト防止 Web Messaging 関連 ・postMessage のキャプチャ ・脆弱性スキャン ・カナリアの自動挿入 ・Messageのリピート送信 ・Messageの自動生成/送信 ・Originのスプーフィング DOM Invader 本日はこちらを使用
None
None
4. 参考サイト https://html.spec.whatwg.org/multipage/web-messaging.html https://developer.mozilla.org/ja/docs/Web/API/Window/postMessage https://developer.mozilla.org/ja/docs/Web/API/MessageChannel https://cheatsheetseries.owasp.org/cheatsheets/HTML5_Security_Cheat_Sheet.html https://owasp.org/www-project-web-security-testing-guide/stable/4- Web_Application_Security_Testing/11-Client-side_Testing/11-Testing_Web_Messaging
None