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

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

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

クロスサイトスクリプティングとは、攻撃者が送り込んだ悪意のコードをそのページを閲覧した不特定多数のユーザーに、スクリプト(簡易的なプログラム)として実行させる可能性があることを指します。「XSS」などと省略されることもあり、このような攻撃をクロスサイトスクリプティング攻撃と言います。攻撃者が罠を仕掛けたWebサイトから、標的となる別のWebサイトにユーザーを誘導、つまりサイトをまたいで(サイトをクロスして)攻撃を行うことが「クロスサイト」の由来となっています。
IPA(独立行政法人情報処理推進機構)の調査によると、2021年4月~6月で届出のあったWebサイトの脆弱性の中で、クロスサイトスクリプティングの件数が最も多く、これまでの累計でも最も多い割合を占めていました。あらゆるWebサイトにおいて注意が必要な脆弱性の一つであるとともに、ソフトウェア製品についてもクロスサイトスクリプティングの脆弱性に関する多くの届出が出されており、対策が求められています。

クロスサイトスクリプティング攻撃の仕組み

クロスサイトスクリプティング攻撃は、ユーザーからの入力データを表示する仕組みになっている、インターネット掲示板やショッピングサイトのようなWebアプリケーションで特に発生しやすい攻撃です。ユーザーは、攻撃者が罠を準備したWebサイトを閲覧してリンクをクリックするか、攻撃者が送り付けたメールに含まれる不正なリンクなどによって誘導され、標的のWebサイトにアクセスします。このとき、標的Webサイトへの入力データとして事前に不正なスクリプトが埋め込まれているため、ユーザーのブラウザー上でスクリプトが実行され、攻撃者による被害を受けてしまいます。
例えば、偽のログインフォームに誘導されて入力したパスワードを盗み取られたり、ユーザーに関する情報が保存されたcookieが盗まれ、ユーザーになりすましてSNSアカウントの乗っ取りやネットバンクでの不正な出金といった被害を受けてしまう危険性があります。

クロスサイトスクリプティング攻撃に対する対策

ユーザーの対策

ユーザーが実施すべき対策としては、当然ながらブラウザーなどのアプリケーションを常に最新にアップデートすること、そしてWebサイトやメールに含まれているリンクを安易にクリックしないことです。また、ブラウザーのセキュリティ設定を変更することで、信頼できるWebサイト以外ではJavaScriptなどのスクリプト機能を無効にするといった方法もあります。ほかにも、ウイルス対策ソフトウェアを導入し、不正なWebサイトへのアクセスや不正スクリプトの実行を阻止することも有効な対策です。

Webアプリケーション管理者の対策

Webアプリケーション管理者の対策として代表的なものをいくつかご紹介します。
まずは、ユーザーがWebページに入力する内容をそのまま表示せずに、スクリプトとして動作する文字を無効化するエスケープ処理があります。エスケープ処理は、Webページを作成する際に特別な意味を持つ記号文字(「<」、「&」など)を、意味を持たないただの文字列として認識させる書き方(「&lt;」、「&amp;」など)に書き換える方法です。これによって、もし仮に攻撃者が不正なスクリプトを埋め込もうとしても、スクリプトが動作しないよう無効化し、攻撃を回避することが可能です。
また、ユーザーが入力に使うことのできる文字の種類を制限することも有効な対策となるでしょう。例えば、パスワードの入力欄は「半角英数字6文字以上」、郵便番号や電話番号の入力欄は「数字のみ」などといった制限をかけます。この条件に合わない値を入力された場合は再入力を求めることで、不正なスクリプトの入力を防止することができます。
さらに、Webアプリケーションへの攻撃を検知・防御するWAF(Web Application Firewall)製品の導入も対策の一つです。WAFはユーザーの入力値までチェックすることができるため、不審なアクセスを検知し、クロスサイトスクリプティング攻撃をブロックすることが可能です。
攻撃者につけこまれる脆弱性を作り込んでしまわないよう、Webアプリケーション作成時からこうした対策を実施することはもちろん、改良時に対策の抜け漏れが発生してしまう可能性もあるため、定期的な対策状況の確認が重要です。

クロスサイトスクリプティングに関するおすすめ製品

クロスサイトスクリプティングなどのWebアプリケーション特有の脆弱性がないか調査します。高度な技術を有するホワイトハッカーが、ツールと手動診断を組み合わせてきめ細かに診断することで、セキュリティの強化を支援します。

おすすめコラム

サイバー攻撃から企業を守る「ホワイトハッカー」とは?仕事内容や役割を徹底解説

コンピューターなどに関する高度な知識や技術を、善良な目的のために活用するホワイトハッカー(エシカルハッカー)の仕事内容や育成動向、資格などに加え、情報セキュリティ対策における役割を詳しく解説しています。

トータルセキュリティソリューション コンテンツ一覧