(57)【要約】【課題】  ユーザアクセスと正規のアクセスのＨＴＭＬ構文を比較することによりＸＳＳ攻撃を検出し、防御を行う為の不正アクセス検出装置、不正アクセス検出方法及び不正アクセス検出プログラムを提供する。【解決手段】  不正アクセス検出装置３は、脆弱性保有Ｗｅｂサーバ６のＵＲＬを解析し、有害文字を検出するＵＲＬ解析部１６ａと、ＵＲＬ宛てにデータ送信要求を送信する第１のアクセス及び無害化データ送信要求を送信する第２のアクセスを行う代理要求部１６ｂと、第１のアクセスの結果取得した第１のコンテンツと、第２のアクセスの結果取得した第２のコンテンツを格納する一時記憶部１７と、両データのＨＴＭＬ構文を解析するＨＴＭＬ解析部１６ｃと、両者のＨＴＭＬ構文が異なると判断された際、クライアント端末１に構文解析の結果を通知するユーザ通知部１６ｅとを備える。【選択図】    図２
2006099460.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサーバに対し、自ネットワーク内のクライアント端末が外部ネットワークを介してデータ送信要求を行う際、前記ＷｅｂサーバのＵＲＬを解析し、前記クライアント端末に対する攻撃を起因する可能性のある有害情報を検出するＵＲＬ解析部と、
前記有害情報が検出された前記ＵＲＬ宛てに、前記データ送信要求を送信する第１のアクセス及び前記有害情報を無害化処理した無害化データ送信要求を送信する第２のアクセスを行う代理要求部と、
前記第１のアクセスの結果前記Ｗｅｂサーバより取得した第１のコンテンツと、前記第２のアクセスの結果前記Ｗｅｂサーバより取得した第２のコンテンツを格納する一時記憶部と、
前記一時記憶部から前記第１のコンテンツ及び前記第２のコンテンツを取得して、両者のＨＴＭＬ構文を解析するＨＴＭＬ解析部と、
構文解析の結果、前記両者のＨＴＭＬ構文が異なると判断された際には、前記クライアント端末に前記第１のコンテンツ及び前記第２のコンテンツを送信せず、前記構文解析の結果を通知するユーザ通知部
とを備えることを特徴とする不正アクセス検出装置。
【請求項２】
前記ユーザ通知部による前記構文解析の結果通知の回答として前記クライアント端末より受信する、通過を許可するデータ若しくは通過を許可しないデータの内少なくとも１つのデータのリストを記憶する通過リスト記憶部と、
前記通過リスト記憶部内の前記リストを参照して、前記クライアント端末に対する通信を許可するデータを判断する通過リスト管理部
とを更に備えることを特徴とする請求項１に記載の不正アクセス検出装置。
【請求項３】
Ｗｅｂサーバに対し、自ネットワーク内のクライアント端末が外部ネットワークを介してデータ送信要求を行う際、ＵＲＬ解析部が前記ＷｅｂサーバのＵＲＬを解析し、前記クライアント端末に対する攻撃を起因する可能性のある有害情報を検出するステップと、
前記有害情報が検出されたＵＲＬ宛てに代理要求部が前記データ送信要求を送信する第１のアクセスを行い、前記第１のアクセスの結果、前記Ｗｅｂサーバより取得した第１のコンテンツを一時記憶部に格納するステップと、
前記代理要求部が前記有害情報を無害化した無害化データ送信要求を作成し、作成された前記無害化データ送信要求を前記有害情報が検出されたＵＲＬ宛てに送信する第２のアクセスを行い、前記第２のアクセスの結果、前記Ｗｅｂサーバより取得した第２のコンテンツを一時記憶部に格納するステップと、
前記一時記憶部から前記第１のコンテンツ及び前記第２のコンテンツを取得し、ＨＴＭＬ解析部が両者のＨＴＭＬ構文を解析するステップと、
構文解析の結果、前記両者のＨＴＭＬ構文が異なると判断された際には、ユーザ通知部が前記クライアント端末に前記第１のコンテンツ及び前記第２のコンテンツを送信せず、前記構文解析の結果を通知するステップ
とを備えることを特徴とする不正アクセス検出方法。
【請求項４】
前記構文解析の結果通知の回答として、通過を許可するデータ若しくは通過を許可しないデータの内少なくとも１つを前記クライアント端末より取得し、通過リスト記憶部に格納するステップと、
前記通過リスト記憶部を参照して、通過リスト管理部が前記クライアント端末に対して通信を許可するデータを判断するステップ
とを更に備えることを特徴とする請求項３に記載の不正アクセス検出方法。
【請求項５】
Ｗｅｂサーバに対し、自ネットワーク内のクライアント端末が外部ネットワークを介して通信を行う際、前記通信を媒体とする攻撃を防御するためのコンピュータに、
前記クライアント端末が前記Ｗｅｂサーバに対してデータ送信要求を行う際、ＵＲＬ解析部が前記ＷｅｂサーバのＵＲＬを解析し、前記攻撃を起因する可能性のある有害情報を検出する命令と、
前記有害情報が検出されたＵＲＬ宛てに代理要求部が前記データ送信要求を送信する第１のアクセスを行い、前記第１のアクセスの結果、前記Ｗｅｂサーバより取得した第１のコンテンツを一時記憶部に格納する命令と、
前記代理要求部が前記有害情報を無害化した無害化データ送信要求を作成し、作成された前記無害化データ送信要求を前記有害情報が検出されたＵＲＬ宛てに送信する第２のアクセスを行い、前記第２のアクセスの結果、前記Ｗｅｂサーバより取得した第２のコンテンツを一時記憶部に格納する命令と、
前記一時記憶部から前記第１のコンテンツ及び前記第２のコンテンツを取得し、ＨＴＭＬ解析部が両者のＨＴＭＬ構文を解析する命令と、
構文解析の結果、前記両者のＨＴＭＬ構文が異なると判断された際には、ユーザ通知部が前記クライアント端末に前記第１のコンテンツ及び前記第２のコンテンツを送信せず、前記構文解析の結果を通知する命令
とを実行させることを特徴とする不正アクセス検出プログラム。
【請求項６】
前記構文解析の結果通知の回答として、通過を許可するデータ及び通過を許可しないデータの内少なくとも１つを前記クライアント端末より取得し、通過リスト記憶部に格納する命令と、
前記通過リスト記憶部を参照して、通過リスト管理部が前記クライアント端末に対して通信を許可するデータを判断する命令
とを前記コンピュータに更に実行させることを特徴とする請求項５に記載の不正アクセス検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
クロスサイトスクリプティング攻撃をいち早く発見し、その防御を行うための不正アクセス検出装置、不正アクセス検出方法及び不正アクセス検出プログラムに関する。
【背景技術】
【０００２】
国際的な規模のＩＰネットワークであるインターネットにおいては様々な不正アクセスが発生する。不正アクセスを行う悪意の第三者は、社内や家庭内のネットワークのホストコンピュータ、サーバ装置及びクライアント端末に対し外部から攻撃を行うことがある為、ネットワーク管理者はこれらのアクセスから自ネットワークを保護する必要がある。
【０００３】
不正アクセスの一つとして、クロスサイトスクリプティング攻撃（以下、「ＸＳＳ攻撃」と記載）がある。ＸＳＳ攻撃は、悪意の第三者が関連する脆弱性を持つＷｅｂサーバ（以下、「脆弱性保有Ｗｅｂサーバ」と記載）へクライアント端末をアクセスさせることによって、悪意の第三者に情報を漏洩させたり、クライアント端末に誤動作をおこさせる等の攻撃を指す。ただ、脆弱性保有Ｗｅｂサーバにクライアント端末が単純にアクセスするだけではＸＳＳ攻撃は成立しない。クライアント端末が脆弱性保有Ｗｅｂサーバに対し、自身が意識しない不正なデータを持つＵＲＬ（Uniform Resource Locator）にアクセスしてしまう場合にＸＳＳ攻撃は成立する。
【０００４】
クライアント端末が不正なデータを持つリクエストを送信してしまう可能性としては、悪意の第三者が関連するＷｅｂサイト、掲示板、電子メール、インスタントメッセンジャー等に、脆弱性保有ＷｅｂサーバのＵＲＬが記されている際に、ユーザがそれに気づかずにクライアント端末のブラウザ上で実行してしまう場合が想定される。尚、ＸＳＳ攻撃に使われるのは、脆弱性保有Ｗｅｂサーバ側でユーザのリクエストに対してＣＧＩ（Common Gateway Interface）プログラムなどによって動的に生成されるページへのアクセスである。静的なコンテンツを返すページでは発生しない。
【０００５】
不正アクセスを防御するための方式として、一般的に予め不正アクセスの攻撃手法をパターン化したデータベースを用意し、アクセス毎にパターンマッチングによって検出する手法が一般的である。この手法では、ホストコンピュータに外部からのＸＳＳ攻撃等に対しアクセスの適正を判断する機構を備えさせ、不正アクセスと判断した場合には、自ネットワークの境界に位置するルータ等に報告し、ルータのアクセスリストを変更することにより悪意の第三者の侵入を防ぐ（特許文献１参照。）。
【特許文献１】特開２００２−１８５５３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の手法では、ルータが悪意の第三者の侵入を防ぐのは２度目の侵入から、つまり不正アクセス再発の防止の為であり、初期の不正アクセスを行う際には脆弱性を持つパケットを自ネットワークへ通過させてしまうという問題があった。
【０００７】
又、ＸＳＳ攻撃では、外部からの不正アクセスから内部を守るという従来方式と異なり、防御側にあるクライアント端末が不正なデータパターンを意図せず送出してしまうことによって攻撃が成立する。よって、特許文献１の手法のように外部からの不正アクセスに対しての防御を行うだけでは、自ネットワークのクライアント端末が、誤って悪意の第三者のＷｅｂサイト、掲示板、電子メール、インスタントメッセンジャー等にアクセスしてしまった際の防御は行うことが出来なかった。
【０００８】
更に、ＸＳＳ攻撃ではアクセスパターンが画一的でなく、正常なアクセスかユーザの意図しないアクセスなのか否かの判断が難しく、パターンマッチングによる手法では不十分であった。
【０００９】
本発明は、上記問題点を解決する為になされたものであり、ユーザアクセスと正規のアクセスのＨＴＭＬ（Hyper Text Markup Language）の構文を比較することによりＸＳＳ攻撃を検出し、防御を行う為の不正アクセス検出装置、不正アクセス検出方法及び不正アクセス検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記問題点を解決する為、本発明の第１の特徴は、［イ］Ｗｅｂサーバ（６）に対し、自ネットワーク内のクライアント端末（１）が外部ネットワーク（５）を介してデータ送信要求を行う際、ＷｅｂサーバのＵＲＬを解析し、クライアント端末に対する攻撃を起因する可能性のある有害情報を検出するＵＲＬ解析部（１６ａ）と；［ロ］有害情報が検出されたＵＲＬ宛てに、データ送信要求を送信する第１のアクセス及び有害情報を無害化処理した無害化データ送信要求を送信する第２のアクセスを行う代理要求部（１６ｂ）と；［ハ］第１のアクセスの結果Ｗｅｂサーバより取得した第１のコンテンツと、第２のアクセスの結果Ｗｅｂサーバより取得した第２のコンテンツを格納する一時記憶部（１７）と；［ニ］一時記憶部から第１のコンテンツ及び第２のコンテンツを取得して、両者のＨＴＭＬ構文を解析するＨＴＭＬ解析部（１６ｃ）と；［ホ］構文解析の結果、両者のＨＴＭＬ構文が異なると判断された際には、クライアント端末に第１のコンテンツ及び第２のコンテンツを送信せず、構文解析の結果を通知するユーザ通知部（１６ｅ）とを備える不正アクセス検出装置であることを要旨とする。
【００１１】
更に本発明の第１の特徴は、［ヘ］ユーザ通知部（１６ｃ）による構文解析の結果通知の回答としてクライアント端末より受信する、通過を許可するデータ若しくは通過を許可しないデータの内少なくとも１つのデータのリストを記憶する通過リスト記憶部（１８）と；［ト］通過リスト記憶部内のリストを参照して、クライアント端末に対する通信を許可するデータを判断する通過リスト管理部（１６ｆ）とを更に備えることを加えても良い。
【００１２】
本発明の第２の特徴は、［イ］Ｗｅｂサーバ（６）に対し、自ネットワーク内のクライアント端末（１）が外部ネットワーク（５）を介してデータ送信要求を行う際、ＵＲＬ解析部（１６ａ）がＷｅｂサーバのＵＲＬを解析し、クライアント端末に対する攻撃を起因する可能性のある有害情報を検出するステップと；［ロ］有害情報が検出されたＵＲＬ宛てに代理要求部（１６ｂ）がデータ送信要求を送信する第１のアクセスを行い、第１のアクセスの結果、Ｗｅｂサーバより取得した第１のコンテンツを一時記憶部（１７）に格納するステップと；［ハ］代理要求部が有害情報を無害化した無害化データ送信要求を作成し、作成された無害化データ送信要求を有害情報が検出されたＵＲＬ宛てに送信する第２のアクセスを行い、第２のアクセスの結果、Ｗｅｂサーバより取得した第２のコンテンツを一時記憶部（１７）に格納するステップと；［ニ］一時記憶部から第１のコンテンツ及び第２のコンテンツを取得し、ＨＴＭＬ解析部（１６ｃ）が両者のＨＴＭＬ構文を解析するステップと；［ホ］構文解析の結果、両者のＨＴＭＬ構文が異なると判断された際には、ユーザ通知部（１６ｅ）がクライアント端末に第１のコンテンツ及び第２のコンテンツを送信せず、構文解析の結果を通知するステップとを備える不正アクセス検出方法であることを要旨とする。
【００１３】
本発明の第３の特徴は、［イ］Ｗｅｂサーバ（６）に対し、自ネットワーク内のクライアント端末（１）が外部ネットワーク（５）を介して通信を行う際、通信を媒体とする攻撃を防御するためのコンピュータに、クライアント端末がＷｅｂサーバに対してデータ送信要求を行う際、ＵＲＬ解析部（１６ａ）がＷｅｂサーバのＵＲＬを解析し、攻撃を起因する可能性のある有害情報を検出する命令と；［ロ］有害情報が検出されたＵＲＬ宛てに代理要求部（１６ｂ）がデータ送信要求を送信する第１のアクセスを行い、第１のアクセスの結果、Ｗｅｂサーバより取得した第１のコンテンツを一時記憶部（１７）に格納する命令と；［ハ］代理要求部が有害情報を無害化した無害化データ送信要求を作成し、作成された無害化データ送信要求を有害情報が検出されたＵＲＬ宛てに送信する第２のアクセスを行い、第２のアクセスの結果、Ｗｅｂサーバより取得した第２のコンテンツを一時記憶部（１７）に格納する命令と；［ニ］一時記憶部から第１のコンテンツ及び第２のコンテンツを取得し、ＨＴＭＬ解析部（１６ｃ）が両者のＨＴＭＬ構文を解析する命令と；［ホ］構文解析の結果、両者のＨＴＭＬ構文が異なると判断された際には、ユーザ通知部（１６ｅ）がクライアント端末に第１のコンテンツ及び第２のコンテンツを送信せず、構文解析の結果を通知する命令とを実行させる不正アクセス検出プログラムであることを要旨とする。
【発明の効果】
【００１４】
本発明の不正アクセス検出装置、不正アクセス検出方法及び不正アクセス検出プログラムによると、ユーザのＷｅｂアクセス内容を解析し、有害情報になり得るデータを検出した時に、これを無効化した上で宛先のＷｅｂサーバに送出することでクロスサイトスクリプティング攻撃の成立を回避することができる。
【００１５】
更に、本発明の不正アクセス検出装置、不正アクセス検出方法及び不正アクセス検出プログラムでは、有害情報になり得るデータと、有害情報になり得るデータを無効化したデータのＨＴＭＬ構文を解析し、クロスサイトスクリプティング攻撃か否かを判断する。この解析結果はユーザに通知され、ユーザの判断結果を基に、以後のアクセスにおいて該当アクセスを許可するか拒否するかのリストを作成する。これにより確実にユーザにとって不要なアクセスを防御することができる。
【発明を実施するための最良の形態】
【００１６】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は模式的なものであることに留意すべきである。
【００１７】
（本発明の実施の形態）
（不正アクセス検出システム）
本発明の実施の形態における不正アクセス検出システム１００は、図１に示すように、ユーザ側のクライアント端末１、クライアント端末１が複数接続可能な内部ネットワーク２、不正アクセス検出装置３、及び外部から内部ネットワーク２に対する通信の監視を行うファイアウォール４等から構成される。尚、不正アクセス検出システム１００はインターネット５を介して外部と接続可能になっている。インターネット５には脆弱性をもつ脆弱性保有Ｗｅｂサーバ６と、正規のＷｅｂサーバと偽ってクライアント端末１に脆弱性保有Ｗｅｂサーバ６にアクセスを実行させてＸＳＳ攻撃を行う悪意のＷｅｂサーバ７等が接続されている。
【００１８】
悪意のＷｅｂサーバ７は、ＸＳＳ攻撃を行う為に、悪意の第三者のＷｅｂサイト、掲示板、電子メール、インスタントメッセンジャー等にアクセスするようクライアント端末１に促す。例えば、悪意のＷｅｂサーバ７はユーザが好んでアクセスしそうな正規のＷｅｂサーバの名を借りて、悪意のＷｅｂサーバ７のＵＲＬがリンクされた電子メールをクライアント端末１に送信する。この電子メールには有害な文字が含まれているが、ユーザは一目では判断することはできない。
【００１９】
この電子メールに騙されたユーザは、正規のＷｅｂサーバのＵＲＬと信じて、脆弱性保有Ｗｅｂサーバ６のＵＲＬに、例えば図３のような形式でリクエストを送信する。
【００２０】
不正アクセス検出装置３は、クライアント端末１から有害な文字を含むリクエストを検出しても、そのリクエストのコピーを一時記憶した後、そのまま脆弱性保有Ｗｅｂサーバ６に送り、返信として脆弱性保有Ｗｅｂサーバ６より第１のコンテンツデータを受信する。このコンテンツデータはクライアント端末１には渡さず、不正アクセス検出装置３に一時留めておく。
【００２１】
次に、一時記憶されているリクエストのコピーの有害情報である有害文字データを無効化し、無効化リクエストを脆弱性保有Ｗｅｂサーバ６に送り、得られる第２のコンテンツデータを同じく不正アクセス検出装置３に一時留めておく。
【００２２】
不正アクセス検出装置３は、第１及び第２のコンテンツデータを比較して、ＸＳＳ攻撃を行う目的であると判断すると、クライアント端末１にその旨を通知し、第１及び第２のコンテンツデータをクライアント端末１に配信しない。このようにして、ユーザが気づかなかったＸＳＳ攻撃から、クライアント端末１を防御する。
【００２３】
以下、不正アクセス検出装置３について詳細に説明する。
【００２４】
（不正アクセス検出装置）
不正アクセス検出装置３は、図２に示すように、入力部１１、出力部、入出力インタフェース１３、通信制御部１４、主記憶部１５、セントラルプロセッシングユニット（以下、「ＣＰＵ」と記載）１６、一時記憶部１７及び通過リスト記憶部１８等より構成される。ＣＰＵ１６は、ＵＲＬ解析部１６ａ、代理要求部１６ｂ、ＨＴＭＬ解析部１６ｃ、パケット処理部１６ｄ、ユーザ通知部１６ｅ及び通過リスト管理部１６ｆ等を備える。ＣＰＵ１６がこれらのモジュールを実行することにより不正アクセス検出プログラムは実行される。
【００２５】
一時記憶部１７は、図１のクライアント端末１が脆弱性保有Ｗｅｂサーバ６等に対して送信するリクエスト及び無害化リクエスト、脆弱性保有Ｗｅｂサーバ６等より受信するコンテンツデータ等を一時記憶する。通過リスト記憶部１８は、不正アクセス検出装置３が通過許可するコンテンツ若しくは通過許可しないコンテンツのアドレスのリストを記憶する。
【００２６】
ＵＲＬ解析部１６ａは、クライアント端末１が送信するリクエストが脆弱性保有Ｗｅｂサーバ６に送信するものであるかを判断する為にＵＲＬの解析を行う。ＵＲＬ解析としては、図３のようなユーザ情報が入力されたＨＴＴＰ（Hyper Text Transfer Protocol）のアクセスを受信した際に、ＣＧＩプログラムに渡される引数が図４（ａ）のような正規の引数でなく、図４（ｂ）のような脆弱性保有Ｗｅｂサーバ６に返信する為の引数であるか否かを解析する。ＸＳＳ攻撃を目的とした引数では、図４（ｂ）のようにＨＴＭＬ文中に“＜”や“＞”等のＨＴＭＬタグで括られた中に、ＸＳＳ攻撃を行うための情報が記載されている。記載される情報は個々に異なる為、このＨＴＭＬタグを示す記号を有害文字として取り扱う。
【００２７】
代理要求部１６ｂは、ＵＲＬに対し代理でリクエストを要求する。このリクエストは、１つのＨＴＴＰアクセスに対し、１回目のリクエスト及び２回目の無害化リクエストの合計２回行われる。尚、代理要求部１６ｂは、２回目の無害化リクエストの送信前に、有害文字データの無害化処理を行う。無害化処理は、図６（ａ）に示すような有害文字データ“＜“や“＞”等を、図６（ａ）に示すような無害文字データ“＆ｌｔ”や“＆ｇｔ”に変換することによって行われる。ＨＴＭＬのタグを形成する“＜“と“＞”の間に記載されるＸＳＳ攻撃の為の情報は、無害化文字データに置き換えられることによって意味を持たないただのデータ列となる。
【００２８】
ＨＴＭＬ解析部１６ｃは、１回目のリクエスト及び２回目の無害化リクエストの結果受信したコンテンツデータのＨＴＭＬ構文を解析する。ＨＴＭＬ構文は正規のコンテンツだと図５（ａ）のようになるが、ＸＳＳ攻撃目的であると図５（ｂ）のように脆弱性保有Ｗｅｂサーバ６の情報を“＜”と“＞”の記号の間に記載したものとなる。
【００２９】
パケット処理部１６ｄは、クライアント端末１がインターネット５を介して外部と通信する際のパケットデータの送受信を行う。
【００３０】
ユーザ通知部１６ｅは、脆弱性保有Ｗｅｂサーバ６等より受信したコンテンツデータを一時記憶部１７に一時記憶させた状態で、クライアント端末１に図７に示すようなＨＴＭＬ解析の結果情報を通知する。
【００３１】
通過リスト管理部１６ｆは、通過リスト記憶部１８のデータの検索、新規登録、更新等の処理を行う。
【００３２】
入力部１１は、キーボード、マウス等から入力信号を受信するインタフェースである。フロッピー（登録商標）ディスク、ハードディスク等の外部記憶装置を介して入力されても良い。出力部１２は、処理結果等を出力するための装置であり、具体的には液晶ディスプレイ、ＣＲＴディスプレイ、プリンタ等を指す。入出力インタフェース１３は、不正アクセス検出装置３が他の装置との間において入力データ及び出力データを通信するための装置である。通信制御部１４は、他の装置との間においてに対し入出力データを送受信する為の制御信号を生成する。主記憶部１５は、主メモリとして、処理の手順を記述したプログラムや処理されるべきデータを一時的に記憶し、ＣＰＵ１６の要請に従ってプログラムの機械命令やデータを引き渡す。又、ＣＰＵ１６で処理されたデータは主記憶部１５に書き込まれる。主記憶部１５とＣＰＵ１６はアドレスバス、データバス、制御信号等で結ばれている。
【００３３】
（不正アクセス検出方法）
以下、不正アクセス検出装置３の動作について図８のフローチャートを参照して説明する。尚、以下の説明の前提として、クライアント端末１が、悪意のＷｅｂサーバ７より誘致の電子メール等を受信し、その電子メールに記載のＵＲＬにアクセスを行おうとしているものとする。誘致の電子メールのページは、クライアント端末１に表示するブラウザのＣＧＩ等に渡される引数によって動的に生成される。生成されたページは、ユーザに何らかのユーザ情報を入力させて送信させ、ＸＳＳ攻撃の為の処理を図１の悪意のＷｅｂサーバ７や脆弱性保有Ｗｅｂサーバ６上にて行うことができるように構成されているものとする。
【００３４】
（ａ）先ずステップＳ１０において、図２のパケット処理部１６ｄは、クライアント端末１よりリクエストの為のＨＴＴＰアクセスを受信する。ステップＳ１５において、図２のＵＲＬ解析部１６ａは、このＨＴＭＬアクセスのデータを、図４（ａ）及び（ｂ）に示すようなＣＧＩ名やＣＧＩに渡される引数等に分解する。
【００３５】
（ｂ）ステップＳ２０においては、通過リスト管理部１６ｆが、このＨＴＴＰアクセスが通過リスト記憶部１８の許可リスト若しくは拒否リストに記憶されているか否かを検索し、検索結果を基に通信許可するか否かを判断する。通信許可をする場合ステップＳ７０に進み通常のコンテンツ送信処理を行い、通信許可をしない場合はこの処理を終了する。尚、通過リスト記憶部１８のリストに存在しない場合は、ステップＳ２５へ進む。
【００３６】
（ｃ）ステップＳ２５においては、ＵＲＬ解析部１６ａがＨＴＭＬアクセスのデータより抽出される図４（ａ）及び（ｂ）に示すＣＧＩに渡される引数等の中に有害文字データが存在するか否かを判断する。図４（ａ）のように有害文字データが無い場合はステップＳ７０へ進み通常のコンテンツ送信処理を行い、図４（ｂ）のように有害文字データが有る場合はステップＳ３０へ進む。
【００３７】
（ｅ）ステップＳ３０では、パケット処理部１６ｄは、ユーザのＨＴＴＰアクセスのコピーを一時記憶部１７に格納後、ＨＴＴＰアクセスをそのまま脆弱性保有Ｗｅｂサーバ６に送信する。尚、説明の関係上、脆弱性保有Ｗｅｂサーバ６としているが、実際はこの段階では脆弱性保有Ｗｅｂサーバ６と断定できるわけではなく、脆弱性保有Ｗｅｂサーバ６である可能性があるＷｅｂサーバに送信している。
【００３８】
（ｆ）ステップＳ３５において、パケット処理部１６ｄは、ＨＴＴＰアクセスへの回答として脆弱性保有Ｗｅｂサーバ６より送信される第１のコンテンツデータを受信し、一時記憶部１７に格納する。
【００３９】
（ｇ）ステップＳ４０においては、代理要求部１６ｂは、一時記憶部１７よりＨＴＴＰアクセスを取り出し、このデータの無害化処理として、図６（ａ）の有害文字データ“＜“、“＞”等を、図６（ａ）の無害文字データ“＆ｌｔ”、“＆ｇｔ”等に変換する。“＆ｌｔ”、“＆ｇｔ”等の記号は、ＨＴＭＬコンテンツ中に現れると、ＨＴＭＬのタグを形成するための文字ではなく、単なる一文字として認識される。これにより“＜“、“＞”間のＸＳＳ攻撃の為のデータは、単なる意味の無い文字データとして認識されることになる。パケット処理部１６ｄは、無害化されたＨＴＴＰアクセスを脆弱性保有Ｗｅｂサーバ６に送信する。
【００４０】
（ｈ）ステップＳ４５においては、パケット処理部１６ｄは、無害化されたＨＴＴＰアクセスへの回答として脆弱性保有Ｗｅｂサーバ６より送信される第２のコンテンツデータを受信し、一時記憶部１７に格納する。
【００４１】
（ｉ）ステップＳ５０においては、図２のＨＴＭＬ解析部１６ｃが、一時記憶部１７より第１及び第２のコンテンツデータ取得し、両データのＨＴＭＬ構文を解析する。ステップＳ５５において、解析の結果、ＨＴＭＬ構文上異なる形式ではない場合、ステップＳ７０において通常どおりこのコンテンツデータをクライアント端末１に送信する。ＨＴＭＬ構文上明らかに異なる形式が現れた場合、ステップＳ６０において、ＨＴＭＬ解析部１６ｃは、ＸＳＳ攻撃を目的としたコンテンツデータであると判断し、このコンテンツデータをクライアント端末１には送信しない。ユーザ通知部１６ｅは、図７のような解析結果を検討する画面をクライアント端末１に送信する。ステップＳ６５において、図７の解析結果検討画面上の「拒否」、「許可」をユーザがクリック等にて選択すると、通過リスト処理部１６ｆは、この選択結果を受信し、通過リスト記憶部１８の許可リスト若しくは拒否リストの更新を行う。
【００４２】
このステップＳ６５の後、ステップＳ２０に戻り、リストの判定を行い、許可リストであれば通常のコンテンツ送信処理を、拒否リストであればこのアクセスを拒否する。
【００４３】
このように、外部から受信する２種類のコンテンツのＨＴＭＬの構文解析を行うことにより、ＸＳＳ攻撃をいち早く発見し、リストを発行し、ＸＳＳ攻撃に対する防御を行うことができる。
【００４４】
（変更例１）
上記の説明において、図１の不正アクセス検出装置３は、ファイアウォール４と内部ネットワーク２の間に存在しているが、不正アクセス検出装置３の位置はこの場所に限られず、例えば、クライアント端末１の内部に同機能をインストールし、ブラウザから見たＷｅｂプロキシサーバとして動作させても構わない。
【００４５】
（変更例２）
又、不正アクセス検出装置３はプロキシサーバとしてではなく、ブリッジ装置として動作することも可能である。この場合、クライアント端末１や、送信するＷｅｂサーバのＩＰアドレスを変える必要が無くなる。ブリッジ装置として動作する場合の不正アクセス検出装置３ａ及び関連装置の動作は図９に示すようになる。尚、不正アクセス検出装置３ａとしての大まかな動作は、上述した図８の実施の形態の動作と同じである為、詳細な説明は割愛する。
【００４６】
（ａ）先ず、ステップＳ１００において、ＴＣＰ（Transmission Control Protocol）通信としてＳＹＮパケット、ＳＹＮ／ＡＣＫパケット、ＡＣＫパケットを送受信することにより、クライアント端末１と不正アクセス検出装置３ａのコネクションを確立する（図８のステップＳ１０参照）。ステップＳ１０５においても同様に、不正アクセス検出装置３ａと脆弱性保有Ｗｅｂサーバ６とのコネクションを確立する。
【００４７】
（ｂ）ステップＳ１１０において、脆弱性保有Ｗｅｂサーバ６より第１のコンテンツを受信する（図８のステップＳ１５〜Ｓ３５参照）。ステップＳ１１５において、脆弱性保有Ｗｅｂサーバ６より第２のコンテンツを受信する（図８のステップＳ４０〜Ｓ４５参照）。尚、ステップＳ１００〜Ｓ１１５迄は、同一セッションにて行われることが望ましい。
【００４８】
（ｃ）ステップＳ１２０においては、不正アクセス検出装置３ａはコンテンツデータの有害又は無害を判断する。無害と判断された場合のみステップＳ１２５においてクライアント端末１にコンテンツを送信する（図８のステップＳ５５〜Ｓ７５参照）。
【００４９】
このように、不正アクセス検出装置３ａはブリッジ装置として動作しても、効率的にＸＳＳ攻撃を防御することが可能である。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施の形態に係る不正アクセス検出システムを示す模式図である。
【図２】本発明の実施の形態に係る不正アクセス検出装置の構造を示す構造図である。
【図３】ＨＴＴＰアクセスにて使用する画面例を示す図である。
【図４】ＨＴＴＰアドレスの構造を示す図である。
【図５】ＨＴＴＰ構文の構造を示す図である。
【図６】ＨＴＴＰ構文中の有害文字及び無害文字の例を示す図である。
【図７】ＨＴＭＬ解析結果を通知する画面を示す図である。
【図８】プロキシサーバとしての不正アクセス検出装置の動作を示すフローチャートである。
【図９】ブリッジ装置としての不正アクセス検出装置の動作を示すフローチャートである。
【符号の説明】
【００５１】
１…クライアント端末
２…内部ネットワーク
３、３ａ…不正アクセス検出装置
４…ファイアウォール
５…インターネット
６…脆弱性保有Ｗｅｂサーバ
７…悪意のＷｅｂサーバ
１１…入力部
１２…出力部
１３…入出力インタフェース
１４…通信制御部
１５…主記憶部
１６…ＣＰＵ
１６ａ…ＵＲＬ解析部
１６ｂ…代理要求部
１６ｃ…ＨＴＭＬ解析部
１６ｄ…パケット処理部
１６ｅ…ユーザ通知部
１６ｆ…通過リスト処理部
１７…一時記憶部
１８…通過リスト記憶部
１００…不正アクセス検出システム
【図１】
2006099460.tif 000003
【図２】
2006099460.tif 000004
【図３】
2006099460.tif 000005
【図４】
2006099460.tif 000006
【図５】
2006099460.tif 000007
【図６】
2006099460.tif 000008
【図７】
2006099460.tif 000009
【図８】
2006099460.tif 000010
【図９】
2006099460.tif 000011