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を添えて - / Web Messaging Security
Search
okuken
September 30, 2021
Technology
0
2.7k
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
240
全集中Burp extension ISTE v0.5.0 ー Request chain の躍進 / Burp extension ISTE v050
okuken
0
290
DOM Invader - prototype pollution対応の衝撃 - / DOM Invader - prototype pollution
okuken
0
610
npm Security ー サプライチェーン攻撃の観点から ー
okuken
1
500
全集中 Burp extension ISTE リリース1周年記念 - 振り返り - / Burp extension ISTE 1st Anniversary
okuken
0
360
Dangerous usage of JNDI
okuken
0
340
全集中 Burp extension ISTE v0.4リリース / Burp extension ISTE v0.4
okuken
0
360
DOM Invader - Burp Suiteの新機能でJavaScriptに立ち向かう - / DOM Invader
okuken
0
1.1k
#BurpISTEで!SECCON Beginners CTF 2021 Web問に全集中した話 / ctf4b 2021 with ISTE
okuken
1
440
Other Decks in Technology
See All in Technology
株式会社EventHub・エンジニア採用資料
eventhub
0
1.9k
自動生成を活用した、運用保守コストを抑える Error/Alert/Runbook の一元集約管理 / Centralized management of Error/Alert/Runbook to minimize operational costs using automated code generation
biwashi
9
2.1k
20240416_devopsdaystokyo
kzkmaeda
1
190
クラウドサインにおけるプロダクトマネージャーの役割と開発プロセス / 20240410_cloudsign-PdM
bengo4com
1
680
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
100
アプリがつくるNOT A HOTELブランド
hokuts
1
450
「共通基盤」を超えよ! 今、Platform Engineeringに取り組むべき理由
jacopen
25
5.8k
強みを伸ばすキャリアデザイン
yug1224
0
200
なぜ NOT A HOTEL が Web3 に取り組むのか - NOT A HOTEL TECH TALK
ynunokawa
0
160
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
0
220
AWS を使う上で知っておきたいオンプレミス知識/aws-on-premise-essentials
emiki
1
4.2k
巨大なテーブルのテーブル定義を無停止で安全に誰でも変更できるようにする / Table-definitions-for-huge-tables-can-be-modified-by-anyone-safely-and-non-disruptively
freee
1
740
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
42
6.7k
Docker and Python
trallard
33
2.7k
The Pragmatic Product Professional
lauravandoore
24
5.8k
Code Reviewing Like a Champion
maltzj
513
39k
Building Flexible Design Systems
yeseniaperezcruz
318
37k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Being A Developer After 40
akosma
56
580k
Typedesign – Prime Four
hannesfritz
36
2.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
6
990
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
GitHub's CSS Performance
jonrohan
1023
450k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
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