インターネット技術の進化に伴い、サイバー攻撃手段も多様化しています。
その手段はより複雑・巧妙になっており、
対策するもいたちごっこの状態が続いています。
情報処理試験の中にも、セキュリティ情報を問う問題が増えてきています。
IPA情報推進機構が行う情報処理試験の科目にも、
平成29年から「情報処理安全確保支援士」試験が新設されました。
この試験は、合格後3年後、
毎年規定の講習を受けないと資格が維持されない仕組みとなっており、
それだけ年々セキュリティ対策が変わっていることを示しています。
今回は、情報セキュリティについて勉強している方なら1度は悩むであろう
「クロスサイトスクリプティング」と「クロスサイトリクエストフォージェリ」
についてお話しさせていただきます!
「クロスサイトスクリプティング」とは?
クロスサイトスクリプティング(XSS)とは、
アンケート、掲示板、サイト内検索のように、ユーザからの入力内容を
ウェブページに表示するウェブアプリケーションを持つサイトに、
第3者がなんらかの手段で、
悪意を持ったスクリプト(命令)をページに埋め込むことによって、
そのスクリプトが偽ページの表示などを行い、
入力された個人情報やクッキーから盗み取ったりする攻撃方法です。
ユーザがサイトを開く
→ 〇サービスページが表示される
→ ユーザID等を入力→ログインして、目的の画面に移る
→ ★悪意あるスクリプトが埋め込まれていたァ!
→ ★第3者が用意した(実は別の)サービスページが表示される
→ ★本物のページと勘違いしてユーザIDなどを入力
→ ★第3者にユーザID等を盗まれる!
入力したユーザの目には、いつもと同じページが表示されているのですが、
実は中で入力情報を盗聴されている状態です。
「クロスサイトスクリプティング」の事例、件数の推移は?
XSSによる脆弱性の届出件数は、他の脆弱性に比べて多くなっています。
IPA情報処理推進機構によると、
XSSの被害届出受付開始から2014年第4四半期までに、
「ウェブサイトの届出件数の約5割」に相当する届出を受けています。
このような届け出件数の多さは、ログイン情報を盗まれるXSSは、
不正アクセスによる被害が多数発生し
色々なウェブサービスで被害を被る事象であることを示しています。
XSSの1つの例として、
動画共有サイトの米YouTubeを狙った攻撃があります。
YouTubeのサイトを開き動画を再生すると、
ショッキングなデマが流れたり、コメントが表示されなくなるなどの
影響が広がったという事象がありました。
またTwitterを利用して、
本当にXSSの虚弱性があるのかを(悪意の無い)
クラッカーによって実験された例として、
ツイートにマウスカーソルを載せるとすぐにその内容がリツイートされ拡散される、
という事象が発生しました。
「クロスサイトリクエストフォージェリ」とは?
クロスサイトリクエストフォージェリ(CSRF)とは、
SNSなどのウェブサイトにログインした状態で、
掲示板などの別のサイトやメール中に記載されているリンクをクリックした時に、
この細工されたリンク中の悪意ある要求(リクエスト)が、
クリックしたユーザの要求であるかのように偽って(フォージェリ)、
ログイン中のウェブサイトで、ユーザの意思とは別の操作をさせる攻撃方法です。
ユーザがログイン→掲示板のリンクをクリック
→ 〇目的サイトを表示
→ ★悪意あるリクエストが埋め込まれていた!
→ ★目的のサイトは表示されない
→ ★ログイン情報が、いつの間にか書き換わっていた!
自分で設定変更した覚えのない操作が、
悪意あるリンクのクリックによって実施されてしまう状態です。
「クロスサイトリクエストフォージェリ」の事例、件数の推移は?
CSRFの事例として比較的有名なのが「はまちちゃん」大量発生事件です。
ソーシャル・ネットワーキングサイトの「mixi」にログインした状態で、
URLをクリックすると
勝手に”ぼくはまちちゃん!”というタイトルで日記がアップされてしまう
という現象が多発しました。
はまちちゃん日記にはさらに悪意あるリンクが貼られており、
このリンクをクリックすることで更に被害者が拡大したと言われています。
IPA情報処理推進機構によると、CSRFによる脆弱性の届出件数は、
ウェブサイトの届出全体に対して1%未満と多くはありません。
しかしながらCSRFについては、ソフトウェア製品の届出を含め、
2006年頃から継続的に届出を受けています。
クロスサイトスクリプティングとクロスサイトリクエストフォージェリの違い おわりに
名前だけ見るととてもややこしい、XSSとCSRF、
見分けるにはどうしたら良いでしょう?
まずは、ログイン情報の入力「前」か「後」かで区別しましょう。
XSS:ログイン前に、入力したログイン情報が盗まれる
CSRF:ログイン後に、別リンクをクリックすると、ログイン情報が盗まれる
ログイン「前」にログイン情報が盗まれるのがXSS。
ログイン「後」にログイン情報が盗まれるのがCSRF。
次に、利用者から見た対策方法で区別するのも良いですね。
XSS:最初にブックマークしておき、2度目からはそこからアクセスするようにする
CSRF:必要な時に都度ログインし、使用後は速やかにログアウトすること
サイトの脆弱性を語るには、必ず付いて回るXSSとCSRF。
これを機会に、しっかり覚えてくださいね。
最後までお読みいただき、ありがとうございました。