クロスサイトスクリプティング(XSS)はどんな脅威?その対策方法とは

クロスサイトスクリプティング(XSS)はどんな脅威?その対策方法とは

サイバーセキュリティ対策の重要性は日ごとに高まっていますが、セキュリティを強化する上では、それぞれの脅威についての深い理解が必要です。クロスサイトスクリプティング(XSS)は、企業向けの脅威として広く知られている攻撃方法の一種で、徹底した対策が求められます。

今回は、そんなXSSの仕組みや種類、そしてどのような対策方法が有効なのかについて、具体的な被害事例とともにご紹介します。

 

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

クロスサイトスクリプティングは、HTMLに脆弱性を抱えているサイトを狙ったサイバー攻撃の一種で、脆弱性を持つサイトから悪質サイトへ誘導するなどして、ユーザーの個人情報を抜き取るというものです。

問い合わせフォームを持つサイトや掲示板サイト、ECサイトなどが主なターゲットとなっており、外部から悪意あるスクリプトが埋め込まれることで、サイトにアクセスするだけで勝手に起動することから、非常に悪質な攻撃方法であるとして徹底した対策が呼びかけられています。

セキュリティ対策の施されていない、個人用サイトへのクロスサイトスクリプティングはもちろんのこと、セキュリティ対策が行き届いていると思われる大手企業のサイトでも被害報告が届けられており、誰もが脅威のターゲットとなり得る点が問題視されています。

 

XSSの仕組み

XSSは、主にコンピュータプログラム(スクリプト)をサイトに直接入力することで、悪意あるユーザーが罠を仕掛け、発動します。

XSSで使われるスクリプトはHTMLやJavascriptといった平易な言語で入力され、XSS対策が施されていないサイトでスクリプトを入力すると、サイト管理者が許可していないポップアップで悪質サイトへ誘導したり、あるいはユーザーを勝手に悪質サイトへリンクさせたりと、意図しない挙動ができるように改変されてしまうのが特徴です。

また、ユーザーのCookie情報をスクリプトを起動することで抽出し、なりすまし犯罪や個人情報の流出といった事態を招くことも可能です。具体的な脅威については、後ほどご紹介します。

 

XSSの種類

XSSは大きく分けて、以下のようなカテゴリに分類することができます。それぞれの脅威の違いについて理解を深め、対策を検討しましょう。

反射型XSS

反射型XSSは、最もポピュラーなXSSの攻撃方法の一種です。攻撃者が不正サイトへの誘導やCookieの抜き取りにつながる罠を脆弱性を抱えたサイトに仕掛け、ユーザーが罠を踏んだ際にマルウェアへの感染や情報の抜き取りを実行します。

格納型・蓄積型XSS/持続型XSS

格納型・蓄積型XSS、及び持続型XSSは、脆弱性を抱えたサイトに不正なスクリプトを仕掛け、ユーザーが該当ページを開くたびに不正スクリプトを実行するという手法です。外部サイトへの誘導などが行われないため、一見すると気がつきにくい攻撃方法でもあります。

DOM Based XSS

DOM Based XSSは、ブラウザのプラグインが有する脆弱性や、Javascriptの脆弱性を突いた攻撃方法です。反射型や格納型のXSSはサーバーに対して攻撃を行うのに対し、DOM Based XSSはブラウザ上で攻撃を行います。上記二つのXSSとは仕組みが異なるため、別個の対策が求められる点に注意が必要です。

 

XSSがもたらす被害

XSSがもたらす被害としては、以下のようなケースが挙げられます。

Webページの改ざん(フィッシング詐欺)

Webページを不正に改ざんし、外部の有害サイトへのアクセスを促したり、ポップアップを表示してクリックを促したりする被害はXSSの典型例と言えます。アクセスをするだけで不正プログラムが起動したり、精巧に作られた罠サイトに個人情報を入力させ、情報を抜き取ったりする行為が頻発しているため、最大限の警戒が必要です。

不正アクセス

XSSによってCookie情報をユーザーから抽出し、なりすまし犯罪などに悪用されるケースが相次いでいます。サイト利用によって生まれるCookie情報には、ログインパスワードやIDなど、重要な個人情報につながる情報が数多く含まれています。これらを脅威から守り、不正利用を回避することが大切です。

個人情報流出

フィッシングサイトへのアクセスやCookieの流出によって得られた個人情報は、なりすまし犯罪だけでなく、情報がそのまま売買されるケースも増加傾向にあります。個人情報が単体の攻撃者に覗かれるだけでなく、彼らの手で非正規のルートで流出し、世界中に拡散してしまう危険性もあるため、攻撃を未然に防ぐことが大切です。

 

