http80

Web security research

XSS report on GitHub gist / GitHubのXSSの話

先月くらいにGitHubのザコいXSSを報告しました。大したXSSではないです。

 

f:id:reinforchu:20170324211956p:plain

 

●PoC

諸般の事情により公開しませんが、スクリーンショットでどういうXSSかピンとくるでしょう……

 

●影響範囲

XSSが起こるドメイン名がある種のサンドボックスになっているため、Cookie(セッションIDほか)が窃取されるなどの危険性はありません。しかしながら、任意のJavaScriptコードを実行することは可能です。

今回検出したXSSは、ログイン前のGETメソッドで起こることから、通常であれば高リスクと判断されますが、限定的な環境においてXSSの影響を受けること、上述のセッションIDが窃取される危険性が無いことを勘案し、低リスクと判断することが妥当でしょう。

 

●対策方法

対策方法はいくつかありますが、代表的なものを取り上げます。

該当箇所はファイルアップロード機能を悪用したものであり、ダウンロード時に次のヘッダを付与する。

X-Content-Type-Options: nosniff 

 もしくは、表示ではなくファイルのダウンロードをさせる。ダウンロードの場合は、保存するかしないかのダイアログが表示されるため、JavaScriptコードは実行されない。

 

●報奨金

HackerOneなどでGitHubの報奨金制度がありますが、GitHub Security TeamのSteve氏曰く「Our team will take a look at your report but I should point out that the following does not qualify for the bounty」とのことでしたー(やっぱり><✘

hackerone.com