メインコンテンツにスキップする

クリックジャッキング攻撃とは?定義と攻撃を防ぐ方法を解説

PCの前で悩んでいる人物

UIリドレッシングやUIリドレス攻撃とも呼ばれる、クリックジャッキングは、衰えることなく増え続けています。この記事では、クリックジャッキングとは何なのか、また、その仕組みと防止法について解説します。

クリックジャッキングの意味と定義

クリックジャッキングは、ユーザーをだまして、見えているものをクリックすると信じ込ませて別のものをクリックさせる攻撃です。つまり、攻撃者が通常のUIに別のUIを埋め込んで隠しているウェブサイトで、何も知らないユーザーが、それを通常のUIと信じて使用してしまうことです。ユーザーが安全だと信じてボタンをクリックすると、隠されたインターフェースが、ユーザーが考える動作とは異なる動きをします。これによって、ユーザーは、気付かずに、 マルウェアのダウンロード、認証情報や機密情報の入力、悪意のあるウェブサイトへのアクセスや送金、オンラインでの商品購入といった行為をさせられてしまいます。

クリックジャッキング攻撃にはさまざまなバリエーションがあります。これは、別名である「UIリドレッシング」や「UIリドレス攻撃」が多くのバリエーションを指す場合が多い言葉だからです。

クリックジャッキングの仕組み

クリックジャッキングを可能にしているのは、フレームによって複数のウェブサイトを別のウェブサイト内に表示できるHTMLフレームやiframeです。本来、iframeはフレーム内に設けられるフレームです。iframeを使えば、他の情報源のコンテンツを自分のウェブサイトに埋め込むことができます。例えば、あるウェブサイトにアクセスしたとして、そのページがYouTube動画を埋め込んで表示させているとしたら、その動画はiframe内にあります。

クリックジャッキングはこの仕組みを利用して行われます。ウェブサイトをフレーム内に表示できれば、攻撃者は、自身のJavaScriptとUI要素を組み込んだ、隠された透明な層で元々のウェブサイトを覆うことができます。ページの見た目は全く変わりません。これは、つまり、ユーザーが異変に気付きようがないということです。

ユーザーはページを見て回り、リンクやボタンが正常に機能するものと思っています。ところが、動作するのは、隠されたUIによる攻撃者のスクリプトです。攻撃者のスクリプトは裏で動作して、何の問題もないかのように装うことができます。これによって、次のようなさまざまな悪意ある行為が可能になります。

  • マルウェアをインストールさせる
  • 認証情報を盗み出す
  • ウェブカメラやマイクを始動させる
  • 望んでいない購入をさせる
  • 送金を許可させる
  • 所在位置を特定する
  • 無関係なサイトのクリック率を上げる
  • サイトの広告収入を上げる
  • Facebookで「いいね!」を獲得したり、YouTube動画の閲覧数を上げたりする

上記は一部にすぎません。UIはどのようなリンクで覆うこともできるため、どのような破壊的な行為をさせられてもおかしくありません。

また、クリックジャッキングはマウスクリックだけを対象とするわけではないということも覚えておいてください。攻撃者がiframeをスタイルシートやテキストボックスと組み合わせれば、ユーザーは、実際には攻撃者が管理するサイトに入力しているにもかかわらず、自身が利用するネットバンキングのサイトにパスワードを入力していると思い込まされてしまうのです。

他のサイバー犯罪と同様、クリックジャッキングも、何らかの形のソーシャルエンジニアリング を使って感染したサイトや悪意あるサイトにターゲットを誘導します。それは、Eメールの場合もあれば、テキストメッセージやSNSの投稿である場合もあります。

PCの前で悩んでいる人物

クリックジャッキング攻撃の種類

ライクジャッキング

ライクジャッキングは、「いいね!」するつもりのないSNSユーザーをだまして「いいね!」させる行為です。例えば、攻撃者のFacebookページにユーザーが気付きようのないiframeが隠されて埋め込まれていれば、ユーザーは、見えない「いいね!」ボタンをクリックしてしまうことになります。

