
さまざまなWebサイトのコンテンツセキュリティポリシー(CSP)をバイパスするための、すぐに使えるJSONPエンドポイント集です。
このツールはキエフで開催されたHackIT 2018で発表されました。スライドはこちらからご覧いただけます(スライドのフォーマットが崩れている理由はわかりませんが :D):https://www.slideshare.net/Hacken_Ecosystem/ebrahem-hegazy-bug-hunters-manual-for-bypassing-contentsecuritypolicy
このツールの主なアイデアは、ターゲットWebサイトのコンテンツセキュリティポリシーを自動的にバイパスするのに役立つJSONPエンドポイントを見つけることです。JSONBeeはURL名(例:https://www.facebook.com)を入力として受け取り、CSP(Content-Security-Policy)を解析し、CSPをバイパスするXSSペイロードを自動的に提案します。主に、私のバグバウンティ活動中に収集したJSONPエンドポイントに焦点を当てており、CSPのバイパスに使用できます。
JSONBeeはJSONPエンドポイントを収集するために3つの方法に依存しています:
このツールはまだ完全には完成していません。現在もいくつかの検証や機能を追加しているところです。ただし、ツールが完成するまでの間、誰でも使用できるようにリポジトリはここにホストされます。
このリポジトリには、Facebook.com、Google.comなどでCSPをバイパスできるすぐに使えるペイロードが含まれています。
Facebook.comのContent-Security-Policyをバイパスする:
Facebook.comはそのCSPポリシー(script-srcディレクティブ)で*.google.comを許可しているため、以下のペイロードはFacebook.comでJavaScriptを実行するのに効果的です:
"><script+src="https://cse.google.com/api/007627024705277327428/cse/r3vs7b0fcli/queries/js?callback=alert(1337)"></script>
もし、script-srcディレクティブでjsonp.txtファイル内のドメインのいずれかを信頼しているWebサイトに出会った場合は、そのドメインに一致するペイロードを選んで楽しんでください :)
バグハンター、ペネトレーションテスター、セキュリティ研究者にとってリポジトリをより大きく、より有用にするために、JSONPエンドポイント/コールバックを使用するサイトへのリンクを追加して貢献してください。