もう少し詳しく

クロスサイトスクリプティングくろすさいとすくりぷてぃんぐ(XSS)とは、Webサイトが利用者からの入力(検索キーワードやコメント、URLの一部など)を適切に処理できていない場合に、攻撃者が仕込んだプログラム(スクリプト)を、そのサイトを訪れた別の利用者のブラウザ上で実行させてしまう攻撃手法です。サイト自体のサーバーが直接乗っ取られるわけではなく、あくまで閲覧者側のブラウザで不正なプログラムが動いてしまう点が特徴です。

XSSにはいくつかの種類があり、攻撃者が用意した特別なURLを開かせることで一時的に発動する「反射型」、サイトの掲示板やコメント欄などに悪意あるコードを書き込み、それを見た人全員に影響が及ぶ「格納型」などに分類されます。

どこで使われるか

XSSという言葉自体は「使われる」技術ではなく、Webサイトの脆弱性ぜいじゃくせいの分類の1つとして、セキュリティの分野で日常的に使われています。ログイン画面、検索窓、コメント欄、掲示板など、利用者が何らかの文字列を入力してサイトに送信する箇所であれば、対策が不十分な場合にどこでも起こり得ます。企業のWebサイトはもちろん、WordPressのようなブログ作成ソフトの脆弱性としても、繰り返し報告されています。

身近な例

掲示板やレビュー欄に、通常の文章に見せかけたプログラムのコードを書き込み、そのページを見た他の利用者のブラウザ上で、意図しない画面遷移や情報の送信が行われてしまうケースが典型例です。ログイン画面のように、通常は入力欄がない場所であっても、URLの一部にプログラムを紛れ込ませる形で成立する場合もあります。

注意点

XSSは、閲覧者や管理者のブラウザを踏み台にする攻撃であるため、サイト運営者側の対策(入力内容の無害化処理など)が何よりも重要です。利用者としては、身に覚えのないリンクを不用意にクリックしない、ログイン中のサイトで見慣れない挙動があった場合はすぐにログアウトする、といった基本的な心がけが被害の軽減につながります。単体では影響が限定的に見えるXSSも、別の脆弱性と組み合わされることで、より深刻な被害(管理者権限の奪取など)に発展する場合がある点にも注意が必要です。