HC

Admina Team
2025/08/12
Webサイトを閲覧しているだけで、知らないうちにSNSへ投稿されたり、意図せず商品を購入させられたりする危険性があることをご存知ですか?これは、クリックジャッキングと呼ばれるサイバー攻撃が原因かもしれません。
本記事では、クリックジャッキングの仕組みから具体的な事例、そしてWebサイト運営者と一般ユーザーがそれぞれ実施すべき対策までわかりやすく解説します。
クリックジャッキングとは
クリックジャッキングは、ユーザーのクリック操作を乗っ取り、意図しないアクションを実行させる攻撃手法です。Webページの見た目を偽装することから「UIレッドレッシング(UI Redressing)」とも呼ばれます。攻撃者は、ユーザーが本来クリックしようとしているボタンやリンクの上に、透明な悪意のあるページを重ねて表示します。そのため、ユーザーは正規の操作をしていると信じ込んだまま、実際には攻撃者が仕込んだ見えないボタンをクリックしてしまうのです。この巧妙さから、多くのユーザーが被害に遭うまで攻撃の存在に気づくことができません。
クリックジャッキングによる具体的な被害事例
ここでは、実際に報告されている代表的な被害事例をいくつか紹介します。
SNSアカウントの乗っ取り被害
過去に最もよく知られたクリックジャッキングの事例の一つが、SNSアカウントの乗っ取りです。例えば、攻撃者は「お得な情報はこちら」といった魅力的なボタンを設置した罠サイトを用意します。ユーザーがそのボタンをクリックすると、透明なボタンやアイテムとして表示されているSNSの「いいね!」ボタンやシェアボタンがクリックされ、意図せず不適切なコンテンツを自身のタイムラインに投稿してしまうというものです。これにより、マルウェアの拡散に加担させられたり、自身の評価を不当に下げられたりする被害が発生しました。現在では多くのSNSで対策が施されていますが、同様の手口は依然として警戒が必要です。
意図しない商品購入やサービス契約
クリックジャッキングは、金銭的な被害に直結する可能性も秘めています。例えば、ECサイトにログインした状態のユーザーを罠サイトに誘導し、「景品が当たるスロットを回す」などの操作に見せかけて、実際には透明化された「商品を購入する」ボタンをクリックさせる手口です。ユーザーはゲームを楽しんでいるつもりでも、裏では高額な商品が購入されていた、という事態になりかねません。同様に、有料サービスの契約ボタンや、退会ボタンをクリックさせて既存のサービスを解約させてしまうといった被害も考えられます。
マルウェア感染につながる広告クリック
不正な広告をクリックさせる手口も、クリックジャッキングの典型的な悪用例です。この場合、攻撃者は不正な広告収入を得ることを目的としています。罠サイトのコンテンツの上に透明な広告を重ね、ユーザーがページを操作する過程で意図せず広告をクリックするように仕向けます。これはアドフラウド(広告詐欺)の一種です。さらに悪質なケースでは、クリックした先の広告がマルウェア(ウイルスなど)のダウンロードページになっていることもあります。ユーザーは単にサイトを閲覧していただけなのに、気づかぬうちに自分のPCやスマートフォンがマルウェアに感染してしまう危険性があるのです。
クリックジャッキングの攻撃手法
クリックジャッキングから身を守るためには、どのようなやり方で攻撃を仕掛けてくるのかを理解することが重要です。
iframeによるページの重ね合わせと透明化
クリックジャッキングの最も基本的なやり方は、HTMLのiframeタグとCSSを利用したものです。攻撃者は、まずiframeを使って自身のWebページ上に正規のWebサイトを読み込みます。次に、悪意のあるサイト情報の要素の透明度(CSSのopacity)を0に設定して透明にし、iframeで読み込んだせい記載の上に重ねます。そして、positionプロパティなどを駆使して、ユーザーがクリックしたくなるように透明にした偽のボタンの真下に、正規サイトの重要なボタンが来るように正確に配置します。これにより、ユーザーは視覚的に騙され、意図しない操作を実行してしまうのです。
ダブルクリックジャッキング
ダブルクリックジャッキングは、通常のクリックジャッキングをさらに巧妙にした発展的な手口です。この攻撃では、ユーザーに2回クリックさせることを前提としています。1回目のクリックでは、攻撃者はあえて何も起こさなかったり、ユーザーが期待する無害な動作を実行したりします。これによりユーザーを安心させた直後、ページのレイアウトを瞬時に変更し、2回目のクリックで本来の目的である悪意のある操作を実行させます。一度クリックして問題がなかったために警戒心が薄れたユーザーを狙う、非常に悪質なやり方です。

