クロスサイトスクリプティング(XSS)とは

くろすさいとすくりぷてぃんぐ

Webアプリケーションが利用者の入力をそのままHTMLに出力するために、入力に含まれたスクリプトが閲覧者のブラウザでそのサイトのページとして実行されてしまう脆弱性。出力のときに特別な意味をもつ文字をエスケープすることが根本的な対策。

「クロスサイトスクリプティング(XSS)」は、2分野の4問の練習問題に出てきます(Web技術の基礎, 情報セキュリティの基礎など)。

この用語の分野: 情報セキュリティの基礎

クロスサイトスクリプティング(XSS)の練習問題に挑戦

ブラウザのlocalStorageとCookieの違いとして、正しいものはどれか。

  1. AlocalStorageのデータはリクエストに自動では付かず、同じオリジンのページのJavaScriptから読み書きして使う
  2. BlocalStorageのデータも、Cookieと同じように、同じサイトへのリクエストのたびにヘッダに入れられ、自動でサーバへ送られる
  3. ClocalStorageにもHttpOnly属性を付けられるので、セッションIDを置いても、ページのスクリプトからは読み取れない
答えと解説を見る

正解:A. localStorageのデータはリクエストに自動では付かず、同じオリジンのページのJavaScriptから読み書きして使う

localStorageは、オリジンごとにキーと値の文字列を保存するブラウザの記憶場所で、有効期限を決める仕組みはなく、一般に消すまで残ります。サーバへは自動では送られないので、送りたいときはJavaScriptでリクエストに入れます。Cookieは1つあたり一般に約4 KBまでと小さく、リクエストのたびに自動で送られるのに対し、localStorageにはより大きなデータを置けます。ただし、ページのJavaScriptからはいつでも読めるので、XSSがあると中身を盗まれます。認証に使う値を置くときは、この危険を考える必要があります。

掲示板のWebアプリケーションで、利用者が投稿した文章の中のスクリプトが、ほかの閲覧者のブラウザで実行されてしまう脆弱性があった。この脆弱性の名前と、根本的な対策の組み合わせとして正しいものはどれか。

  1. ASQLインジェクション。データベースへの接続に使うパスワードを長くする
  2. Bクロスサイトスクリプティング(XSS)。投稿された文章をHTMLとして出力するときに、< や > などの特別な意味をもつ文字をエスケープする
  3. Cクロスサイトスクリプティング(XSS)。サーバとブラウザの間の通信をHTTPSで暗号化する
答えと解説を見る

正解:B. クロスサイトスクリプティング(XSS)。投稿された文章をHTMLとして出力するときに、< や > などの特別な意味をもつ文字をエスケープする

クロスサイトスクリプティング(XSS)は、Webアプリケーションが、利用者の入力をそのままHTMLの中に出力するために、入力に含まれたスクリプトがページの一部として閲覧者のブラウザで実行されてしまう脆弱性です。スクリプトは、そのサイトのページとして動くので、閲覧者のセッションの情報(Cookie)を盗んだり、偽の入力欄を表示したりするおそれがあります。根本的な対策は、出力する場所に応じて、< や > や & や引用符のような特別な意味をもつ文字をエスケープ(例えば < を &lt; に変換)して、ただの文字として表示させることです。補助的な対策として、CookieにHttpOnly属性を付けてスクリプトから読めないようにしたり、コンテンツセキュリティポリシーで実行できるスクリプトを制限したりします。HTTPSは通信路を守るもので、正規のページに埋め込まれたスクリプトの実行は防げません。

解説の中の「クロスサイトスクリプティング(XSS)」

「クロスサイトスクリプティング(XSS)」が出てくる問題(4問)

  1. 上のヘッダで設定されたCookieについての説明として、正しいものはどれか。
  2. ブラウザのlocalStorageとCookieの違いとして、正しいものはどれか。
  3. 掲示板のWebアプリケーションで、利用者が投稿した文章の中のスクリプトが、ほかの閲覧者のブラウザで実行されてしまう脆弱性があった。この脆弱性の名前と、根本的な対策の組み合わせとして正しいものはどれか。
  4. Webアプリケーションで、ログインしたままの利用者が攻撃者の用意した罠のページを開くと、利用者のブラウザから正規のサイトへ、利用者の意図しない送金や設定の変更のリクエストが送られてしまう脆弱性がある。この脆弱性への対策として適切なものはどれか。

情報セキュリティの基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

関連する用語

Cookie SQLインジェクション 共通鍵暗号 公開鍵暗号 最小権限の原則 ゼロデイ攻撃 ソーシャルエンジニアリング ソルト 多要素認証 デジタル署名

用語集の一覧へ