カーソルジャッキング

カーソルジャッキングは、ユーザーが認識している位置とは異なる位置にカーソルを変更します。典型的なカーソルジャッキングでは、実際のカーソルを、画像を使って偽のカーソルに置き換え、実際のカーソルの位置からカーソルを移動させます。その結果、ユーザーは、実際には、自分が行っていると思っているのとは異なる行動をしています。ユーザーが偽のカーソルで対象の要素をクリックすると、実際のカーソルが悪意のある要素をクリックします。カーソルジャッキング攻撃では、被害者の注意を偽のカーソルに向けさせようとしますが、実際のカーソルが消えずに見える場合もあります。

クッキージャッキング

クッキージャッキングは、被害者のクッキーを盗むUIリドレス攻撃です。攻撃者にクッキーを奪われると、その情報にアクセスされ、成り済ましに利用されてしまいます。被害者をだましてウェブページで要素をドラッグアンドドロップさせるのが、この攻撃の典型的なやり方です。実際には、隠されて埋め込まれたページでクッキーの内容が選別されて攻撃者に送られています。そして、攻撃者が、その情報を使い、対象のウェブサイトでユーザーに成り済まして行動を起こすのです。

ファイルジャッキング

ファイルジャッキングによって、攻撃者は、被害者のローカルファイルシステムにアクセスして、ファイルを盗み出します。例えば、SNSに写真をアップロードする場合、ファイルブラウザのウィンドウが開いて、ファイルシステムを操作できます。ファイルジャッキング攻撃では、「ファイルを参照する」ボタンをクリックすると、アクティブなファイルサーバーが構築されて、攻撃者がファイルシステム全体にアクセスできるようになる恐れがあります。

クリックジャッキングの事例

2002年、セキュリティの研究者が、PayPalの送金サービスに、攻撃者が被害者をだまして、たった1クリックで知らないうちに攻撃者に宛てた取引を完了させてしまうパッチ未適用の脆弱性を発見したと主張したと報じられました。1つのボタンをクリックするだけで、すでにウェブブラウザにログインしているユーザーに、攻撃者が管理するPayPalアカウントへ送金させることができる悪意のあるエンドポイントを攻撃者がiframe内に埋め込むことができることを研究者は突き止めたのです。パッチが適用されない状態であったなら、悪意のあるハッカーがユーザーのアカウントから好き勝手に金を引き出せたため、この脆弱性によって、決済用にPayPalを組み込んでいるオンラインポータルに悲惨な結果がもたらされたかもしれません。

2017年、Svpengとして知られるマルウェアの一種が急速に広まりました。Androidデバイスのユーザーから銀行取引情報を盗み取るSvpengが最初に見つかったのは、2013年でした。このマルウェアがモバイル機器にダウンロードされ、ユーザーデータがクリックジャッキングされました。しかし、問題はそれだけにとどまらず、さらに深刻化しました。マルウェアが管理者権限にアクセスして、使用するオーバーレイ画面の選択やSMSテキストメッセージの送受信を勝手に行ったり、電話をかけたり、やり取りの内容を盗み見たりしたのです。

さらに、デバイスから盗み取ったスクリーンショットなどのデータが、ハッカーが管理するC2サーバーに送信されました。これには、やり取りやインストール済みのアプリ、通話記録やSMSテキストが含まれていました。一般的に、銀行は認証コードをSMSテキストでユーザーに送るため、SMSテキストは特に大きな問題になりました。たった一週間で、Svpengは23カ国に広まりました。

クリップジャッキングの対策

クリップジャッキングを完全に防ぐ方法はありません。クリップジャッキング防止に必要な措置のほとんどは、サイト管理者が行う必要があります。とは言え、個人でも

次のような措置を講じることでクリックジャッキングのリスクを減らすことができます。

至急の用件に対処するよう求めるメールに注意する

