(57)【要約】      （修正有）【課題】ウェブページを適切に分類し、フィルタリングに応用する。【解決手段】ウエブページの構造情報（ＤＯＭ情報）とそのウエブページのカテゴリを対応付けて記憶しておき、ユーザが任意のウエブページを閲覧しようとしてそのウエブページを指定すると、ユーザにより指定されたウェブページのＤＯＭツリーを解析し、解析した結果を用いて当該ウェブページのカテゴリを判定する。判定されたカテゴリに基づき、当該ウェブページへのアクセスを許可するか禁止するかを決定する。【選択図】図１
2014219708.tif 000002
【特許請求の範囲】
【請求項１】
ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置であって、
ユーザにより指定されたウェブページを取得するウェブページ取得手段と、
前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、
前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記情報処理装置は、さらに、ウェブページを識別する識別情報と、当該識別情報により識別されるウェブページのカテゴリとを対応付けて記憶していることを特徴とし、
前記カテゴリ判定手段は、前記ユーザにより指定されたウェブページの識別情報が記憶されている場合には、当該ウェブページのカテゴリを当該識別情報に対応するカテゴリと判定し、前記ユーザにより指定されたウェブページの識別情報が記憶されていない場合には、当該ウェブページの構造情報を用いてカテゴリを判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ウェブページの構造情報は、ウェブページのＤＯＭツリーから抽出される特徴量であることを特徴とし、
前記判定手段は、前記ウェブページ取得手段により取得したウェブページのＤＯＭツリーから抽出される特徴量と、前記記憶された特徴量とを比較することにより、前記ウェブページ取得手段により取得したウェブページのカテゴリを判定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記情報処理装置は、さらに、前記記憶された識別情報により識別されるウェブページからリンクしているウェブページを取得するリンク先取得手段をさらに備え、
前記判定手段は、さらに、前記リンク先取得手段で取得したウェブページのカテゴリを判定することを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記情報処理装置は、さらに、カテゴリと当該カテゴリのウェブページへのアクセスを許可するか否かを示す情報とを対応付けられたフィルタリングルールを記憶していることを特徴とし、
前記アクセス制御手段は、前記フィルタリングルールに従い、アクセス制御をすることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記判定手段は、さらに、前記ウェブページ取得手段により取得したウェブページのＤＯＭツリーの一部について、カテゴリを判定することを特徴とし、
前記アクセス制御手段は、さらに、前記ＤＯＭツリーの一部におけるカテゴリに基づき、当該一部についてアクセス制御を行うことを特徴とする請求項３乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記情報処理装置は、さらに、フィッシング警告対象のカテゴリを記憶することを特徴とし、
前記ウェブページ取得手段により取得したウェブページのカテゴリが、フィッシング警告対象のカテゴリであるかを判定するフィッシングカテゴリ判定手段と、
フィッシングカテゴリ判定手段によりフィッシング警告対象のカテゴリであると判定された場合、当該ウェブページを識別する識別情報を記憶しているか否かを判定するフィッシングサイト判定手段と、
前記フィッシングサイト判定手段により当該ウェブページを識別する識別情報を記憶していないと判定された場合には、当該ウェブページがフィッシングサイトである旨を通知する通知手段と、
をさらに備えることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置における情報処理方法であって、
前記情報処理装置のウェブページ取得手段が、ユーザにより指定されたウェブページを取得するウェブページ取得工程と、
前記情報処理装置のカテゴリ判定手段が、前記ウェブページ取得工程により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定工程と、
前記情報処理装置のアクセス制御手段が、前記カテゴリ判定工程により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御工程と、
を備えることを特徴とする情報処理方法。
【請求項９】
ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置において実行されるプログラムであって、
前記情報処理装置を、
ユーザにより指定されたウェブページを取得するウェブページ取得手段と、
前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、
前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブフィルタリングシステムにおけるＵＲＬデータベースの構築技術に関する。
【背景技術】
【０００２】
多くの企業においては、社員が業務とは無関係のウェブページを閲覧することを禁じるため、ウェブフィルタリングシステムを導入している。このウェブフィルタリングシステムは、例えば閲覧を許可するウェブページのＵＲＬを登録しておくホワイトリスト方式や、閲覧を禁止するウェブページのＵＲＬを登録しておくブラックリスト方式が採用されている。また、ＵＲＬをカテゴリ分けし、カテゴリ単位で許可／禁止を設定することもある。
【０００３】
このように、ウェブフィルタリングシステムにおいては、ＵＲＬや、ＵＲＬとカテゴリの関係を記録するためのＵＲＬデータベースを用いていることが一般的である。
【０００４】
しかし、ＵＲＬデータベースとのマッチングをすることで閲覧の許可／禁止をするのみでは、日々増加するウェブページに適切に対応することができない。また、頻繁にＵＲＬデータベースを更新しようとすると、維持コストが高くなってしまう。
【０００５】
そこで、日々増加するウェブページを適切に分類し、フィルタリングに応用する手法が求められている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１４１６０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１には、処理対象の文書情報から、タグ要素の使用数に基づく特徴量を抽出し、抽出された特徴量に基づき、処理対象の文書についてカテゴリ分類をする技術が記載されている。
【０００８】
しかし、特許文献１においては、ウェブページの構造情報については考慮されておらず、適切なカテゴリ分類が出来ない場合が生じる。
【０００９】
そこで、本発明では、ウェブページの構造情報を用いたウェブフィルタリングシステムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置であって、ユーザにより指定されたウェブページを取得するウェブページ取得手段と、前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段と、
を備えることを特徴とする。
【００１１】
また、本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置における情報処理方法であって、前記情報処理装置のウェブページ取得手段が、ユーザにより指定されたウェブページを取得するウェブページ取得工程と、前記情報処理装置のカテゴリ判定手段が、前記ウェブページ取得工程により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定工程と、前記情報処理装置のアクセス制御手段が、前記カテゴリ判定工程により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御工程と、を備えることを特徴とする。
【００１２】
また、本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置において実行されるプログラムであって、前記情報処理装置を、ユーザにより指定されたウェブページを取得するウェブページ取得手段と、前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段として機能させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ウェブページの構造情報を利用して、ウェブページのカテゴリ分類を行うことが可能となる。これにより、タグの前後関係や親子関係が特徴量に反映され、ウェブページをより高い精度で分類することが可能となる。また、ウェブページ全体だけでなく、ウェブページの一部分に対するフィルタリングが可能となる。また、フィッシングサイトのように他のウェブページと構造を似せたウェブページに対しても適切なフィルタリングが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明のシステム構成の一例を示すシステム構成図である。
【図２】ＵＲＬデータベースサーバ１０１及びページ解析・学習サーバ１０２及びプロキシサーバ１０３の機能構成を示す図である
【図３】ページ解析・学習サーバ１０２における教師モデル作成・更新処理を示すフローチャートである
【図４】ページ解析・学習サーバ１０２における、リンク関係による候補ＵＲＬの追加処理を示すフローチャートである
【図５】プロキシサーバ１０３におけるフィルタリング処理を示すフローチャートである
【図６】ＵＲＬデータベースサーバ１０１における候補ＵＲＬの確定処理を示すフローチャートである
【図７】候補ＵＲＬ管理画面の一例を示す図である
【図８】ＵＲＬデータベースサーバ１０１において、管理者から確定ＵＲＬに対する操作があった場合の処理を示すフローチャートである。
【図９】確定ＵＲＬ管理画面の一例を示す図である。
【図１０】プロキシサーバ１０３における部分フィルタリング処理を示すフローチャートである
【図１１】ウェブページの一部分のみをフィルタリングした場合に、クライアントＰＣ１０４に表示される画面の一例を示した図である
【図１２】プロキシサーバ１０３におけるフィッシング警告処理を示すフローチャートである
【図１３】ＵＲＬデータベースの構成を示す図である。
【図１４】ウェブページのＤＯＭツリーの一例を示す図である。
【図１５】ＤＯＭツリーの特徴量の抽出について模式的に説明した図である
【図１６】ＵＲＬデータベースサーバ１０１、ページ解析・学習サーバ１０２、プロキシサーバ１０３、クライアントＰＣ１０４のハードウエア構成を示す図である
【図１７】フィルタリングルールデータベースの一例を示す図である
【図１８】フィッシング警告対象カテゴリデータベースの一例を示す図である。
【発明を実施するための形態】
【００１５】
図１は、本発明のシステム構成の一例を示すシステム構成図である。
【００１６】
図１に示すように、ＵＲＬデータベースサーバ１０１、ページ解析・学習サーバ１０２、プロキシサーバ１０３、クライアントＰＣ１０４がそれぞれＬＡＮ１０５により通信可能に接続されている。また、ページ解析・学習サーバ１０２とプロキシサーバ１０３は、それぞれインターネット１０６に接続されている。
【００１７】
１０１はＵＲＬデータベースサーバである。ＵＲＬデータベースサーバ１０１には、ウェブサイトのＵＲＬ（ウェブサイトを識別する識別情報）と、当該ウェブサイトのカテゴリとが対応付けて格納されている。
【００１８】
１０２はページ解析・学習サーバである。このページ解析・学習サーバ１０２はウェブページの取得機能及び取得したウェブページの解析機能及び学習機能を有する。
【００１９】
１０３はプロキシサーバである。このプロキシサーバ１０３はウェブページの取得機能及びクライアントＰＣ１０４から要求されたウェブページに対するフィルタリング機能（クライアントＰＣ１０４から要求されたウェブページを、クライアントＰＣ１０４に対して送信しても良いか否かを判断する機能）を有する。
【００２０】
１０４はクライアントＰＣである。このクライアントＰＣ１０４はウェブページの取得機能を有する。
【００２１】
１０５は組織内のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。
１０６はインターネットである。
【００２２】
なお、本実施形態においては、ＵＲＬデータベースサーバ１０１、ページ解析・学習サーバ１０２、プロキシサーバ１０３をそれぞれ異なる装置として説明するが、これらの装置は同一の装置（情報処理装置）であってもよい。すなわち、各装置がそれぞれ備える機能を、１つの情報処理装置が備えるように構成してもよい。
【００２３】
図２はＵＲＬデータベースサーバ１０１及びページ解析・学習サーバ１０２及びプロキシサーバ１０３の機能構成を示す図である。
【００２４】
ＵＲＬデータベースサーバ１０１はＵＲＬデータベース２０１及びデータベース管理部２０４を有する。
【００２５】
ＵＲＬデータベース２０１は内部に確定ＵＲＬテーブル２０２及び候補ＵＲＬテーブル２０３を備える。
【００２６】
データベース管理部２０４は確定ＵＲＬの追加・削除及び候補ＵＲＬの確定機能を有する。
【００２７】
データベース管理部２０４が実行するデータベース管理処理の内容については図６から図８を用いて後述する。
【００２８】
ページ解析・学習サーバ１０２は教師モデル作成・更新部２０５及び候補ＵＲＬ追加部２０６及びカテゴリ識別部２０７及び教師データベース２０８を有する。
【００２９】
教師モデル作成・更新部２０５が実行する処理内容については図３を用いて後述する。
【００３０】
候補ＵＲＬ追加部２０６が実行する処理内容については図４を用いて後述する。
【００３１】
カテゴリ識別部２０７は入力されたＤＯＭツリーと教師データベース２０８の内容に基づいてカテゴリの識別を行う。
【００３２】
教師データベース２０８は教師モデルに関するデータを格納する。
【００３３】
プロキシサーバ１０３はフィルタリング処理部２０９及びフィルタリングルールデータベース２１０を有する。
【００３４】
フィルタリング処理部２０９が実行する処理内容については図５を用いて後述する。
【００３５】
フィルタリングルールデータベース２１０はフィルタリングルールに関するデータを格納する。
【００３６】
次に、図３を用いて、ページ解析・学習サーバ１０２における教師モデル作成・更新処理を説明する。図３に示す処理は、ページ解析・学習サーバ１０２のＣＰＵ１６０１が所定の制御プログラムを読み込み実行する処理である。
【００３７】
まず、教師モデルの更新処理が再構築を行う処理であるか否かを判定する（ステップＳ３０１）。
【００３８】
再構築を行う場合（ステップＳ３０１のＹｅｓ）は確定ＵＲＬテーブル（図１３Ａ）の全エントリの処理済みマークを削除（すなわち、図１３Ａ示す確定ＵＲＬテーブルの処理済みマーク１３０３をＦＡＬＳＥにする）する（ステップＳ３０２）。そして処理をステップＳ３０３に移行する。
【００３９】
再構築を行わない場合（ステップＳ３０２のＮｏ）は処理をステップＳ３０３に移行する。
【００４０】
次に確定ＵＲＬテーブルの処理済みでないエントリ（処理済みマーク１３０３がＦＡＬＳＥであるエントリ）の全てに対して、ステップＳ３０４からステップＳ３０９の処理を実行する（ステップＳ３０３）。
【００４１】
ステップＳ３０４では処理対象のエントリのＵＲＬ１３０１により示されるウェブページを取得する。
【００４２】
次に取得したウェブページが存在するかどうか確認する（ステップＳ３０５）。ウェブページが存在するか否かは、例えば、ＨＴＴＰステータスコード等により確認をすることができる。
【００４３】
ウェブページが存在する場合（ステップＳ３０５のＹｅｓ）、ステップＳ３０６へ処理を進める。
【００４４】
ウェブページが存在しない場合（ステップＳ３０５のＮｏ）、ステップＳ３０９へ処理を進める。
【００４５】
ステップＳ３０６では、取得したウェブページの構造情報であるＤＯＭツリー（図１４）の解析を行い特徴量の抽出を行う。ＤＯＭツリーの特徴量には、例えば、ツリーの部分構造の個数からなるベクトルを用いる。特徴量の抽出について模式的に説明した図が図１５である。本実施形態においては、ツリーの特徴量として部分構造の個数からなるベクトルを用いて説明するが、ＤＯＭツリーの特徴量を抽出する方法としては、これに限らず、用途に応じて様々な特徴量抽出手段を用いることが可能である。
【００４６】
次に、ステップＳ３０６で求めた特徴量と、処理対象のエントリのカテゴリ情報１３０２を用いて、教師データベース２０８を更新する（ステップＳ３０７）。
【００４７】
教師データベース２０８には、「ＤＯＭツリーの特徴量」と「カテゴリ情報」とが対応づけられたデータ」が登録されている。
【００４８】
教師データベースの作成・更新及び後述するＤＯＭツリーの特徴量を用いたカテゴリ推定（図５のステップＳ５０６）には、たとえば単純ベイズ法のような分類手法を用いることで実現可能である。但し、利用可能な分類手法はこれに限らず、用途に応じて様々な分類手法を用いてもよい。
【００４９】
そして、処理対象のエントリは処理済みであるとしてマークする（すなわち、図１３示す確定ＵＲＬテーブルの処理済みマークをＴＲＵＥにする）（ステップＳ３０８）。
【００５０】
ステップＳ３０９では、存在しないウェブページのエントリを削除する。
【００５１】
以上の処理により、確定ＵＲＬテーブルに格納されたデータを用いて、教師データベースを更新することができる。このように教師データベースを更新していくことで、より適切なフィルタリング処理を実現できる。
【００５２】
次に図４を用いて、ページ解析・学習サーバ１０２における、リンク関係による候補ＵＲＬの追加処理について説明する。
【００５３】
図４に示す処理は、ページ解析・学習サーバ１０２のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【００５４】
本処理は、ＤＯＭツリーの解析処理が比較的高負荷な処理であることから、事前にリンク関係からウェブページのカテゴリを推定しておき、フィルタリング処理時の負荷を低減することが目的である。
【００５５】
まず、ＵＲＬデータベース（確定ＵＲＬテーブル（図１３Ａ）と候補ＵＲＬテーブル（図１３Ｂ））に格納されている全てのエントリに対して以下の処理を行う（ステップＳ４０１）。
【００５６】
ステップＳ４０２では、処理対象エントリのＵＲＬ（１３０１、１３０４）が示すウェブページを取得する。
【００５７】
処理対象エントリのＵＲＬが示すウェブページが存在しない場合（ステップＳ４０３のＮｏ）、当該エントリをテーブルから削除して次のエントリへ処理を進める（ステップＳ４０９）。
【００５８】
ステップＳ４０９では、処理対象の当該ウェブページが存在しないと判断されたエントリをテーブルから削除する。
【００５９】
当該ウェブページが存在する場合（ステップＳ４０３のＹｅｓ）、ステップＳ４０４へ処理を進める。
【００６０】
ステップＳ４０４では、ステップＳ４０２で取得したウェブページの内容から、リンクしているウェブページのＵＲＬを取得する。
【００６１】
ステップＳ４０４で取得したウェブページのＵＲＬすべてに対して、ステップＳ４０６からステップＳ４０８の処理を行う。
【００６２】
ステップＳ４０４で取得したＵＲＬ（処理対象のＵＲＬ）がＵＲＬデータベース（図１３Ａまたは図１３Ｂ）に含まれておらず、当該ＵＲＬが示すリソースがテキストである場合（ステップＳ４０６のＹｅｓ）は、処理をステップＳ４０７へ移行する。そうでない場合（ステップＳ４０６のＮｏ）は次のＵＲＬに対して処理を続ける。
【００６３】
ステップＳ４０７では処理対象のＵＲＬのカテゴリを推定する。カテゴリの推定については、例えば、処理対象ＵＲＬのリンク元ページのカテゴリを選択したり、複数のリンク元がある場合には、それらのページのカテゴリのうち最も多いカテゴリを選択するといった方法が挙げられる。また、処理対象ＵＲＬに示されるページからテキスト情報を取得し、その一部または全部に対して文章解析をすることでカテゴリを判断してもよい。このように、カテゴリ推定の方法については、いずれの方法であってもよい。
【００６４】
ステップＳ４０８では該ＵＲＬの情報を候補ＵＲＬテーブル（図１３Ｂ）に追加する。候補ＵＲＬテーブルには、ＵＲＬ１３０４、推定されたカテゴリ１３０５、クラスタ識別子１３０６、ソースコード１３０７、プレビュー画像１３０８等が含まれる。
【００６５】
候補ＵＲＬの追加の際にクラスタリング処理を行ってもよい。クラスタリングはＤＯＭツリーの構造やＵＲＬの構造など、様々な指標で行うことが可能である。この場合、クラスタを識別する識別子を候補ＵＲＬテーブルのクラスタ識別子１３０６の項目に記録する。
【００６６】
以上のように、予めウェブページのカテゴリ判定を行っておくことで、後述するフィルタリング処理における負荷を軽減することができる。
【００６７】
次に図５を用いて、プロキシサーバ１０３におけるフィルタリング処理について説明する。
【００６８】
図５に示す処理は、プロキシサーバ１０３のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【００６９】
プロキシサーバ１０３はクライアントＰＣ１０４の要求に応じて閲覧対象のＵＲＬを取得する（ステップＳ５０１）。
【００７０】
次にステップＳ５０１で取得したＵＲＬがＵＲＬデータベース２０１（図１３Ａまたは図１３Ｂ）に含まれているかどうかを判断する（ステップＳ５０２）。
【００７１】
当該ＵＲＬがＵＲＬデータベース２０１に含まれている場合（ステップＳ５０２のＹｅｓ）、当該ＵＲＬに対応するカテゴリを取得し（ステップＳ５０８）、ステップＳ５０９に処理を進める。
【００７２】
該ＵＲＬがＵＲＬデータベース２０１に含まれていない場合（ステップＳ５０２のＮｏ）、該ＵＲＬが示すウェブページを取得する（ステップＳ５０３）。すなわち、ステップＳ５０３では、ユーザにより指定されたウェブページを取得する。
【００７３】
ステップＳ５０４では、ステップＳ５０３で取得したウェブページが存在するか否かを判断する。
【００７４】
当該ＵＲＬのページが存在しない場合（ステップＳ５０４のＮｏ）、クライアントＰＣ１０４にエラーページ（不図示）を表示し（ステップＳ５１０）、本フローチャートの処理を終了する。
【００７５】
当該ＵＲＬのページが存在する場合（ステップＳ５０４のＹｅｓ）、該ページのＤＯＭツリーを解析し特徴量を抽出する（ステップＳ５０５）。特徴量の抽出については、図３のステップＳ３０６における処理と同様である。
【００７６】
ステップＳ５０５で抽出した特徴量と教師データベースの情報から、ステップＳ５０１で取得したＵＲＬにより示されるウェブページが該当するカテゴリを取得する（ステップＳ５０６）（カテゴリ判定手段）。ステップＳ５０６の処理については、上述の通り単純ベイズ法のような分類手法を用いることで、カテゴリの取得が可能である。
【００７７】
そして、ステップＳ５０１で取得したＵＲＬと、ステップＳ５０６で取得したカテゴリの情報とを対応付けて、候補ＵＲＬテーブル（図１３Ｂ）に登録する（ステップＳ５０７）。
【００７８】
ステップＳ５０９では、フィルタリングルールデータベース２１０（図１７）から、ステップＳ５０６で取得したカテゴリまたはステップＳ５０８で取得したカテゴリに対応するエントリを取得する。
【００７９】
ステップＳ５０９で取得したエントリにより、ステップＳ５０６またはＳ５０８で取得したカテゴリが遮断対象であると判断された場合（ステップＳ５１０のＹｅｓ）、クライアントＰＣ１０４に遮断された旨を通知し（ステップＳ５１１）、本フローチャートの処理を終了する。
【００８０】
遮断対象ではない場合（ステップＳ５１０のＮｏ）、ステップＳ５０１で取得したＵＲＬのページをクライアントＰＣ１０４に表示し（ステップＳ５１２）、本フローチャートの処理を終了する。
【００８１】
なお、ステップＳ５１０において、該エントリが取得できなかった場合、すなわち、該カテゴリがフィルタリングルールデータベース２１０に登録されていない場合は、管理者の設定により、遮断対象であると判定する（ホワイトリスト方式）ことも、遮断対象であると判定しない（ブラックリスト方式）ことも可能である。
このように、ウェブページのカテゴリに基づき、アクセス制御を行う。
【００８２】
次に図６を用いて、ＵＲＬデータベースサーバ１０１における候補ＵＲＬの確定処理について説明する。
【００８３】
図６に示す処理は、ＵＲＬデータベースサーバ１０１のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【００８４】
図６に示す候補ＵＲＬの確定処理は、候補ＵＲＬ管理画面（図７）を介して管理者により確定ボタン７０７が押下された場合に行われる処理である。
【００８５】
まず、候補ＵＲＬ管理画面を介して指定された確定対象のＵＲＬとカテゴリのリストを取得する（ステップＳ６０１）。
【００８６】
ステップＳ６０１で取得した確定対象のＵＲＬとカテゴリに対して、それぞれ次のステップＳ６０３からステップＳ６０５の処理を実行する（ステップＳ６０２）。
【００８７】
ステップＳ６０３では、ステップＳ６０１で取得したＵＲＬに対応するエントリを候補ＵＲＬテーブル（図１３Ｂ）から取得する。
【００８８】
ステップＳ６０３で取得したエントリの情報を確定ＵＲＬテーブル（図１３Ａ）に追加する（ステップＳ６０４）。この際、図７に示す候補ＵＲＬ管理画面においてユーザが設定したカテゴリを、ステップＳ６０３で取得したエントリに上書きして確定ＵＲＬテーブルに追加する。
【００８９】
候補ＵＲＬテーブルからステップＳ６０３で取得したエントリを削除する（ステップＳ６０５）。
【００９０】
最後に、教師モデルの更新処理（図３）を再構築なしで実行して、本フローチャートの処理を終了する。
図７は候補ＵＲＬ管理画面の一例を示す図である。
【００９１】
管理者は候補ＵＲＬ管理画面７０１の候補ＵＲＬ一覧７０２から、確定させるＵＲＬとカテゴリリスト７０３からカテゴリを選択し、確定ボタン７０７を押下する。確定ボタンが押下されることで図６に示す候補ＵＲＬ確定処理が実行される。
【００９２】
キャンセルボタン７０８が押下されると、図６に示す処理を行わずに管理画面を終了させる。
【００９３】
また、この画面では、各候補ＵＲＬに対応するプレビューボタン７０４を押下することで、プレビュー領域７０５に候補ＵＲＬ取得時のページ画像（図１３Ｂのプレビュー画像１３０８）が表示される。また、表示形式選択ボタン７０６により、ソースコードが選択されると、当該ウェブページのソースコードの表示を行うことも可能である。
【００９４】
次に図８を用いて、ＵＲＬデータベースサーバ１０１において、管理者から確定ＵＲＬに対する操作があった場合の処理について説明する。管理者による確定ＵＲＬに対する操作は、後述する確定ＵＲＬ管理画面（図９）を介して行われるものである。
【００９５】
図８に示す処理は、ＵＲＬデータベースサーバ１０１のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【００９６】
まずステップＳ８０１では、管理者により受け付けた確定ＵＲＬに対する操作種別を判断する。
【００９７】
操作種別が削除である場合（ステップＳ８０１の削除）は、管理者により削除対象として選択されたＵＲＬ（確定ＵＲＬ管理画面のチェックボックスにチェックがされたＵＲＬまたは、削除ボタン９０４が押下されたＵＲＬ）を取得する（ステップＳ８０２）。
【００９８】
次に削除対象として選択されたＵＲＬに対応するエントリを確定ＵＲＬテーブルから削除し（ステップＳ８０２）、本フローチャートの処理を終了する。
【００９９】
操作種別がカテゴリ変更の場合（ステップＳ８０１のカテゴリ変更）は、確定ＵＲＬ管理画面により管理者により選択されたカテゴリと、カテゴリ変更が行われたＵＲＬとを取得する（ステップＳ８０４）。
【０１００】
次に、確定ＵＲＬテーブルの当該ＵＲＬに対応するエントリのカテゴリを変更し（ステップＳ８０５）、該エントリの処理済みマークを削除する（ＦＡＬＳＥにする）（ステップＳ８０６）。
【０１０１】
そして、教師モデル更新処理（図３）を再構築なしで実行し（ステップＳ８０７）、本フローチャートの処理を終了する。
【０１０２】
操作種別が追加である場合（ステップＳ８０１の追加）、確定ＵＲＬ管理画面において管理者から入力されたＵＲＬとカテゴリの情報を取得する（ステップＳ８０８）。
【０１０３】
次に、該ＵＲＬとカテゴリ情報に基づき、確定ＵＲＬテーブルに新しいエントリを追加する（ステップＳ８０９）。
【０１０４】
そして、教師モデル更新処理を再構築なしで実行し（ステップＳ８０７）、本フローチャートに示す処理を終了する。
図９は確定ＵＲＬ管理画面の一例を示す図である。
【０１０５】
管理者により各確定ＵＲＬに対応する削除ボタン９０４が押下されることで、確定ＵＲＬテーブルから該エントリが削除される。また、確定ＵＲＬリスト９０２から確定ＵＲＬを１つまたは複数選択し、削除ボタン９０５が押下されることで、複数の確定ＵＲＬを削除することも可能である。
【０１０６】
管理者は各確定ＵＲＬに対応するカテゴリリスト９０３からカテゴリを選択することで該エントリのカテゴリを変更することが可能である。
【０１０７】
追加ボタン９０６が押下されることで、追加ダイアログ９０７が表示される。管理者は追加ダイアログ９０７にＵＲＬとカテゴリを入力し、追加ボタン９１０を押下することで、確定ＵＲＬの追加を行う。具体的には、管理者はＵＲＬ入力ボックス９０８に追加対象のＵＲＬを入力し、カテゴリリスト９０９からカテゴリを選択する。追加ボタン９１０を押下することで、確定ＵＲＬの追加処理が実行される。
【０１０８】
また、キャンセルボタン９１１が押下されると、追加処理なしで追加ダイアログが終了する。
【０１０９】
次に図１０を用いてプロキシサーバ１０３における部分フィルタリング処理について説明する。
【０１１０】
本発明ではウェブページの構造情報であるＤＯＭツリーとして解析することによって、ツリーの一部分に対してカテゴリを推定することも可能である。その応用として、ウェブページ全体だけでなく、ウェブページの一部分のみをフィルタリングすることができる（図１１）。
【０１１１】
図１０に示す処理は、プロキシサーバ１０３のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【０１１２】
まず、クライアントＰＣ１０４によって要求されたウェブページのＤＯＭツリーを解析する（ステップＳ１００１）。
【０１１３】
次に、ｈｔｍｌノードを根とした部分木（すなわち、ＤＯＭツリー全体）を入力として部分木カテゴリ解析を実行する（ステップＳ１００２）。
以下、部分木カテゴリ分析処理の詳細について説明する。
【０１１４】
部分木カテゴリ解析では、まず、入力された部分木と教師データベースの情報から、ウェブページのカテゴリを推定する（ステップＳ１００３）。
【０１１５】
フィルタリングルールを参照し、ステップＳ１００３で推定されたカテゴリが遮断対象であるかどうかを判断する（ステップＳ１００４）。
【０１１６】
遮断対象であると判断された場合（ステップＳ１００５のＹｅｓ）、該部分木の表示内容を遮断された旨で書き換え（ステップＳ１００８）、部分木カテゴリ解析処理を終了する。
【０１１７】
遮断対象であると判断されなかった場合（ステップＳ１００５のＮｏ）、該部分木の根ノードに子ノードがあるかどうか判断する（ステップＳ１００６）。
【０１１８】
子ノードがある場合（ステップＳ１００６のＹｅｓ）、すべての子ノードに対してそれぞれ部分木カテゴリ解析を行う（ステップＳ１００７）。ステップＳ１００７の処理の詳細は、ステップＳ１００２の処理と同様（ステップＳ１００３〜Ｓ１００８）である。
【０１１９】
子ノードがない場合（ステップＳ１００６のＮｏ）、部分木カテゴリ解析を終了する。
【０１２０】
図１１は、ウェブページの一部分のみをフィルタリングした場合に、クライアントＰＣ１０４に表示される画面の一例を示した図である。部分木ごとにフィルタリング処理が実行されるため、図１１のように、ウェブページのうち正常に表示される部分（通常コンテンツ）と、フィルタリング処理の結果、遮断され、表示されない部分（不適切コンテンツ）とが混在している状況となる。
【０１２１】
次に図１２を用いてプロキシサーバ１０３におけるフィッシング警告処理について説明する。
【０１２２】
本発明では確定ＵＲＬテーブルに記載されていないＵＲＬに対しても、候補ＵＲＬテーブルやＤＯＭツリーの解析によってカテゴリを推定できる。これにより、フィルタリングルールデータベースにフィッシング警告対象の項目を追加することで、フィッシング詐欺の疑いのあるページに対して警告を発することが可能になる。例えば、既存の銀行のウェブページのＵＲＬを登録した銀行というカテゴリのある確定ＵＲＬテーブルに対して、あるウェブページのＵＲＬが確定ＵＲＬテーブルに記載されていないにもかかわらず、カテゴリが銀行であると推定されるような場合、該ページは銀行のウェブページによく似せたフィッシング詐欺目的のページである可能性があると判断できる。
【０１２３】
図１２に示す処理は、プロキシサーバ１０３のＣＰＵ１６０１が所定のプログラムを読み出して実行する処理である。
【０１２４】
まず、クライアントＰＣ１０４によって要求されたウェブページに対して、図５に記載のフィルタリング処理を実行する（ステップＳ１２０１）。
【０１２５】
次にステップＳ１２０１の処理により特定される当該要求されたウェブページのカテゴリが、フィッシング警告対象であるかどうかを判断する（ステップＳ１２０２）。
【０１２６】
フィッシング警告対象のカテゴリについては、図１８に示すように予め管理者に設定され、所定の記憶領域に記憶されているものとする。
また、フィルタリングルールデータベース（図１７）の一項目として、フィッシング警告対象のカテゴリである旨のフラグを立てる等により、登録してもよい。
【０１２７】
フィッシング警告対象でない場合（ステップＳ１２０２のＮｏ）、本フローチャートの処理を終了する。
【０１２８】
フィッシング警告対象である場合（ステップＳ１２０２のＹｅｓ）、当該ウェブページのＵＲＬが確定ＵＲＬテーブルに含まれているかどうかを判断する（ステップＳ１２０３）。
【０１２９】
確定ＵＲＬテーブルに含まれる場合（ステップＳ１２０３のＹｅｓ）、本フローチャートの処理を終了する。すなわち、確定ＵＲＬテーブルに含まれている場合には、当該ＵＲＬが示すウェブページに対して、適切なアクセス制御が可能な状態であるといえる。そのため、フィッシングサイトであればアクセス制御の結果、遮断される。そのため、この場合には警告を出す必要はないといえる。
【０１３０】
確定ＵＲＬテーブルに含まれない場合（ステップＳ１２０３のＮｏ）、クライアントＰＣに警告を表示し（ステップＳ１２０４）、本フローチャートの処理を終了する。
すなわち、確定ＵＲＬテーブルに登録されていないため、当該ウェブページの構造情報から特定されるカテゴリがアクセス許可するカテゴリであれば、フィッシングサイトであっても、クライアントＰＣに当該ページが表示されてしまう。そこで、フィッシングサイトである可能性がある旨の警告を出す必要が生じる。
【０１３１】
図１３はＵＲＬデータベースの構成を示す図である。
図１３に示すように、確定ＵＲＬテーブル２０２は、ＵＲＬ１３０１、カテゴリ情報１３０２、処理済みマーク１３０３等から構成される。同じＵＲＬに複数のカテゴリを割り当ててもよい。
【０１３２】
候補ＵＲＬテーブル２０３は、ＵＲＬ１３０４、カテゴリ１３０５、クラスタ識別子１３０６、ソースコード１３０７、プレビュー画像１３０８等から構成される。
図１４は、ウェブページの構造を表現したＤＯＭツリーの一例である。「ｈｔｍｌ」をルートノードとして、ｈｔｍｌタグをノードとして枝分かれしている。
【０１３３】
図１６は、ＵＲＬデータベースサーバ１０１、ページ解析・学習サーバ１０２、プロキシサーバ１０３、クライアントＰＣ１０４のハードウエア構成を示す図である。
【０１３４】
図１６において、２０１はＣＰＵで、システムバス１６０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ１６０３あるいは外部メモリ１６１１には、ＣＰＵ１６０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等が記憶されている。
【０１３５】
１６０２はＲＡＭで、ＣＰＵ１６０１の主メモリ、ワークエリア等として機能する。ＣＰＵ１６０１は、処理の実行に際して必要なプログラム等をＲＯＭ１６０３あるいは外部メモリ１６１１からＲＡＭ１６０２にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【０１３６】
また、１６０５は入力コントローラで、入力装置１６０９等からの入力を制御する。１６０６はビデオコントローラで、液晶ディスプレイ等のディスプレイ装置１６１０への表示を制御する。なお、ディスプレイ装置は、液晶ディスプレイに限られず、ＣＲＴディスプレイなどであっても良い。これらは必要に応じてクライアントが使用するものである。
【０１３７】
１６０７はメモリコントローラで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ１６１１へのアクセスを制御する。
【０１３８】
１６０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、図１に示したＬＡＮ１０５）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【０１３９】
なお、ＣＰＵ１６０１は、例えばＲＡＭ１６０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ装置１６１０上での表示を可能としている。また、ＣＰＵ１６０１は、ディスプレイ装置１６１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【０１４０】
ハードウエア上で動作する各種プログラムは、外部メモリ１６１１に記録されており、必要に応じてＲＡＭ１６０２にロードされることによりＣＰＵ１６０１によって実行されるものである。
【０１４１】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１４２】
また、本発明におけるプログラムは、図３〜図６、図８、図１０、図１２の処理をコンピュータに実行させるプログラムである。なお、本発明におけるプログラムは、図３〜図６、図８、図１０、図１２の各処理ごとのプログラムであってもよい。
【０１４３】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【０１４４】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【０１４５】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【０１４６】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４８】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１４９】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１５０】
１０１  ＵＲＬデータベースサーバ
１０２  ページ解析・学習サーバ
１０３  プロキシサーバ
１０４  クライアントＰＣ
１０５  ＬＡＮ
１０６  インターネット
【図１】
2014219708.tif 000003
【図２】
2014219708.tif 000004
【図３】
2014219708.tif 000005
【図４】
2014219708.tif 000006
【図５】
2014219708.tif 000007
【図６】
2014219708.tif 000008
【図７】
2014219708.tif 000009
【図８】
2014219708.tif 000010
【図９】
2014219708.tif 000011
【図１０】
2014219708.tif 000012
【図１１】
2014219708.tif 000013
【図１２】
2014219708.tif 000014
【図１３】
2014219708.tif 000015
【図１４】
2014219708.tif 000016
【図１５】
2014219708.tif 000017
【図１６】
2014219708.tif 000018
【図１７】
2014219708.tif 000019
【図１８】
2014219708.tif 000020