前回は、Web利用者の情報が取られてしまう手法とその対策について、いくつか見てきました。自分の情報は自分で守るのが鉄則です。そのため、Webサイトやサービスの開発側だけでなく、利用者側もしっかりと知識をつけてWebを正しく利用していくことが必要となります。
今回は、クリックジャッキングという手法を見ていきます。手法を見るとわかるのですが、かなりタチの悪い攻撃です。
クリックジャッキングとは?
普段利用しているWebサイト・Webサービスの中で、IDやパスワードを登録してログインを行って利用しているものはどれくらいあるでしょうか。また、その際に特に注意をせずにIDやパスワードを入力している人は多いのではないでしょうか。
クリックジャッキングとは、攻撃者がWebサイト上に偽のリンクやボタンを設置することで、ユーザーが認知することなく意図しない動作をさせる攻撃のことです。
例えば、罠ページを攻撃者が用意しておきます。そして、そのページの上にiframeを使った透過されている表ページが重ねられています。例えば、掲示板サイトなどをイメージするとわかりやすいです。すると、ユーザーからは透過されている掲示板サイトは見えず、罠サイトの内容だけが見えている状態になります。その上で、ページ上のなにかのリンクやボタン(続きを見る、など)を押すと、実は透明にされた方のページのリンクやボタンがクリックされてしまう、というような攻撃です。
これが掲示板サイトだった場合は、自分のアカウント名で意図していない掲示板投稿がされてしまうということになります。
クリックジャッキングはこのような構造上、クリックやタップ操作をするあらゆる行動で影響がある攻撃ということになりますので注意が必要となります。
参考:
安全なウェブサイトの作り方 – 1.9 クリックジャッキング – IPA
2023年4月においてクリックジャッキング未対策のサイトはどの条件で被害を受けるか
クリックジャッキングによる被害
クリックジャッキングの正体がわかったところで、なかなか自分では気をつけづらいと思ったかもしれません。しかし、クリックジャッキングによる主な被害としては多様にあり、かなり悪質なものもあります。いくつか紹介します。
- 利用者が意図しない情報発信、退会処理
- 利用者が意図しない商品の購入
- SNSで特定のアカウントを勝手にフォローさせられる、投稿させられる
- ウイルス感染の被害
- パソコン乗っ取り被害
見て分かる通り誰でも被害にある可能性がありますので、まず手口を理解することが重要です。
クリックジャッキングへのセキュリティ対策
安全なウェブサイトの作り方を参考にすると、根本的解決としては、以下があります。
- HTTPレスポンスヘッダに、X-Frame-Optionsヘッダフィールドを出力し、他ドメインのサイトからのframe要素やiframe要素による読み込みを制限する
- 処理を実行する直前のページで再度パスワードの入力を求め、実行ページでは、再度入力されたパスワードが正しい場合のみ処理を実行する
また、各ブラウザでもそれぞれの対策がされているため、把握しておくことも大事です。
今回のセキュリティ知識を詳しく知りたい場合は、徳丸本と徳丸試験がおすすめ
セキュリティの問題はサイトやサービス運営側も利用側も必要な知識です。
そんな、Webセキュリティ関連の知識については、徳丸本を学ぶとよいです。得丸本は、Webセキュリティに関する基本知識が網羅されています。セキュリティは正確に体系立てて理解をしていかないと、システムや会社にとって致命的な問題に繋がります。これらの知識を身に着けたエンジニアとして活躍されていく方にはおすすめです。
そして、学んだあとは理解を確認するために徳丸試験でチェックしてみると理解度が可視化されるため、ぜひチャレンジしてみてください。
【徳丸本】
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践
【徳丸試験】