ダブルクリックジャッキング(DoubleClickjacking)」と呼ばれるクリックジャッキング攻撃の新しいバリエーションは、攻撃者がユーザーを騙してダブルクリックを使用し、この種の攻撃に対する既存の防御を回避しながら、機密性の高いアクションを承認させるものです。
クリックジャッキングは、UIリドレスとしても知られており、脅威者が悪意のあるウェブページを作成し、訪問者を騙して隠された、または偽装されたウェブページ要素をクリックさせることを指します。
この攻撃は、攻撃者が作成したウェブページの上に、隠されたiframe内の正規のウェブページを重ねることで行われます。この攻撃者が作成したウェブページは、そのボタンやリンクを隠しiframe上のリンクやボタンに合わせるように設計されています。
そして、攻撃者はそのウェブページを使って、ユーザーにリンクやボタンをクリックするよう誘います。例えば、報酬を獲得したいとか、かわいい写真を見たいとか。
しかし、ユーザーがそのページをクリックすると、実際には隠されたiframe(正規のサイト)上のリンクやボタンをクリックしていることになり、OAuthアプリケーションにアカウントへの接続を許可したり、MFAリクエストを受け入れるといった悪意のあるアクションを実行する可能性があります。
長年にわたり、ウェブブラウザの開発者は、クッキーをクロスサイトで送信できないようにしたり、サイトをiframe化できるかどうかにセキュリティ制限(X-Frame-Optionsまたはframe-ancestors)を導入したりするなど、こうした攻撃のほとんどを防ぐ新しい機能を導入してきました。
新しいDoubleClickjacking攻撃
サイバーセキュリティの専門家であるPaulos Yibeloは、マウスのダブルクリックのタイミングを悪用して、ウェブサイト上で機密性の高いアクションを実行させるDoubleClickjackingと呼ばれる新しいウェブ攻撃を紹介しました。
この攻撃シナリオでは、脅威行為者がウェブサイトを作成し、「ここをクリックすると報酬を受け取れる」「映画を見ることができる」など、一見何の変哲もないボタンを表示させて誘惑する。
訪問者がボタンをクリックすると、元のページを覆う新しいウィンドウが作成され、先に進むにはキャプチャを解かなければならないなど、別の誘い文句が含まれる。バックグラウンドでは、元のページのJavaScriptが、攻撃者がユーザーを騙してアクションを実行させたい正規のサイトにページを変更する。
新しい、オーバーレイされたウィンドウ上のcaptchaは、訪問者がcaptchaを解決するためにページ上の何かをダブルクリックするように促します。しかし、このページはマウスダウンイベントをリッスンし、検出されるとキャプチャのオーバーレイを素早く閉じ、2回目のクリックが以前は隠されていた正規のページ上に表示された認証ボタンやリンクに着地するように仕向けます。
このため、ユーザーは誤って公開されたボタンをクリックしてしまい、プラグインのインストールやOAuthアプリケーションのアカウントへの接続、多要素認証のプロンプトを承認してしまう可能性があります。
これが非常に危険なのは、iframe を使用しておらず、別のドメインに Cookie を渡そうとしていないため、現在のすべてのクリックジャッキング防御をバイパスすることです。代わりに、保護されていない合法的なサイトで直接アクションが発生します。
Yibeloによると、この攻撃はほとんどすべてのサイトに影響を与え、Shopify、Slack、Salesforceのアカウントを乗っ取るためにDoubleClickjackingを利用したデモビデオを共有している。
研究者はまた、この攻撃はウェブページに限らず、ブラウザの拡張機能にも使用できると警告している。
「例えば、私はこのテクニックを使ってWeb3トランザクションやdAppsを承認したり、IPなどを公開するためにVPNを無効にするトップブラウザ暗号ウォレットの概念実証を行いました」とYibelo氏は説明する。
これは、ターゲットに “DoubleTap “するよう要求することで、携帯電話でも可能です」とYibeloは説明する。
この種の攻撃から守るために、Yibelloはウェブページに追加して、ジェスチャーが行われるまで敏感なボタンを無効にするJavaScriptを共有した。これにより、攻撃者のオーバーレイを削除する際に、ダブルクリックで認証ボタンが自動的にクリックされるのを防ぐことができる。
研究者はまた、ダブルクリックの連続中にウィンドウ間の急速なコンテキスト切り替えを制限またはブロックするHTTPヘッダーの可能性も示唆している。
Comments