Browser Extensionを書いてみる: Chrome - 2.バックグラウンドページからxhrでクロスドメインに通信を飛ばす

tl;dr

Browser Extension for Chromeの続き. XMLHttpRequest を使ってバックグラウンドページから通信を飛ばすサンプル. あくまで研究用で悪用厳禁. よく某赤いセキュリティベンダからプレスがでているmaliciousなBrowser Extensionはこんな感じの設定がされている,という資料程度にどうぞ. ※赤い会社と一切関係はありません

Code

Server

f:id:news-nknskn:20190312102823p:plain

Main point

  • manifest.json
    • "permissions": ["<all_urls>"] → クロスドメインに飛ばす場合必須
  • background.js
    • 特別な記述はなし. 普通のxhrとChrome APIの組み合わせ.

雑感

  • node.jsのngrokって軽くクロスドメインチェックする時はめっちゃ便利.
  • 以前のonBeforeRequest(Browser API) + xhrって組み合わせだとpermissionsのところに<all_urls>とwebRequestが出てくるのでそれだけでめっちゃぁゃしぃ