特許第6015546号(P6015546)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノンマーケティングジャパン株式会社の特許一覧 ▶ キヤノンITソリューションズ株式会社の特許一覧

特許6015546情報処理装置、情報処理方法、プログラム
<>
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000002
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000003
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000004
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000005
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000006
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000007
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000008
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000009
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000010
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000011
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000012
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000013
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000014
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000015
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000016
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000017
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000018
  • 特許6015546-情報処理装置、情報処理方法、プログラム 図000019
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6015546
(24)【登録日】2016年10月7日
(45)【発行日】2016年10月26日
(54)【発明の名称】情報処理装置、情報処理方法、プログラム
(51)【国際特許分類】
   G06F 17/30 20060101AFI20161013BHJP
   G06F 12/00 20060101ALI20161013BHJP
【FI】
   G06F17/30 210D
   G06F17/30 140
   G06F12/00 546A
【請求項の数】6
【全頁数】20
(21)【出願番号】特願2013-96079(P2013-96079)
(22)【出願日】2013年4月30日
(65)【公開番号】特開2014-219708(P2014-219708A)
(43)【公開日】2014年11月20日
【審査請求日】2015年5月12日
(73)【特許権者】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(73)【特許権者】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】100189751
【弁理士】
【氏名又は名称】木村 友輔
(74)【代理人】
【識別番号】100188938
【弁理士】
【氏名又は名称】榛葉 加奈子
(72)【発明者】
【氏名】松田 雄介
【審査官】 小太刀 慶明
(56)【参考文献】
【文献】 米国特許出願公開第2013/0086677(US,A1)
【文献】 特開2012−108947(JP,A)
【文献】 特開2009−199302(JP,A)
【文献】 特表2012−521599(JP,A)
【文献】 特開2010−073167(JP,A)
【文献】 特開2007−226608(JP,A)
【文献】 特開2009−151723(JP,A)
【文献】 特開2011−154413(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
G06F 12/00
G06F 21/56
(57)【特許請求の範囲】
【請求項1】
ウェブページへのアクセスを制御する情報処理装置であって、
ユーザにより指定されたウェブページの構造情報を取得するウェブページ取得手段と、
ウェブページの構造情報とウェブページのカテゴリとを対応付けた第1の情報と、フィッシング警告対象のカテゴリを示す第2の情報とを記憶する記憶手段と、
前記ウェブページ取得手段により取得したウェブページの構造情報と前記第1の情報とに基づき、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、
前記カテゴリ判定手段により判定されたカテゴリが前記フィッシング警告対象のカテゴリである場合、当該ウェブページがフィッシングサイトである旨の通知をする通知手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記記憶手段は、さらに、前記カテゴリと当該カテゴリのウェブページへのアクセス制御内容とを対応付けた第の情報とを記憶することを特徴とし、
前記カテゴリ判定手段により判定されたカテゴリと前記第の情報とに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段と、
を備えることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記記憶手段は、さらに、ウェブページのURLと、当該URLにより識別されるウェブページのカテゴリとを対応付けた第の情報を記憶することを特徴とし、
前記カテゴリ判定手段は、前記ユーザにより指定されたウェブページのURLが前記記憶手段に記憶されている場合には、当該URLに対応付けて記憶されたカテゴリを当該ウェブページのカテゴリと判定し、前記ユーザにより指定されたウェブページのURLが前記記憶手段に記憶されてない場合には、当該ウェブページの構造情報に基づき、当該ウェブページのカテゴリを判定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記ウェブページの構造情報は、ウェブページのDOMツリーから抽出される特徴量であることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
【請求項5】
ウェブページの構造情報とウェブページのカテゴリとを対応付けた第1の情報と、フィッシング警告対象のカテゴリを示す第2の情報とを記憶する記憶手段を備える情報処理装置における情報処理方法であって、
前記情報処理装置のウェブページ取得手段が、ユーザにより指定されたウェブページの構造情報を取得するウェブページ取得工程と、
前記情報処理装置のカテゴリ判定手段が、前記ウェブページ取得工程により取得したウェブページの構造情報と前記第1の情報とに基づき、当該ウェブページのカテゴリを判定するカテゴリ判定工程と、
前記情報処理装置の通知手段が、前記カテゴリ判定工程により判定されたカテゴリが前記フィッシング警告対象のカテゴリである場合、当該ウェブページがフィッシングサイトである旨の通知をする通知工程と、
を備えることを特徴とする情報処理方法。
【請求項6】
ウェブページの構造情報とウェブページのカテゴリとを対応付けた第1の情報と、フィッシング警告対象のカテゴリを示す第2の情報とを記憶する記憶手段を備える情報処理装置において実行可能なプログラムであって、
前記情報処理装置を、
ユーザにより指定されたウェブページの構造情報を取得するウェブページ取得手段と、
前記ウェブページ取得手段により取得したウェブページの構造情報と前記第1の情報とに基づき、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、
前記カテゴリ判定手段により判定されたカテゴリが前記フィッシング警告対象のカテゴリである場合、当該ウェブページがフィッシングサイトである旨の通知をする通知手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ウェブフィルタリングシステムにおけるURLデータベースの構築技術に関する。
【背景技術】
【0002】
多くの企業においては、社員が業務とは無関係のウェブページを閲覧することを禁じるため、ウェブフィルタリングシステムを導入している。このウェブフィルタリングシステムは、例えば閲覧を許可するウェブページのURLを登録しておくホワイトリスト方式や、閲覧を禁止するウェブページのURLを登録しておくブラックリスト方式が採用されている。また、URLをカテゴリ分けし、カテゴリ単位で許可/禁止を設定することもある。
【0003】
このように、ウェブフィルタリングシステムにおいては、URLや、URLとカテゴリの関係を記録するためのURLデータベースを用いていることが一般的である。
【0004】
しかし、URLデータベースとのマッチングをすることで閲覧の許可/禁止をするのみでは、日々増加するウェブページに適切に対応することができない。また、頻繁にURLデータベースを更新しようとすると、維持コストが高くなってしまう。
【0005】
そこで、日々増加するウェブページを適切に分類し、フィルタリングに応用する手法が求められている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2011−141603号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
特許文献1には、処理対象の文書情報から、タグ要素の使用数に基づく特徴量を抽出し、抽出された特徴量に基づき、処理対象の文書についてカテゴリ分類をする技術が記載されている。
【0008】
しかし、特許文献1においては、ウェブページの構造情報については考慮されておらず、適切なカテゴリ分類が出来ない場合が生じる。
【0009】
そこで、本発明では、ウェブページの構造情報を用いたウェブフィルタリングシステムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置であって、ユーザにより指定されたウェブページを取得するウェブページ取得手段と、前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段と、
を備えることを特徴とする。
【0011】
また、本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置における情報処理方法であって、前記情報処理装置のウェブページ取得手段が、ユーザにより指定されたウェブページを取得するウェブページ取得工程と、前記情報処理装置のカテゴリ判定手段が、前記ウェブページ取得工程により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定工程と、前記情報処理装置のアクセス制御手段が、前記カテゴリ判定工程により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御工程と、を備えることを特徴とする。
【0012】
また、本発明は、ウェブページの構造情報とカテゴリとが対応付けて記憶され、ウェブページへのアクセスを制御する情報処理装置において実行されるプログラムであって、前記情報処理装置を、ユーザにより指定されたウェブページを取得するウェブページ取得手段と、前記ウェブページ取得手段により取得したウェブページの構造情報を用いて、当該ウェブページのカテゴリを判定するカテゴリ判定手段と、前記カテゴリ判定手段により判定されたカテゴリに基づき、当該ウェブページへのアクセスを制御するアクセス制御手段として機能させることを特徴とする。
【発明の効果】
【0013】
本発明によれば、ウェブページの構造情報を利用して、ウェブページのカテゴリ分類を行うことが可能となる。これにより、タグの前後関係や親子関係が特徴量に反映され、ウェブページをより高い精度で分類することが可能となる。また、ウェブページ全体だけでなく、ウェブページの一部分に対するフィルタリングが可能となる。また、フィッシングサイトのように他のウェブページと構造を似せたウェブページに対しても適切なフィルタリングが可能となる。
【図面の簡単な説明】
【0014】
図1】本発明のシステム構成の一例を示すシステム構成図である。
図2】URLデータベースサーバ101及びページ解析・学習サーバ102及びプロキシサーバ103の機能構成を示す図である
図3】ページ解析・学習サーバ102における教師モデル作成・更新処理を示すフローチャートである
図4】ページ解析・学習サーバ102における、リンク関係による候補URLの追加処理を示すフローチャートである
図5】プロキシサーバ103におけるフィルタリング処理を示すフローチャートである
図6】URLデータベースサーバ101における候補URLの確定処理を示すフローチャートである
図7】候補URL管理画面の一例を示す図である
図8】URLデータベースサーバ101において、管理者から確定URLに対する操作があった場合の処理を示すフローチャートである。
図9】確定URL管理画面の一例を示す図である。
図10】プロキシサーバ103における部分フィルタリング処理を示すフローチャートである
図11】ウェブページの一部分のみをフィルタリングした場合に、クライアントPC104に表示される画面の一例を示した図である
図12】プロキシサーバ103におけるフィッシング警告処理を示すフローチャートである
図13】URLデータベースの構成を示す図である。
図14】ウェブページのDOMツリーの一例を示す図である。
図15】DOMツリーの特徴量の抽出について模式的に説明した図である
図16】URLデータベースサーバ101、ページ解析・学習サーバ102、プロキシサーバ103、クライアントPC104のハードウエア構成を示す図である
図17】フィルタリングルールデータベースの一例を示す図である
図18】フィッシング警告対象カテゴリデータベースの一例を示す図である。
【発明を実施するための形態】
【0015】
図1は、本発明のシステム構成の一例を示すシステム構成図である。
【0016】
図1に示すように、URLデータベースサーバ101、ページ解析・学習サーバ102、プロキシサーバ103、クライアントPC104がそれぞれLAN105により通信可能に接続されている。また、ページ解析・学習サーバ102とプロキシサーバ103は、それぞれインターネット106に接続されている。
【0017】
101はURLデータベースサーバである。URLデータベースサーバ101には、ウェブサイトのURL(ウェブサイトを識別する識別情報)と、当該ウェブサイトのカテゴリとが対応付けて格納されている。
【0018】
102はページ解析・学習サーバである。このページ解析・学習サーバ102はウェブページの取得機能及び取得したウェブページの解析機能及び学習機能を有する。
【0019】
103はプロキシサーバである。このプロキシサーバ103はウェブページの取得機能及びクライアントPC104から要求されたウェブページに対するフィルタリング機能(クライアントPC104から要求されたウェブページを、クライアントPC104に対して送信しても良いか否かを判断する機能)を有する。
【0020】
104はクライアントPCである。このクライアントPC104はウェブページの取得機能を有する。
【0021】
105は組織内のLAN(Local Area Network)である。
106はインターネットである。
【0022】
なお、本実施形態においては、URLデータベースサーバ101、ページ解析・学習サーバ102、プロキシサーバ103をそれぞれ異なる装置として説明するが、これらの装置は同一の装置(情報処理装置)であってもよい。すなわち、各装置がそれぞれ備える機能を、1つの情報処理装置が備えるように構成してもよい。
【0023】
図2はURLデータベースサーバ101及びページ解析・学習サーバ102及びプロキシサーバ103の機能構成を示す図である。
【0024】
URLデータベースサーバ101はURLデータベース201及びデータベース管理部204を有する。
【0025】
URLデータベース201は内部に確定URLテーブル202及び候補URLテーブル203を備える。
【0026】
データベース管理部204は確定URLの追加・削除及び候補URLの確定機能を有する。
【0027】
データベース管理部204が実行するデータベース管理処理の内容については図6から図8を用いて後述する。
【0028】
ページ解析・学習サーバ102は教師モデル作成・更新部205及び候補URL追加部206及びカテゴリ識別部207及び教師データベース208を有する。
【0029】
教師モデル作成・更新部205が実行する処理内容については図3を用いて後述する。
【0030】
候補URL追加部206が実行する処理内容については図4を用いて後述する。
【0031】
カテゴリ識別部207は入力されたDOMツリーと教師データベース208の内容に基づいてカテゴリの識別を行う。
【0032】
教師データベース208は教師モデルに関するデータを格納する。
【0033】
プロキシサーバ103はフィルタリング処理部209及びフィルタリングルールデータベース210を有する。
【0034】
フィルタリング処理部209が実行する処理内容については図5を用いて後述する。
【0035】
フィルタリングルールデータベース210はフィルタリングルールに関するデータを格納する。
【0036】
次に、図3を用いて、ページ解析・学習サーバ102における教師モデル作成・更新処理を説明する。図3に示す処理は、ページ解析・学習サーバ102のCPU1601が所定の制御プログラムを読み込み実行する処理である。
【0037】
まず、教師モデルの更新処理が再構築を行う処理であるか否かを判定する(ステップS301)。
【0038】
再構築を行う場合(ステップS301のYes)は確定URLテーブル(図13A)の全エントリの処理済みマークを削除(すなわち、図13A示す確定URLテーブルの処理済みマーク1303をFALSEにする)する(ステップS302)。そして処理をステップS303に移行する。
【0039】
再構築を行わない場合(ステップS302のNo)は処理をステップS303に移行する。
【0040】
次に確定URLテーブルの処理済みでないエントリ(処理済みマーク1303がFALSEであるエントリ)の全てに対して、ステップS304からステップS309の処理を実行する(ステップS303)。
【0041】
ステップS304では処理対象のエントリのURL1301により示されるウェブページを取得する。
【0042】
次に取得したウェブページが存在するかどうか確認する(ステップS305)。ウェブページが存在するか否かは、例えば、HTTPステータスコード等により確認をすることができる。
【0043】
ウェブページが存在する場合(ステップS305のYes)、ステップS306へ処理を進める。
【0044】
ウェブページが存在しない場合(ステップS305のNo)、ステップS309へ処理を進める。
【0045】
ステップS306では、取得したウェブページの構造情報であるDOMツリー(図14)の解析を行い特徴量の抽出を行う。DOMツリーの特徴量には、例えば、ツリーの部分構造の個数からなるベクトルを用いる。特徴量の抽出について模式的に説明した図が図15である。本実施形態においては、ツリーの特徴量として部分構造の個数からなるベクトルを用いて説明するが、DOMツリーの特徴量を抽出する方法としては、これに限らず、用途に応じて様々な特徴量抽出手段を用いることが可能である。
【0046】
次に、ステップS306で求めた特徴量と、処理対象のエントリのカテゴリ情報1302を用いて、教師データベース208を更新する(ステップS307)。
【0047】
教師データベース208には、「DOMツリーの特徴量」と「カテゴリ情報」とが対応づけられたデータ」が登録されている。
【0048】
教師データベースの作成・更新及び後述するDOMツリーの特徴量を用いたカテゴリ推定(図5のステップS506)には、たとえば単純ベイズ法のような分類手法を用いることで実現可能である。但し、利用可能な分類手法はこれに限らず、用途に応じて様々な分類手法を用いてもよい。
【0049】
そして、処理対象のエントリは処理済みであるとしてマークする(すなわち、図13示す確定URLテーブルの処理済みマークをTRUEにする)(ステップS308)。
【0050】
ステップS309では、存在しないウェブページのエントリを削除する。
【0051】
以上の処理により、確定URLテーブルに格納されたデータを用いて、教師データベースを更新することができる。このように教師データベースを更新していくことで、より適切なフィルタリング処理を実現できる。
【0052】
次に図4を用いて、ページ解析・学習サーバ102における、リンク関係による候補URLの追加処理について説明する。
【0053】
図4に示す処理は、ページ解析・学習サーバ102のCPU1601が所定のプログラムを読み出して実行する処理である。
【0054】
本処理は、DOMツリーの解析処理が比較的高負荷な処理であることから、事前にリンク関係からウェブページのカテゴリを推定しておき、フィルタリング処理時の負荷を低減することが目的である。
【0055】
まず、URLデータベース(確定URLテーブル(図13A)と候補URLテーブル(図13B))に格納されている全てのエントリに対して以下の処理を行う(ステップS401)。
【0056】
ステップS402では、処理対象エントリのURL(1301、1304)が示すウェブページを取得する。
【0057】
処理対象エントリのURLが示すウェブページが存在しない場合(ステップS403のNo)、当該エントリをテーブルから削除して次のエントリへ処理を進める(ステップS409)。
【0058】
ステップS409では、処理対象の当該ウェブページが存在しないと判断されたエントリをテーブルから削除する。
【0059】
当該ウェブページが存在する場合(ステップS403のYes)、ステップS404へ処理を進める。
【0060】
ステップS404では、ステップS402で取得したウェブページの内容から、リンクしているウェブページのURLを取得する。
【0061】
ステップS404で取得したウェブページのURLすべてに対して、ステップS406からステップS408の処理を行う。
【0062】
ステップS404で取得したURL(処理対象のURL)がURLデータベース(図13Aまたは図13B)に含まれておらず、当該URLが示すリソースがテキストである場合(ステップS406のYes)は、処理をステップS407へ移行する。そうでない場合(ステップS406のNo)は次のURLに対して処理を続ける。
【0063】
ステップS407では処理対象のURLのカテゴリを推定する。カテゴリの推定については、例えば、処理対象URLのリンク元ページのカテゴリを選択したり、複数のリンク元がある場合には、それらのページのカテゴリのうち最も多いカテゴリを選択するといった方法が挙げられる。また、処理対象URLに示されるページからテキスト情報を取得し、その一部または全部に対して文章解析をすることでカテゴリを判断してもよい。このように、カテゴリ推定の方法については、いずれの方法であってもよい。
【0064】
ステップS408では該URLの情報を候補URLテーブル(図13B)に追加する。候補URLテーブルには、URL1304、推定されたカテゴリ1305、クラスタ識別子1306、ソースコード1307、プレビュー画像1308等が含まれる。
【0065】
候補URLの追加の際にクラスタリング処理を行ってもよい。クラスタリングはDOMツリーの構造やURLの構造など、様々な指標で行うことが可能である。この場合、クラスタを識別する識別子を候補URLテーブルのクラスタ識別子1306の項目に記録する。
【0066】
以上のように、予めウェブページのカテゴリ判定を行っておくことで、後述するフィルタリング処理における負荷を軽減することができる。
【0067】
次に図5を用いて、プロキシサーバ103におけるフィルタリング処理について説明する。
【0068】
図5に示す処理は、プロキシサーバ103のCPU1601が所定のプログラムを読み出して実行する処理である。
【0069】
プロキシサーバ103はクライアントPC104の要求に応じて閲覧対象のURLを取得する(ステップS501)。
【0070】
次にステップS501で取得したURLがURLデータベース201(図13Aまたは図13B)に含まれているかどうかを判断する(ステップS502)。
【0071】
当該URLがURLデータベース201に含まれている場合(ステップS502のYes)、当該URLに対応するカテゴリを取得し(ステップS508)、ステップS509に処理を進める。
【0072】
該URLがURLデータベース201に含まれていない場合(ステップS502のNo)、該URLが示すウェブページを取得する(ステップS503)。すなわち、ステップS503では、ユーザにより指定されたウェブページを取得する。
【0073】
ステップS504では、ステップS503で取得したウェブページが存在するか否かを判断する。
【0074】
当該URLのページが存在しない場合(ステップS504のNo)、クライアントPC104にエラーページ(不図示)を表示し(ステップS510)、本フローチャートの処理を終了する。
【0075】
当該URLのページが存在する場合(ステップS504のYes)、該ページのDOMツリーを解析し特徴量を抽出する(ステップS505)。特徴量の抽出については、図3のステップS306における処理と同様である。
【0076】
ステップS505で抽出した特徴量と教師データベースの情報から、ステップS501で取得したURLにより示されるウェブページが該当するカテゴリを取得する(ステップS506)(カテゴリ判定手段)。ステップS506の処理については、上述の通り単純ベイズ法のような分類手法を用いることで、カテゴリの取得が可能である。
【0077】
そして、ステップS501で取得したURLと、ステップS506で取得したカテゴリの情報とを対応付けて、候補URLテーブル(図13B)に登録する(ステップS507)。
【0078】
ステップS509では、フィルタリングルールデータベース210(図17)から、ステップS506で取得したカテゴリまたはステップS508で取得したカテゴリに対応するエントリを取得する。
【0079】
ステップS509で取得したエントリにより、ステップS506またはS508で取得したカテゴリが遮断対象であると判断された場合(ステップS510のYes)、クライアントPC104に遮断された旨を通知し(ステップS511)、本フローチャートの処理を終了する。
【0080】
遮断対象ではない場合(ステップS510のNo)、ステップS501で取得したURLのページをクライアントPC104に表示し(ステップS512)、本フローチャートの処理を終了する。
【0081】
なお、ステップS510において、該エントリが取得できなかった場合、すなわち、該カテゴリがフィルタリングルールデータベース210に登録されていない場合は、管理者の設定により、遮断対象であると判定する(ホワイトリスト方式)ことも、遮断対象であると判定しない(ブラックリスト方式)ことも可能である。
このように、ウェブページのカテゴリに基づき、アクセス制御を行う。
【0082】
次に図6を用いて、URLデータベースサーバ101における候補URLの確定処理について説明する。
【0083】
図6に示す処理は、URLデータベースサーバ101のCPU1601が所定のプログラムを読み出して実行する処理である。
【0084】
図6に示す候補URLの確定処理は、候補URL管理画面(図7)を介して管理者により確定ボタン707が押下された場合に行われる処理である。
【0085】
まず、候補URL管理画面を介して指定された確定対象のURLとカテゴリのリストを取得する(ステップS601)。
【0086】
ステップS601で取得した確定対象のURLとカテゴリに対して、それぞれ次のステップS603からステップS605の処理を実行する(ステップS602)。
【0087】
ステップS603では、ステップS601で取得したURLに対応するエントリを候補URLテーブル(図13B)から取得する。
【0088】
ステップS603で取得したエントリの情報を確定URLテーブル(図13A)に追加する(ステップS604)。この際、図7に示す候補URL管理画面においてユーザが設定したカテゴリを、ステップS603で取得したエントリに上書きして確定URLテーブルに追加する。
【0089】
候補URLテーブルからステップS603で取得したエントリを削除する(ステップS605)。
【0090】
最後に、教師モデルの更新処理(図3)を再構築なしで実行して、本フローチャートの処理を終了する。
図7は候補URL管理画面の一例を示す図である。
【0091】
管理者は候補URL管理画面701の候補URL一覧702から、確定させるURLとカテゴリリスト703からカテゴリを選択し、確定ボタン707を押下する。確定ボタンが押下されることで図6に示す候補URL確定処理が実行される。
【0092】
キャンセルボタン708が押下されると、図6に示す処理を行わずに管理画面を終了させる。
【0093】
また、この画面では、各候補URLに対応するプレビューボタン704を押下することで、プレビュー領域705に候補URL取得時のページ画像(図13Bのプレビュー画像1308)が表示される。また、表示形式選択ボタン706により、ソースコードが選択されると、当該ウェブページのソースコードの表示を行うことも可能である。
【0094】
次に図8を用いて、URLデータベースサーバ101において、管理者から確定URLに対する操作があった場合の処理について説明する。管理者による確定URLに対する操作は、後述する確定URL管理画面(図9)を介して行われるものである。
【0095】
図8に示す処理は、URLデータベースサーバ101のCPU1601が所定のプログラムを読み出して実行する処理である。
【0096】
まずステップS801では、管理者により受け付けた確定URLに対する操作種別を判断する。
【0097】
操作種別が削除である場合(ステップS801の削除)は、管理者により削除対象として選択されたURL(確定URL管理画面のチェックボックスにチェックがされたURLまたは、削除ボタン904が押下されたURL)を取得する(ステップS802)。
【0098】
次に削除対象として選択されたURLに対応するエントリを確定URLテーブルから削除し(ステップS802)、本フローチャートの処理を終了する。
【0099】
操作種別がカテゴリ変更の場合(ステップS801のカテゴリ変更)は、確定URL管理画面により管理者により選択されたカテゴリと、カテゴリ変更が行われたURLとを取得する(ステップS804)。
【0100】
次に、確定URLテーブルの当該URLに対応するエントリのカテゴリを変更し(ステップS805)、該エントリの処理済みマークを削除する(FALSEにする)(ステップS806)。
【0101】
そして、教師モデル更新処理(図3)を再構築なしで実行し(ステップS807)、本フローチャートの処理を終了する。
【0102】
操作種別が追加である場合(ステップS801の追加)、確定URL管理画面において管理者から入力されたURLとカテゴリの情報を取得する(ステップS808)。
【0103】
次に、該URLとカテゴリ情報に基づき、確定URLテーブルに新しいエントリを追加する(ステップS809)。
【0104】
そして、教師モデル更新処理を再構築なしで実行し(ステップS807)、本フローチャートに示す処理を終了する。
図9は確定URL管理画面の一例を示す図である。
【0105】
管理者により各確定URLに対応する削除ボタン904が押下されることで、確定URLテーブルから該エントリが削除される。また、確定URLリスト902から確定URLを1つまたは複数選択し、削除ボタン905が押下されることで、複数の確定URLを削除することも可能である。
【0106】
管理者は各確定URLに対応するカテゴリリスト903からカテゴリを選択することで該エントリのカテゴリを変更することが可能である。
【0107】
追加ボタン906が押下されることで、追加ダイアログ907が表示される。管理者は追加ダイアログ907にURLとカテゴリを入力し、追加ボタン910を押下することで、確定URLの追加を行う。具体的には、管理者はURL入力ボックス908に追加対象のURLを入力し、カテゴリリスト909からカテゴリを選択する。追加ボタン910を押下することで、確定URLの追加処理が実行される。
【0108】
また、キャンセルボタン911が押下されると、追加処理なしで追加ダイアログが終了する。
【0109】
次に図10を用いてプロキシサーバ103における部分フィルタリング処理について説明する。
【0110】
本発明ではウェブページの構造情報であるDOMツリーとして解析することによって、ツリーの一部分に対してカテゴリを推定することも可能である。その応用として、ウェブページ全体だけでなく、ウェブページの一部分のみをフィルタリングすることができる(図11)。
【0111】
図10に示す処理は、プロキシサーバ103のCPU1601が所定のプログラムを読み出して実行する処理である。
【0112】
まず、クライアントPC104によって要求されたウェブページのDOMツリーを解析する(ステップS1001)。
【0113】
次に、htmlノードを根とした部分木(すなわち、DOMツリー全体)を入力として部分木カテゴリ解析を実行する(ステップS1002)。
以下、部分木カテゴリ分析処理の詳細について説明する。
【0114】
部分木カテゴリ解析では、まず、入力された部分木と教師データベースの情報から、ウェブページのカテゴリを推定する(ステップS1003)。
【0115】
フィルタリングルールを参照し、ステップS1003で推定されたカテゴリが遮断対象であるかどうかを判断する(ステップS1004)。
【0116】
遮断対象であると判断された場合(ステップS1005のYes)、該部分木の表示内容を遮断された旨で書き換え(ステップS1008)、部分木カテゴリ解析処理を終了する。
【0117】
遮断対象であると判断されなかった場合(ステップS1005のNo)、該部分木の根ノードに子ノードがあるかどうか判断する(ステップS1006)。
【0118】
子ノードがある場合(ステップS1006のYes)、すべての子ノードに対してそれぞれ部分木カテゴリ解析を行う(ステップS1007)。ステップS1007の処理の詳細は、ステップS1002の処理と同様(ステップS1003〜S1008)である。
【0119】
子ノードがない場合(ステップS1006のNo)、部分木カテゴリ解析を終了する。
【0120】
図11は、ウェブページの一部分のみをフィルタリングした場合に、クライアントPC104に表示される画面の一例を示した図である。部分木ごとにフィルタリング処理が実行されるため、図11のように、ウェブページのうち正常に表示される部分(通常コンテンツ)と、フィルタリング処理の結果、遮断され、表示されない部分(不適切コンテンツ)とが混在している状況となる。
【0121】
次に図12を用いてプロキシサーバ103におけるフィッシング警告処理について説明する。
【0122】
本発明では確定URLテーブルに記載されていないURLに対しても、候補URLテーブルやDOMツリーの解析によってカテゴリを推定できる。これにより、フィルタリングルールデータベースにフィッシング警告対象の項目を追加することで、フィッシング詐欺の疑いのあるページに対して警告を発することが可能になる。例えば、既存の銀行のウェブページのURLを登録した銀行というカテゴリのある確定URLテーブルに対して、あるウェブページのURLが確定URLテーブルに記載されていないにもかかわらず、カテゴリが銀行であると推定されるような場合、該ページは銀行のウェブページによく似せたフィッシング詐欺目的のページである可能性があると判断できる。
【0123】
図12に示す処理は、プロキシサーバ103のCPU1601が所定のプログラムを読み出して実行する処理である。
【0124】
まず、クライアントPC104によって要求されたウェブページに対して、図5に記載のフィルタリング処理を実行する(ステップS1201)。
【0125】
次にステップS1201の処理により特定される当該要求されたウェブページのカテゴリが、フィッシング警告対象であるかどうかを判断する(ステップS1202)。
【0126】
フィッシング警告対象のカテゴリについては、図18に示すように予め管理者に設定され、所定の記憶領域に記憶されているものとする。
また、フィルタリングルールデータベース(図17)の一項目として、フィッシング警告対象のカテゴリである旨のフラグを立てる等により、登録してもよい。
【0127】
フィッシング警告対象でない場合(ステップS1202のNo)、本フローチャートの処理を終了する。
【0128】
フィッシング警告対象である場合(ステップS1202のYes)、当該ウェブページのURLが確定URLテーブルに含まれているかどうかを判断する(ステップS1203)。
【0129】
確定URLテーブルに含まれる場合(ステップS1203のYes)、本フローチャートの処理を終了する。すなわち、確定URLテーブルに含まれている場合には、当該URLが示すウェブページに対して、適切なアクセス制御が可能な状態であるといえる。そのため、フィッシングサイトであればアクセス制御の結果、遮断される。そのため、この場合には警告を出す必要はないといえる。
【0130】
確定URLテーブルに含まれない場合(ステップS1203のNo)、クライアントPCに警告を表示し(ステップS1204)、本フローチャートの処理を終了する。
すなわち、確定URLテーブルに登録されていないため、当該ウェブページの構造情報から特定されるカテゴリがアクセス許可するカテゴリであれば、フィッシングサイトであっても、クライアントPCに当該ページが表示されてしまう。そこで、フィッシングサイトである可能性がある旨の警告を出す必要が生じる。
【0131】
図13はURLデータベースの構成を示す図である。
図13に示すように、確定URLテーブル202は、URL1301、カテゴリ情報1302、処理済みマーク1303等から構成される。同じURLに複数のカテゴリを割り当ててもよい。
【0132】
候補URLテーブル203は、URL1304、カテゴリ1305、クラスタ識別子1306、ソースコード1307、プレビュー画像1308等から構成される。
図14は、ウェブページの構造を表現したDOMツリーの一例である。「html」をルートノードとして、htmlタグをノードとして枝分かれしている。
【0133】
図16は、URLデータベースサーバ101、ページ解析・学習サーバ102、プロキシサーバ103、クライアントPC104のハードウエア構成を示す図である。
【0134】
図16において、201はCPUで、システムバス1604に接続される各デバイスやコントローラを統括的に制御する。また、ROM1603あるいは外部メモリ1611には、CPU1601の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な各種プログラム等が記憶されている。
【0135】
1602はRAMで、CPU1601の主メモリ、ワークエリア等として機能する。CPU1601は、処理の実行に際して必要なプログラム等をROM1603あるいは外部メモリ1611からRAM1602にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0136】
また、1605は入力コントローラで、入力装置1609等からの入力を制御する。1606はビデオコントローラで、液晶ディスプレイ等のディスプレイ装置1610への表示を制御する。なお、ディスプレイ装置は、液晶ディスプレイに限られず、CRTディスプレイなどであっても良い。これらは必要に応じてクライアントが使用するものである。
【0137】
1607はメモリコントローラで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ1611へのアクセスを制御する。
【0138】
1608は通信I/Fコントローラで、ネットワーク(例えば、図1に示したLAN105)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
【0139】
なお、CPU1601は、例えばRAM1602内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ装置1610上での表示を可能としている。また、CPU1601は、ディスプレイ装置1610上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0140】
ハードウエア上で動作する各種プログラムは、外部メモリ1611に記録されており、必要に応じてRAM1602にロードされることによりCPU1601によって実行されるものである。
【0141】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【0142】
また、本発明におけるプログラムは、図3図6図8図10図12の処理をコンピュータに実行させるプログラムである。なお、本発明におけるプログラムは、図3図6図8図10図12の各処理ごとのプログラムであってもよい。
【0143】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【0144】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【0145】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
【0146】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0147】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0148】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0149】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【0150】
101 URLデータベースサーバ
102 ページ解析・学習サーバ
103 プロキシサーバ
104 クライアントPC
105 LAN
106 インターネット
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18