クリックジャッキングソフトウェアがデバイスを乗っ取る典型的な手法の1つが、標的型Eメールによるものです。残念ながら、連絡先の詳細を含む何十億もの顧客アカウントが世界中でハッカーによって盗み取られている現状では、1アカウント当たりわずかな額を支払うだけで、サイバー犯罪者が情報を手に入れることができるのが現実です。少なくとも私たちのEメールアカウントが関連する銀行取引情報と共にサイバー犯罪者のファイルに保存されている可能性は高いと言えます。

注意を払う必要のある用件に至急対処するよう求めるメールが受信トレーに届いたら、要注意です。こういったメールではリンクをクリックさせます。このリンクによって、取引銀行などの公式サイトとそっくりのウェブサイトに誘導され、最新の銀行アプリと偽ってアプリをダウンロードさせたられたり、プロファイル情報を入力させられたりします。

疑わしいアプリは絶対にダウンロードしない

アプリをダウンロードさせることが目的のクリックジャッキングの場合、おそらく、そのアプリは、すべての認証情報を収集して盗み出すマルウェアです。他に、ウェブサイト自体がデバイスに感染するマルウェアの根源である場合もあります。方法はどうあれ、マルウェアには、こちらに記入させるための偽の入力層があります。警戒を怠らず、確信が持てないアプリを絶対にダウンロードしないようにしてください。アプリは、必ず正規のアプリストアを通してデバイスにダウンロードするようにしてください。正規のアプリストアでは、ソフトウェアエージェントと人手を使って、マルウェアや不適切なコンテンツを排除しています。

話がうますぎるGoogle広告やFacebook広告をクリックしない

うますぎる話の提案やありえないようなニュースや話題を宣伝する、検索エンジンの検索結果ページやSNSで広告をクリックしないことが重要です。これらをクリックすると、使用するPCにクリックジャッキングソフトウェアをダウンロードさせるウェブサイトに誘導される場合もあります。ニュースを探すのであれば、知名度の高い長年の実績のある情報源で探すようにしましょう。ニュースが真実であれば、信頼できる経路で見つからないはずはありません。

ブラウザのクリックジャッキング対策用拡張機能をインストールする

ブラウザのクリックジャッキング対策アドオンを利用することはできますが、このアドオンによって読み込んだページのJavaScriptがすべて無効になってしまうため、多くの場合、ユーザーエクスペリエンスが低下します。FacebookやTwitter、YouTubeといった人気の高いプラットフォームのほとんどがJavaScriptを使用しており、この拡張機能によって、プラットフォームが動作しなくなります。信頼できるソースで、JavaScriptアプリケーションをデプロイするための許可リストを明示的に設定する必要があります。さまざまなブラウザのJavaScriptブロックアドオンには、次のようなものがあります。

  • Google ChromeのScriptsafe
  • Mozilla FirefoxのNoScript
  • SafariのJS Blocker

堅牢なウイルス対策製品を利用する

クリックジャッキングなどのサイバー犯罪から身を守れるよう、包括的なウイルス対策製品の利用を強く推奨します。高品質のウイルス対策製品は24時間年中無休で動作してデバイスやデータを保護し、ウイルスやマルウェア、ランサムウェアやスパイアプリ、ハッカーによる最新の手口など、広くはびこる脅威や複雑な脅威を阻止します。

クリックジャッキング攻撃に対しては警戒を怠らないことが重要です。幸いなことに、現在、ほとんどのブラウザに、悪意あるウェブサイトをブロックし、なおかつ、安全でない可能性のあるウェブサイトにアクセスしようとしているとユーザーに警告してクリップジャッキングから保護する機能が内蔵されています。サイバーハイジーンを実践し、無料のサービスや違法なサービスを提供するオンラインサービスプロバイダを避ければ、クリップジャッキングから身を守ることができます。

関連製品:

関連記事:

クリックジャッキング攻撃とは?定義と攻撃を防ぐ方法を解説

クリックジャッキング攻撃は、ユーザーを騙して偽のハイパーリンクをクリックさせる詐欺行為です。クリックジャッキングの仕組みと、クリックジャッキング攻撃を防ぐためのヒントを解説します。
Kaspersky logo