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.9k
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
470
全集中Burp extension ISTE v0.5.0 ー Request chain の躍進 / Burp extension ISTE v050
okuken
0
420
DOM Invader - prototype pollution対応の衝撃 - / DOM Invader - prototype pollution
okuken
0
830
npm Security ー サプライチェーン攻撃の観点から ー
okuken
1
680
全集中 Burp extension ISTE リリース1周年記念 - 振り返り - / Burp extension ISTE 1st Anniversary
okuken
0
540
Dangerous usage of JNDI
okuken
0
450
全集中 Burp extension ISTE v0.4リリース / Burp extension ISTE v0.4
okuken
0
480
DOM Invader - Burp Suiteの新機能でJavaScriptに立ち向かう - / DOM Invader
okuken
0
1.6k
#BurpISTEで!SECCON Beginners CTF 2021 Web問に全集中した話 / ctf4b 2021 with ISTE
okuken
1
580
Other Decks in Technology
See All in Technology
AI時代のAPIファースト開発
nagix
2
550
EKSで実践する オブザーバビリティの現在地
honmarkhunt
2
300
今、求められるデータエンジニア
waiwai2111
2
1.4k
LINEアプリ開発のための Claude Code活用基盤の構築
lycorptech_jp
PRO
1
950
マイグレーションガイドに書いてないRiverpod 3移行話
taiju59
0
130
もう怖くないバックグラウンド処理 Background Tasks のすべて - Hakodate.swift #1
kantacky
0
110
I tried making an AI manzai comedy act with "boke" and "tsukkomi" using Strands Agents
zzzzico
1
180
「OSアップデート:年に一度の「大仕事」を乗り切るQA戦略」_Mobile Tech Flex 〜4社合同!私たちのモバイル開発自慢大会〜
gu3
0
230
ローカルでLLMを使ってみよう
kosmosebi
0
190
What's new in Go 1.26?
ciarana
2
200
Getting started with Google Antigravity
meteatamel
0
360
AI Coding Agentの地殻変動 ~ ai-coding.info の定点観測 ~
kotauchisunsun
0
330
Featured
See All Featured
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Test your architecture with Archunit
thirion
1
2.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
320
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
450
AI: The stuff that nobody shows you
jnunemaker
PRO
3
330
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Tell your own story through comics
letsgokoyo
1
820
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
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