国内におけるXSS被害の事例

XSSによる被害は世界各国で報告されており、日本も例外ではありません。ここでは、最近の国内におけるXSS被害の事例について、ご紹介します。

ベイシアネットショップ等11社

2021年9月、EC通販を手掛けるペイシアネットショップをはじめ、同じSaaSを利用していた11社のECがXSSによるサイバー攻撃を受け、43万件にも達する情報漏洩が発生していたことがわかりました。

いずれのECサイトも同じECサイト構築サービスを利用しており、基幹サーバーに対する不正アクセスの痕跡が見つかったことからXSSであると断定され、外部アクセス遮断などの対処に追われています。

トコちゃんドットコムECサイト

2021年11月、骨盤ケア用品などを手掛けるECサイト「トコちゃんドットコムECサイト」にて、XSSの記述がある不審な注文が行われていることが発覚しました。調査の結果、同サイトの脆弱性を突いた不正アクセスの痕跡が判明し、購入者のクレジットカード情報漏洩、及びカードの不正使用の疑いが懸念されています。

ユニクロ

2019年5月、衣料品販売大手のユニクロECサイトに対して、ユーザー名とパスワードがセットになった個人情報リストを悪用し、不正アクセスを試みるリスト型攻撃が行われたことを発表しました。

不正ログインの被害を受けたのは約46万人に及び、住所や電話番号といった詳細な個人情報の流出に発展した可能性があるとして、注意喚起が行われています。

XSS経由で不正入手したIDやパスワード情報は、このような形で悪用され、さらに重要な個人情報にアクセスする機会をもたらす場合もあるため、注意が必要です。

 

XSSに有効な対策方法とは(ユーザー向け)

XSSは各企業が攻撃対象となり得る驚異であるため、できる限りの対策をユーザー、そして企業が実施する必要があります。

ブラウザのアップデートを怠らない

まずユーザーが最低限行うべきは、ブラウザを常に最新の状態に更新しておくことです。

XSSは企業のサーバーだけでなく、ユーザー固有のブラウザへ直接攻撃するタイプのものも存在します。そのため、普段使用するブラウザもアップデートがあった際にはすぐに更新し、脅威にさらされるリスクを回避しましょう。

セキュリティソフトを使って不審なスクリプトを排除する

マルウェア感染やフィッシング対策同様、セキュリティソフトを使って、不正なスクリプトが実行されるのを回避することも大切です。セキュリティソフトを導入していない場合、できるだけ早いインストールをおすすめします。

 

XSSに有効な対策方法とは(企業向け)

ユーザーだけでなく、企業もサーバーやWebサイトに対して対策を施し、脅威からサービスを守る努力が求められます。

WAFを導入する

XSS対策としてポピュラーなのが、Web Application Firewall(WAF)の導入です。WAFはWebサービスなどのアプリケーションを、XSSを含めた外部からの脅威を回避するために運用されている、セキュリティ製品の一種です。

不正スクリプトや改ざんなどの脅威からサービスを守り、ユーザーが安心して利用できる環境の整備に貢献しています。

サニタイジング処理を実施する

サニタイジング処理は、XSSに使用される可能性のある文字を自動的に置換し、スクリプトを起動できないようにするための防止策です。エスケープ処理とも呼ばれ、確かな効果を発揮することから不可欠な処理として重宝されています。

バリデーション処理を実施する

バリデーション処理は、不正スクリプトに関連し得る規定外の文字入力が行われた場合、再入力を求めてスクリプトの起動を回避するための防止策です。サニタイジング処理と合わせて活用されています。

出力はhttp・httpsから始まるURLに限定して不正な処理を回避する

URLとして一般的なのは「http」「https」から始まるものですが、実際には「javascript:」もURLに含まれており、これらを使って不正スクリプトを起動することも可能です。リンクを設置できるWebサービスの場合、貼り付けられるURLは「http」「https」に限定することで、不正な処理を回避することができます。

 

まとめ

XSSは非常にポピュラーなサイバー攻撃の一種で、国内外を問わず多くの企業がその被害に遭っています。シンプルな手口ではあるものの、個人情報流出や不正アクセスといった重大な脅威を誘引する可能性が高く、決して軽視できるものではありません。

XSS対策はユーザー、及び企業が自主的に取り組むことも可能なため、まずは自社サイト・サービスの脆弱性を調査し、必要に応じた対策を施しましょう。

関連トピック