Webサイト運営者が行うべきクリックジャッキング対策
Webサイトの運営者にとって、クリックジャッキング対策はユーザーを保護し、自社サイトの信頼性を維持するために不可欠です。ここでは、サイト運営者が実施すべき具体的な対策を解説します。
X-Frame-Optionsヘッダによる対策
X-Frame-Optionsは、ブラウザがページを<frame>、<iframe>、<object>内に表示することを許可するかどうかを指示するためのHTTPレスポンスヘッダです。このヘッダをサーバーから送信することで、第三者のサイトによる自社ページの不正な埋め込みを防ぎます。設定できる値は主に3種類です。
DENY:いかなるページからの埋め込みも全面的に禁止します。最も強固な設定です。
SAMEORIGIN:同一オリジン(同一ドメイン)のページからの埋め込みのみを許可します。
ALLOW-FROM uri:特定のURIからの埋め込みに限定して許可を行います。ただし、この値は多くのブラウザでサポートが終了しており、現在では使用は推奨されません。
まずはDENYかSAMEORIGINを設定することが、基本的なクリックジャッキング対策となります。
CSPのframe-ancestors
CSP(コンテンツセキュリティポリシー)は、X-Frame-Optionsよりも新しく、より柔軟で強力なセキュリティ機能です。CSP内のframe-ancestorsディレクティブ(指示句)は、X-Frame-Optionsと同様の役割を果たし、ページの埋め込みを制御します。frame-ancestors 'none'はX-Frame-Options: DENYと等価であり、frame-ancestors 'self'はX-Frame-Options: SAMEORIGINと等価です。CSPは、複数のドメインからの埋め込みを許可するなど、より詳細な制御が可能です。現在ではX-Frame-OptionsよりもCSPのframe-ancestorsを使用することが推奨されています。両方が設定されている場合、frame-ancestorsが優先されます。
JavaScriptによる防御策(フレームバスティング)
HTTPヘッダが設定できない古い環境などでは、JavaScriptを用いて自サイトがiframe内で表示されているかを検知し、表示されている場合は強制的にiframeを解除してトップページに遷移させる「フレームバスティング」という手法が取られることがありました。しかし、この方法は攻撃者によって回避される脆弱性が複数発見されており、現在では信頼性の高い対策とは見なされていません。したがって、対策の基本はあくまでX-Frame-OptionsやCSP frame-ancestorsといったHTTPヘッダによるサーバーサイドでの制御です。JavaScriptによる対策は、補助的な手段としても推奨されません。
一般ユーザーができるクリックジャッキング対策
Webサイト運営者だけでなく、私たち一般ユーザーもクリックジャッキングから身を守るための自衛策を講じることが重要です。日々のインターネット利用における少しの注意が、被害を未然に防ぐことにつながります。ここでは、一般ユーザーが手軽に実践できる対策を紹介します。
ブラウザのセキュリティ設定と拡張機能
現在主要なWebブラウザ(Google Chrome、 Firefox、 Safari、 Microsoft Edgeなど)には、クリックジャッキングに対する基本的な保護機能が組み込まれています。最も重要な対策は、お使いのブラウザを常に最新のバージョンにアップデートしておくことです。これにより、最新のセキュリティ脅威に対応できます。さらにセキュリティを強化したい場合は、「NoScript」のようなスクリプトの実行を制御するブラウザ拡張機能を導入することも一つの方法です。これは、信頼できるサイト以外ではiframeやJavaScriptの実行をブロックするため、クリックジャッキングのリスクを大幅に低減できます。
不審なサイトやリンクを避ける心構え
技術的な対策と同時に、ユーザー自身のセキュリティ意識も非常に重要です。身に覚えのない送信元からのメールに記載されたリンクや、SNSで見かける過度に扇情的な見出しのリンク、怪しげなポップアップ広告などを安易にクリックしないように心掛けましょう。「うまい話には裏がある」という意識を持ち、少しでも怪しいと感じたらクリックを避けることが賢明です。特に、個人情報の入力や金銭に関わる操作を行う際は、URLが正規のものであるか(SSL化されているかなど)をアドレスバーで確認する習慣をつけることが大切です。

まとめ
本記事では、クリックジャッキングの仕組みから具体的な被害事例、そしてサイト運営者と一般ユーザー双方の視点からの対策を詳しく解説しました。iframeを悪用してユーザーを視覚的に騙し、意図しない操作を実行させるこの攻撃は、今なおWebの世界に潜む脅威です。
Webサイト運営者は、X-Frame-OptionsやCSP frame-ancestorsといったHTTPヘッダを適切に設定し、ユーザーが安心して利用できる環境を提供してください。一般ユーザーは、ブラウザを常に最新の状態に保ち、不審なリンクをむやみにクリックしないという基本的なセキュリティ対策を徹底することが求められます。
本記事の内容に誤り等がございましたら、こちらからご連絡ください。