Save 37% off PRO during our Black Friday Sale! »

Web Messaging のセキュリティ - DOM Invaderを添えて - / Web Messaging Security

2c4ef0f20c4f05ca30e6c9917f0c17b6?s=47 okuken
September 30, 2021

Web Messaging のセキュリティ - DOM Invaderを添えて - / Web Messaging Security

Web Messaging のセキュリティについての簡単な説明と、デモを行います。
デモで使用するコードはGitHubで公開しています。

2c4ef0f20c4f05ca30e6c9917f0c17b6?s=128

okuken

September 30, 2021
Tweet

Transcript

  1. Web Messaging のセキュリティ -DOM Invader を添えて- @okuken3 2021.09.30 第11回 初心者のためのセキュリティ勉強会

  2. 0. 自己紹介 1. Web Messaging とは 2. Web Messaging のセキュリティ

    3. デモ 4. 参考サイト Agenda
  3. NO IMAGE Kenichi Okuno  Twitter: @okuken3 略歴  1. SIerで色々  2.

    業務パッケージベンダで開発  3. Web事業会社でプロダクトセキュリティチーム立上げ  4. 情報セキュリティサービス会社でWeb脆弱性診断 最近の出来事  ・家庭内RPA 1ネタ運用開始  ・ISTE v0.4.0 近日リリース予定
  4. 1. Web Messaging とは  ✓ HTML5で導入されたAPI  ✓ 異なるOriginのWindowオブジェクト間で    メッセージのやりとりができる

  5. 1. Web Messaging とは iframe https://a.example.com https://a.example.com https://b.example.com message message

  6. 2. Web Messaging のセキュリティ  ✓ 想定内の相手(Origin)とだけやりとりする    ・送信時:送信先のOriginを指定する    ・受信時:送信元のOriginを確認する  ✓ 悪意を前提としてメッセージを扱う

       ・相手のサイトが攻撃者の手に落ちている可能性も考慮する
  7. 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

  8. (補足) DOM Invader の機能 DOM-based XSS 関連  ・カナリアによるシンク/ソース検出  ・カナリアの自動挿入  ・イベントの自動発火

     ・リダイレクト防止 Web Messaging 関連  ・postMessage のキャプチャ  ・脆弱性スキャン  ・カナリアの自動挿入  ・Messageのリピート送信  ・Messageの自動生成/送信  ・Originのスプーフィング DOM Invader 本日はこちらを使用
  9. None
  10. None
  11. 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

  12. None