OAuth実装に関する欠陥を利用したXSS攻撃に対し、数百万のWebサイトが脆弱な恐れ
世界中の百万件以上のWebサイトに影響を及ぼす恐れのあるXSS攻撃の手法をSalt Labsが発見し、詳細を報告。これは、特定製品の脆弱性ではなく、OAuth実装に関わる問題を悪用してアカウントの完全な乗っ取りを行う攻撃手法なのだという。Salt Labsのレポートではこの問題が見つかったサイトの代表例としてHotJarとBusiness Insiderが取り上げられているが、同研究チームのYaniv Balmas氏は、ほかにもBooking.com、Grammarly、OpenAIなどのサイトが同様の問題を抱えていたことを明かしている。
上述のHotJarのサイトでは、ソーシャルログインを可能にするためにOAuthが使われている。例えばユーザーがGoogleでのサインインオプションを選択すると、HotJarはGoogleへのリダイレクトを行い、Googleは当該ユーザーを認識すると、シークレットコードを含んだURLによって再度HotJarへのリダイレクトを行う。Salt Labsが報告した攻撃手法は、このプロセスを偽造・傍受し、正規のログインシークレットを盗み取るというもの。もう少し具体的には、新しいOAuthログインのフローを新規ウインドウ内でスタートさせるJavaScriptコードを使い、Googleがユーザーをリダイレクトする際に用いられるURL内のログインシークレットをその新規ウインドウから読み取る。このXSS攻撃とOAuth実装の問題の悪用とを組み合わせた手法によりOAuthの認証情報を抜き取り、アカウントを完全に乗っ取ることが可能になるという。なお、HotJarは報告を受けてすでにサイトを修正済み。
今回の調査を踏まえ、Salt Labsは脆弱なWebサイトが世界に数百万件は存在する可能性が高いと想定。これほどの数のサイトを自身で調べることは難しいことから、Salt Labsは代わりに調査結果を詳細に報告し、OAuthの実装に関する欠陥がないかをチェックできるスキャナーを無料で公開している。スキャナーはこのページから利用可能。