説明

アクセス制御システム、アクセス制御装置及びアクセス制御方法

【課題】複数のアクセスに同時に対処しつつ、サーバの改ざんチェックを実施してセキュリティを維持することを課題とする。
【解決手段】アクセス制御システムは、外部ネットワークからのアクセスをWebサーバに転送する転送処理、アクセス前後におけるWebサーバの差分確認処理、及び、Webサーバのディレクトリ構成をマスタ環境で上書き更新するマスタ上書き処理のいずれにも介在せずにアクセス待機状態にあるWebサーバだけを転送先としてアクセス制御を行うこととした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御システム、アクセス制御装置及びアクセス制御方法に関する。
【背景技術】
【0002】
近年、インターネットの普及に伴い、個人情報の管理やアプリケーションの配信を実施するサーバに対するサイバー攻撃が急増している。
【0003】
このサイバー攻撃の代表例としては、攻撃者が正規ユーザのサーバや端末に不正アクセスするために用いる攻撃ツールプログラムであるマルウェアを利用したDDoS(Distributed Denial of Services)攻撃やスパム送信や情報盗難などが挙げられる。
【0004】
これらの攻撃の多くは、既存のサーバを乗っ取り、そのサーバを踏み台として他のサーバを攻撃する形で実施される。
【0005】
従来、これらの脅威に対処するために、ファイアウォール機能と転送データ監視機能をルータ等のパケット転送装置に実装してサーバ監視機能を構築し、それをサーバの前段に配置することで、送受信されるデータの内容やパケットヘッダ内容に応じて通信を制御するアクセス制御技術が用いられる。
【0006】
この技術では、サーバ監視機能を開発したセキュリティベンダが、既知のソフトウェア脆弱性やマルウェアを解析することで、攻撃者がサーバに対して取りうる送信メッセージパターンをシグネチャ化し、シグネチャにマッチする送信メッセージをサーバ監視機能でフィルタする。これにより、攻撃者の不正アクセスからサーバを防衛する。
【0007】
しかし、サーバ監視装置では、シグネチャにマッチしない通信についてはネットワークの通過を許容するため、この通過可能な通信サービスを悪用した不正アクセスを完全に阻止することは困難である。
【0008】
このため、例えば、セキュリティベンダにとって未知となるソフトウェアの脆弱性や、セキュリティベンダが解析していないソフトウェアの脆弱性に基づいた攻撃には対応することはできないというボトルネックがあった。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2006−114044号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
ところで、最近では、上記のボトルネックを解消すべく、脆弱性があるソフトウェアを故意に搭載した囮サーバをサーバ監視機能配下に配置し、サーバ監視機能で囮サーバへのアクセスを監視する仕組みが考えられつつある。
【0011】
すなわち、攻撃者がアプリケーション提供サーバ等に不正アクセスする際に利用するマルウェアを代表としたプログラムを囮サーバがダウンロードする際の挙動を捉え、ダウンロード要求先をマルウェアダウンロード用のサイトと特定する方式が検討されている。
【0012】
この方式により取得したマルウェアダウンロードサイトをブラックリストとして、顧客サーバまたは顧客サーバとネットワークの境界に配置されたファイアフォール機能やセキュリティアプライアンス等に入力することで、顧客サーバがマルウェアに感染する事態を回避する。
【0013】
ところが、上記の方式では、攻撃が発生する毎に囮サーバがマルウェアに感染する可能性がある。そして、マルウェアに感染した囮サーバは、攻撃者の意図に応じてC&Cサーバへの接続を試行する場合や他者に攻撃トラヒックを送信する場合がある。このため、攻撃が直接の原因となって引き起こされるマルウェアダウンロードを正確に抽出するには、囮サーバがマルウェアに感染していないことが前提条件となる。
【0014】
この前提条件を満たすために、従来では、囮サーバへの攻撃が確認された後に囮サーバが改ざんされているか否かを調査し、必要に応じて囮サーバをマルウェア感染前の状態に戻す処理を行っている。
【0015】
しかしながら、囮サーバをマルウェア感染前の状態に戻すには、一定の期間(数分程度)が必要であるので、状態の差戻し中には囮サーバで攻撃を収集できないという問題がある。
【0016】
また、囮サーバを用いずに顧客サーバを直接監視する方式においても、上記の囮サーバの場合と同様に、不正アクセス受付時に当該顧客サーバをマルウェア感染前の状態に戻す必要があり、顧客サーバは一定期間ユーザからのアクセスを受け付けることができないという問題が発生する。
【0017】
これらのことから、囮サーバまたは顧客サーバのいずれのサーバの場合であっても、サーバの状態を外部アクセス前の状態に戻すまでの期間に受け付ける他の外部アクセスをいかにして取り扱うかが重要な課題となっている。
【0018】
そこで、本発明は、上述した従来技術による課題(問題点)を解消するためになされたものであり、複数のアクセスに同時に対処しつつ、サーバの改ざんチェックを実施してセキュリティを維持できるアクセス制御システム、アクセス制御装置及びアクセス制御方法を提供することを目的とする。
【課題を解決するための手段】
【0019】
本願の開示するアクセス制御システムは、一つの態様において、統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御システムであって、前記複数のサーバが前記外部ネットワークからのアクセスを待機するアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段と、前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送手段と、前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と前記マスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認手段と、前記差分確認手段による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新手段と、前記転送手段に対して、前記転送手段、前記差分確認手段および前記更新手段による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御手段とを有することを特徴とする。
【0020】
本願の開示するアクセス制御装置は、一つの態様において、統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御装置であって、前記複数のサーバが前記外部ネットワークからのアクセスを待機するアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段と、前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送手段と、前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と前記マスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認手段と、前記差分確認手段による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新手段と、前記転送手段に対して、前記転送手段、前記差分確認手段および前記更新手段による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御手段とを有することを特徴とする。
【0021】
本願の開示するアクセス制御方法は、一つの態様において、統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御システムに適用するアクセス制御方法であって、前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送工程と、前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と、前記複数のサーバがアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認工程と、前記差分確認工程による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新工程と、前記転送工程に対して、前記転送工程、前記差分確認工程および前記更新工程による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御工程とを含んだことを特徴とする。
【発明の効果】
【0022】
本願の開示するアクセス制御システムおよび不正アクセス監視方法の一つの態様によれば、悪意あるユーザの攻撃からサーバを防衛しつつ、サーバで多数のユーザに同時にサービスを提供させることが可能になるという効果を奏する。
【図面の簡単な説明】
【0023】
【図1】図1は、実施例1に係るアクセス制御システムの概要を説明するための図である。
【図2】図2は、実施例1におけるネットワークモデルの一例を示すブロック図である。
【図3】図3は、サーバ監視機能部の構成を説明するためのブロック図である。
【図4】図4は、状態管理テーブルの一例を示す図である。
【図5】図5は、従来のアクセス制御の処理手順例を説明するための図である。
【図6】図6は、実施例1に係るアクセス制御システムにおけるデータフローを示す図である。
【図7】図7は、実施例1に係るアクセス制御システムによる処理手順(アクセス制御)を示すシーケンス図である。
【図8】図8は、ブラックリストを利用する場合のサーバ監視機能部の構成を説明するためのブロック図である。
【図9】図9は、マスタ情報アップデート管理部に保存される情報の一例を示す図である。
【図10】図10は、ホワイトリストを利用する場合のサーバ監視機能部の構成を説明するためのブロック図である。
【発明を実施するための形態】
【0024】
以下に、本願の開示するアクセス制御システム、アクセス制御装置およびアクセス制御方法の実施例を詳細に説明する。なお、以下の実施例により本発明が限定されるものではない。
【実施例1】
【0025】
[実施例1に係るアクセス制御システムの概要]
まず、図1を用いて、実施例1に係るアクセス制御システムの概要を説明する。図1は、実施例1に係るアクセス制御システムの概要を説明するための図である。
【0026】
図1に示すように、実施例1に係るアクセス制御システムには、外部ネットワークからのアクセスを受け付ける複数のWebサーバが設置されている。なお、これらのWebサーバの間では、統一資源識別子またはアドレスを共有するものとする。
【0027】
ここで、アクセス制御システムは、外部ネットワークからアクセスを受け付けた場合に、アクセス待機状態以外の状態にあるWebサーバには当該アクセスを転送しない。
【0028】
これを具体的に説明すると、図1に示すように、アクセスaがアクセスbを受け付ける前に既に受け付けられている状況では、WebサーバAは、アクセスaを現在受け付けている状態であったり、アクセスa前後の差分が抽出されている状態であったり、或いはWebサーバAの内容がマスタとなる状態(アクセスaを受け付ける前の状態)に上書されている状態のいずれかの状態に遷移している。
【0029】
このように、WebサーバAがアクセスの受付を待機している状態(アクセス待機状態)以外の状態に遷移している場合にWebサーバAへアクセスbを転送すると、マルウェアに感染している危険性があるWebサーバAにアクセスbを転送することなる。
【0030】
特に、WebサーバAが囮サーバとして機能する場合には、不正なアクセスを受け付けたとしても、アクセスa及びアクセスbのいずれが原因となってマルウェアのダウンロードが引き起こされているのかを判別するのが困難になってしまう。
【0031】
このため、アクセスaに関する各種の処理がWebサーバAで係属している期間にWebサーバAへアクセスbを転送するのは好ましいと言えない。
【0032】
そこで、アクセス制御システムでは、アクセス待機状態にあるWebサーバだけを対象に外部ネットワークからのアクセスを転送させることとした。
【0033】
図1の例で言えば、外部ネットワークから受け付けたアクセスbをWebサーバAに転送するのではなく、アクセス待機状態にあるWebサーバBに転送する。これによって、WebサーバAの状態をアクセスaを受け付ける前の状態に戻すまでの所要期間であっても、アクセスaの後に受け付けたアクセスbをWebサーバBで並行して処理させる。
【0034】
したがって、実施例1に係るアクセス制御システムでは、短時間に集中したアクセスを複数のWebサーバで並列処理して対処しつつ、Webサーバの改ざんチェックを実施してWebサーバのセキュリティを維持することが可能になる。
【0035】
[実施例1に係るアクセス制御システムの構成]
次に、図2を用いて、実施例1に係るアクセス制御システムの構成を説明する。図2は、実施例1におけるネットワークモデルの一例を示すブロック図である。
【0036】
図2に示すように、ネットワーク1は、データ中継装置6〜9を経由することでネットワーク2〜5を収容している。ここで、データ中継装置とは、一般的なルータやスイッチ、ゲートウェイ装置などである。また、ネットワーク1は、インターネットのような広域ネットワークであり、ネットワーク2〜5は、それ以外のLAN(Local Area Network)やホームネットワークなどのネットワークである。
【0037】
データ中継装置6は、顧客から預かるユーザWebサーバ10、11を収容し、サーバ監視機能部14経由で囮Webサーバ16、17も収容している。
【0038】
なお、サーバ監視機能部14は、図2に示すようにデータ中継装置6の外に配置してもよいが、データ中継装置6の一機能の位置付けでデータ中継装置6内に配置してもよい。
【0039】
また、サーバ監視機能部14、囮Webサーバ16および囮Webサーバ17の物理インタフェースを1口とするのであれば、各々の装置に接続した物理リンクをルータやスイッチ、ハブなどの転送装置に接続すればよい。
【0040】
すなわち、例えば、サーバ監視機能部14、囮Webサーバ16および囮Webサーバ17それぞれの物理インタフェースを1台のルータに接続し、該ルータの他の物理インタフェースを、データ中継装置6に接続すればよい。
【0041】
一方で、各サーバ監視機能部14、囮Webサーバ16および囮Webサーバ17の物理インタフェースを複数口とするのであれば、サーバ監視機能部14と囮Webサーバ16および囮Webサーバ17をハブ&スポーク状に物理リンクで接続すればよい。
【0042】
すなわち、例えば、囮Webサーバ16および囮Webサーバ17それぞれの物理インタフェースをサーバ監視機能部14のある物理インタフェースに接続し、サーバ監視機能部14の他の物理インタフェースをデータ中継装置6に接続すればよい。なお、これはデータ中継装置6、ユーザWebサーバ10およびユーザWebサーバ11も同様である。
【0043】
また、データ中継装置7は、サーバ監視機能部15経由でユーザWebサーバ12、13も収容している。
【0044】
これらのネットワーク2、3では、囮WebサーバとユーザWebサーバとを各々2台配置しているが、台数は単数でも3台でもよく、1台のデータ中継装置に収容される囮Webサーバの台数とユーザWebサーバの台数とが異なってもよい。さらに、攻撃情報の収集のみを目的にして囮Webサーバのみを配置してもよい。
【0045】
また、ネットワーク4、5には、不正アクセスを試行する攻撃者が使用する端末18や、攻撃者が正規ユーザやユーザWebサーバに不正アクセスするために用いるマルウェアを保存しているマルウェア配布サーバ19が、各々データ中継装置8、9経由で収容されている。
【0046】
なお、本実施例では、サーバ監視機能部の配下に配置されるサーバには、ローカルアドレスを割り当てて両者の通信を担保することとするが、グローバルアドレスを割り当ててもかまわない。
【0047】
例えば、グローバルアドレスを割り当てる場合には、サーバ監視機能部とサーバの間でトンネル接続し、当該サーバに関する全通信をサーバ監視機能部経由で送受信するように、サーバに転送設定およびフィルタ設定を実施してもよい。
【0048】
また、図2に示すネットワーク2または3からサーバを切り離し、アクセスを受け付ける最低限のサーバをネットワークに接続し、当該サーバに限定してアドレスを付与してもよい。
【0049】
また、同様に、図2に示すネットワーク2または3からサーバを切り離し、アクセスを受け付ける最低限のサーバをネットワーク2または3に接続し、当該サーバに限定してサーバ監視機能部との間でトンネルを設定し、当該サーバに転送設定およびフィルタ設定する方式を採用してもよい。
【0050】
[サーバ監視機能部の構成]
次に、図3および図4を用いて、サーバ監視機能部の構成を説明する。図3は、サーバ監視機能部の構成を説明するためのブロック図であり、図4は、状態管理テーブルの一例を示す図である。
【0051】
ここで、図3においては、サーバ監視機能部14を例示して説明するが、サーバ監視機能部15も同様の構成となり、サーバ監視機能部に収容される配下のWebサーバが囮WebサーバまたはユーザWebサーバのいずれである場合でも同様の機能を果たす。
【0052】
このため、以下では、これら両者を区別せずに配下のWebサーバを単にWebサーバと記載することとする。なお、配下のWebサーバとして囮Webサーバを設ける場合には、特願2009−043210に開示される機能部(マルウェア配布サイトのリストを作成するために必要な機能部)をサーバ監視機能部に内在させるのがより好ましい。
【0053】
図3に示すように、サーバ監視機能部14は、アクセス管理部24及びイベント通知部25を内在するアクセススケジューラ20と、差分抽出部21と、リフレッシュ部22と、状態管理テーブル26及びマスタ状態管理部27を内在するイベント管理部23と、ログ管理部28とを有する。
【0054】
状態管理テーブル26は、サーバ監視機能部が収容するWebサーバの識別子ごとに当該Webサーバがイベントに伴う遷移の結果として滞在する状態を記憶するテーブルである。なお、ここで言うイベントとは、Webサーバでのアクセス受付、差分抽出やマスタ上書きなどの事象を指すものとする。
【0055】
この状態管理テーブル26では、Webサーバの識別子(以下、サーバ識別子という)をキーとして、各サーバがアクセスを待機している状態「アクセス待機状態」、アクセスを受け付けている状態「アクセス受付状態」、アクセス前後の差分を抽出している状態「差分抽出状態」、さらには、サーバの内容をマスタとなる状態で上書きしている状態「マスタ上書き状態」の4つの状態への遷移が管理される。
【0056】
例えば、図4に示す例では、アクセス待機状態を「1」、アクセス受付状態を「2」、差分抽出状態を「3」、マスタ上書き状態を「4」と規定する場合のテーブル構成を例示しており、サーバ識別子「#1」が採番されたWebサーバがアクセス待機状態に遷移しており、また、サーバ識別子「#2」が採番されたWebサーバがアクセス受付状態に遷移していることを表している。
【0057】
なお、図4では、図示を省略しているが、状態管理テーブル26には、アクセス受付状態「2」および差分抽出状態「3」に遷移している場合に、アクセス送信元のユーザ端末の情報がさらに保存される。ここで言うユーザ端末の情報とは、IP(Internet Protocol)アドレスやMAC(Media Access Control)アドレス等のユーザ識別子を指す。
【0058】
マスタ状態管理部27は、サーバ監視機能部が収容しているWebサーバのマスタとなる状態を保存する機能を有する。ここで言うマスタとは、複数のWebサーバがアクセス待機状態にある場合に保有させるディレクトリ構成を指し、各Webサーバのサーバディレクトリ内に保有させるべきディレクトリやそのディレクトリ内のファイルの原本がマスタとして保存される。
【0059】
イベント管理部23は、状態管理テーブル26を用いて、サーバ監視機能部が収容する各々のWebサーバの状態を管理する機能を有する他、アクセススケジューラ20、差分抽出部21、リフレッシュ部22やログ管理部28との間での各種情報を授受する機能を有する。
【0060】
これらの機能を他の機能部との間でデータ授受を行うフェイズ別に説明すると、イベント管理部23は、状態管理テーブル26内のWebサーバの状態に関するエントリがアクセス待機状態へ変更された場合に、ユーザ端末による外部ネットワークからのアクセスをどのWebサーバから順に受け付けさせるのか、すなわちWebサーバへのアクセス転送順序を決定し、決定したアクセス転送順序をアクセススケジューラ20に通知する。
【0061】
つまり、イベント管理部23では、Webサーバがアクセス待機状態に復帰した際にそのWebサーバを含めてアクセスの転送順序を決定することにより、アクセス待機状態に復帰したWebサーバがアクセスの転送先にも即座に復帰できるようにした。
【0062】
より具体的には、状態管理テーブル26によって記憶されるWebサーバの状態がアクセス待機状態「1」であるサーバ識別子だけを対象とし、昇順または降順などの所定の規定にしたがってソートしたサーバ識別子の並び順をアクセス転送順序として決定する。このようにして決定したアクセス転送順序をサーバ識別子で表現した通知(後述する図6の通知101を参照)をアクセススケジューラ20に通知する。
【0063】
また、イベント管理部23は、アクセススケジューラ20によってアクセスがWebサーバに転送された場合に、当該Webサーバのサーバ識別子に対応する状態管理テーブル26のエントリの状態をアクセス待機状態からアクセス受付状態へ更新する。
【0064】
より具体的には、ユーザ端末からのアクセスがWebサーバに転送されると、アクセスを受け付けたWebサーバのサーバ識別子およびアクセス送信元のユーザ端末の情報を含んだ通知(図6の102を参照)が後述するアクセススケジューラ20から通知されるので、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態をアクセス待機状態「1」からアクセス受付状態「2」へ変更するとともに、アクセス送信元のユーザ端末の情報を当該エントリに記述する。
【0065】
さらに、イベント管理部23は、アクセススケジューラ20によってWebサーバによるレスポンスがアクセスの発信元へ送信された場合に、当該Webサーバのサーバ識別子に対応する状態管理テーブル26のエントリの状態をアクセス受付状態から差分抽出状態へ更新する。
【0066】
より具体的には、Webサーバによるレスポンスがアクセスの発信元へ送信されると、その旨をサーバ識別子を用いて表現した通知(図6の103を参照)がアクセススケジューラ20から通知されるので、当該サーバ識別子に対応するエントリの状態をアクセス受付状態「2」から差分抽出状態「3」へ変更するとともに、そのサーバ識別子に対応するWebサーバが保有するディレクトリ構成とマスタ状態管理部27に保存されるマスタとの間に差分があるか否かを確認するように指示する通知(図6の104を参照)を後述する差分抽出部21へ送信する。
【0067】
また、イベント管理部23は、差分抽出部21から差分の確認結果とサーバ識別子を含む通知(図6の105を参照)を受け付けた場合に、その確認結果の確認結果に応じて以降の処理を動作するが、アクセス前後で差分が確認されなかった場合と、アクセス前後で差分が確認された場合との間で動作内容がそれぞれ異なるので、これらを場合分けして説明する。
【0068】
例えば、アクセス前後で差分が確認されなかった場合には、イベント管理部23は、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態を差分抽出状態「3」からアクセス待機状態「1」へ変更するとともに当該エントリのユーザ端末の情報を削除する。
【0069】
さらに、イベント管理部23は、アクセススケジューラ20によって後述のログ管理部28に別途記述された当該ユーザ端末から当該Webサーバへのアクセスログに差分が確認されなかった旨を追記し、当該Webサーバを含めてアクセス転送順序を再度決定してそのアクセス転送順序を含む通知をアクセススケジューラ20に通知する。
【0070】
一方、アクセス前後で差分が確認された場合には、イベント管理部23は、アクセススケジューラ20によって後述のログ管理部28に別途記述された当該ユーザ端末から当該Webサーバへのアクセスログに差分の内容を追記し、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態を差分抽出状態「3」からマスタ上書き状態「4」へ変更する。
【0071】
その上で、イベント管理部23は、当該サーバ識別子に対応するWebサーバのディレクトリ構成をマスタ管理状態管理部27に記憶されたマスタ環境で上書きする指示とサーバの識別子およびマスタとなる状態とを含めた通知(図6の106を参照)を生成し、後述のリフレッシュ部22へ通知する。
【0072】
そして、イベント管理部23は、リフレッシュ部22からサーバの識別子を含む上書き完了通知(図6の107を参照)を受け付けると、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態をマスタ上書き状態「4」からアクセス待機状態「1」へ変更するとともに当該エントリのユーザ端末の情報を削除する。
【0073】
その後、イベント管理部23は、当該Webサーバを含めてアクセス転送順序を再度決定してそのアクセス転送順序を含む通知をアクセススケジューラ20に通知する。
【0074】
なお、図2のネットワークモデルの説明で述べたように、サーバ監視機能部の配下に配置されるサーバにグローバルアドレスを付与する場合には、アドレス割り当てやトンネル設定やサーバへの転送設定を必要に応じて動的に実施する場合は、イベント管理部23が当該機能を保有する。いずれの機能も、公知の技術で実現可能である。
【0075】
次の機能部の説明に遷り、アクセス管理部24は、サーバ監視機能部23が収容する各々のWebサーバがアクセスを受付可能であるか否かを管理する機能を有する。一例としては、転送順位ごとに当該転送順位に設定されたサーバ識別子を記憶するテーブルをアクセス管理部24内に構築する。
【0076】
例えば、イベント管理部23からアクセス転送順序を含む通知を受け付けた場合には、当該アクセス転送順序にしたがって各転送順位に対応するエントリのサーバ識別子を更新し、また、アクセススケジューラ20がアクセスをWebサーバに転送した場合には、当該Webサーバのサーバ識別子をエントリから削除し、該削除したサーバ識別子がエントリされる転送順位の下位の転送順位からサーバ識別子を1つずつ繰り上げる。
【0077】
このように、本実施例では、イベント管理部23から通知されたアクセス転送順序に含まれるサーバ識別子だけを転送先として管理し、アクセススケジューラ20によってアクセスが転送されたWebサーバのサーバ識別子を転送先から除外する管理を行うことで、1つのWebサーバに対して複数のアクセスが同時に転送される事態を回避することとした。
【0078】
イベント通知部25は、イベント管理部23および後述のログ管理部28との間で通知を送受信する機能を有する。
【0079】
アクセススケジューラ20は、アクセス管理部24を用いて、ユーザ端末による外部ネットワークからのアクセスをWebサーバに転送する機能の他、Webサーバによるアクセスへのレスポンスをアクセスの送信元に送信する機能を有する。
【0080】
例えば、ユーザ端末からのアクセスを受信した場合には、アクセススケジューラ20は、アクセス管理部24のテーブルに記憶されたサーバ識別子のうち最も転送順位が高いサーバ識別子を持つWebサーバを転送先として決定し、当該転送先のWebサーバに対してアクセスを転送する。
【0081】
そして、アクセススケジューラ20は、転送先のWebサーバのサーバ識別子をアクセス管理部24内のエントリから削除するとともに該削除したサーバ識別子がエントリされる転送順位の下位の転送順位からサーバ識別子を1つずつ繰り上げる更新をアクセス管理部24に行う。
【0082】
さらに、アクセススケジューラ20は、このようにしてWebサーバへのアクセス転送を開始した際に、当該Webサーバへのアクセス転送を開始した旨とともにサーバ識別子およびユーザ端末の情報を記述した通知をイベント管理部23へ送信する。
【0083】
一方、Webサーバによるアクセスへのレスポンスを受信した場合には、アクセススケジューラ20は、当該レスポンスをアクセス元のユーザ端末に転送するとともに、Webサーバからユーザ端末へアクセスのレスポンスが送信された旨をサーバの識別子を用いて表現した通知を生成してイベント管理部23へ送信し、自身が転送したアクセスのログを後に記述するログ管理部28に保存する。
【0084】
また、アクセススケジューラ20は、イベント管理部23からアクセス転送順序を含む通知を受信した場合に、当該アクセス転送順序にしたがって、アクセス管理部24内の各転送順位に対応するサーバ識別子のエントリを更新する機能も有する。
【0085】
差分抽出部21は、イベント管理部23によって指定されたWebサーバが保有するディレクトリ構成と、マスタ状態管理部27によって保存されているマスタとなる状態との間に差分があるか否かを確認する機能を有する。
【0086】
かかる差分抽出部21の機能は、ディレクトリやファイルの追加または削除を監査するtripwireなどのソフトウェアを実装することにより実現され、差分抽出部21は、イベント管理部23から受け付けた差分確認指示を含む通知(図6の104を参照)に応答して本機能部の差分確認機能を起動し、その差分確認結果およびサーバ識別子を記述した通知をイベント管理部23へ送信する。
【0087】
リフレッシュ部22は、イベント管理部23によって指定されたWebサーバのディレクトリ構成をマスタ状態管理部27によって保存されているマスタ環境で上書きする機能を有する。
【0088】
かかるリフレッシュ部22の機能は、イベント管理部23から受け付けたマスタ上書き指示を含む通知(図6の106を参照)に応答して起動し、その上書き完了通知およびサーバ識別子を記述した通知をイベント管理部23へ送信する。
【0089】
ログ管理部28は、アクセススケジューラ20が抽出したアクセスログを管理する機能を有する。また、ログ管理部28は、イベント管理部23からアクセスログへの追記指示を受けた場合に、追記内容として記述されているサーバ識別子およびユーザ端末の情報から両者間で送受信されたアクセスログを特定し、当該アクセスログに追記内容として記述されているWebサーバの差分情報を追記する。
【0090】
一例としては、ログ管理部28は、Webサーバのサーバ識別子、アクセス送信元のユーザ端末の情報、ユーザ端末およびWebサーバ間で送受信されたアクセスログ、アクセス前後におけるWebサーバの差分情報などの項目を有するデータベースを構築し、イベント管理部23やアクセススケジューラ20による指示にしたがって指定の項目に指定のデータを記述する。
【0091】
[実施例1に係るアクセス制御システムの処理手順]
続いて、図5〜7を用いて、実施例1に係るアクセス制御システムの処理手順を説明する。図5は、従来のアクセス制御の処理手順例を説明するための図であり、図6は、実施例1に係るアクセス制御システムにおけるデータフローを示す図であり、図7は、実施例1に係るアクセス制御システムによる処理手順(アクセス制御)を示すシーケンス図である。
【0092】
[従来方式]
図5に示すように、従来方式におけるサーバ監視機能部は、ユーザ端末33からアクセスを受け付けると(ステップS501)、当該アクセスをWebサーバ34に転送し(ステップS502)、Webサーバ34からユーザ端末33に対するリプライを受け付けると(ステップS503)、当該リプライをユーザ端末33に転送する(ステップS504)。
【0093】
このとき、従来方式におけるサーバ監視機能部は、ユーザ端末33から攻撃を受けた可能性を考慮して、ユーザ端末33からのアクセスの前後でWebサーバ34の内容に変化がないかを確認するべく、Webサーバ34の内容の閲覧要求を送信し(ステップS505)、Webサーバ34の内容を取得する(ステップS506)。
【0094】
そして、従来方式におけるサーバ監視機能部では、ユーザ端末33へのリプライ送信後に取得したWebサーバ34の内容と、自装置が予め保有するアクセス受信前のWebサーバ34の内容との間で差分を比較することにより改ざんチェックを行う(ステップS507)。
【0095】
ここで、仮にユーザ端末33からのアクセスが攻撃であった場合には、Webサーバ34はマルウェアに感染している可能性がある。このため、ステップS507の差分比較が完了するまでは、Webサーバ34へのアクセスは許容すべきではない。
【0096】
このことから、従来方式におけるサーバ監視機能部は、差分比較中にユーザ端末35からアクセスを受け付けても(ステップS508)、そのアクセスを許容せず、改ざんチェック中のアクセスを遮断すべく、ユーザ端末35によってWebサーバ34へ要求された処理が実行不能である旨の応答を返信する(ステップS509)。
【0097】
また、差分比較の結果、差分が確認された場合には、マルウェア感染を完全に防止するにはWebサーバ34を従来方式におけるサーバ監視機能部が保有する内容に戻す必要がある。
【0098】
このため、従来方式におけるサーバ監視機能部は、Webサーバ34に対して、自身が保有する内容で現在のWebサーバ34の内容を上書きする(ステップS510)。
【0099】
このステップS510のマスタ上書きが完了するまでの間、従来方式におけるサーバ監視機能部では、ユーザ端末35からアクセスを受け付けても(ステップS511)、Webサーバ34へのアクセスは実施できず(ステップS512)、マスタ上書きが完了した後に(ステップS513)、Webサーバ34へアクセスを転送することが可能になる。
【0100】
このような改ざんチェックやマスタ上書きなどの対応は、改ざんチェック及びマスタ上書きを実行している最中に受け付けたアクセスをリジェクトしてしまうデメリットはあるものの、脆弱性を持つソフトウェアを故意に搭載した囮Webサーバをサーバ監視機能部に収容する場合には、マルウェア配布サイトを正確に特定する上で非常に重要となる。
【0101】
[サーバ監視機能部のデータフロー]
続いて、図6を用いて、実施例1に係るアクセス制御システムにおけるデータフローを説明する。図6に示すように、実施例1におけるサーバ監視機能部14において、イベント管理部23が、アクセススケジューラ20に対して、アクセスを受け付けてよいWebサーバのアクセス転送順序を記述した通知101を送信する。これによって、アクセススケジューラ20では、アクセス受付時にアクセスを転送可能なWebサーバが特定可能になる。
【0102】
この通知101を受信したアクセススケジューラ20は、ユーザ端末からアクセスを受け付けた場合に、その旨を通知する通知102を生成してイベント管理部23へ送信する。これによって、イベント管理部23では、アクセス待機状態からアクセス受付状態への状態遷移を検知できる。
【0103】
さらに、アクセススケジューラ20は、Webサーバからのレスポンスを受信した場合に、その旨を通知する通知103を生成してイベント管理部23へ送信する。加えて、アクセススケジューラ20は、ログ管理部28にアクセスログを記述する。
【0104】
これによって、イベント管理部23では、アクセス待機状態からアクセス受付状態への状態遷移、さらには、差分抽出部21に差分確認を実行させる処理契機を検知できる。
【0105】
この通知103を受信したイベント管理部23は、当該アクセス前後でWebサーバの内容に差分がないか否かを比較するように指示する通知104を差分抽出部21へ送信する。
【0106】
この通知104を受信した差分抽出部21は、当該アクセス前後でWebサーバの内容に差分がないか否かを確認し、その差分の確認結果を通知105によってイベント管理部23へ通知する。
【0107】
この通知105を受信したイベント管理部23は、アクセス前後でWebサーバの内容に差分があった場合には、ログ管理部28に差分データを追記し、当該Webサーバをマスタとなる状態に戻すよう指示する通知106をリフレッシュ部22へ送信する。
【0108】
この通知106を受信したリフレッシュ部22は、当該Webサーバをマスタとなる状態に戻した後に、その結果を通知するための通知107を生成してイベント管理部23へ送信する。
【0109】
この通知107を受信したイベント管理部23は、当該Webサーバをアクセス受付可能なWebサーバとして通知101によってアクセススケジューラ20に通知する。
【0110】
[処理手順(アクセス制御)]
図7に示すように、実施例1に係るアクセス制御システムにおいて、ユーザ端末33からのアクセスに対するサーバ監視機能部の処理(ステップS701〜S706)は、図5に示した従来方式(ステップS501〜S506)と略同一である。
【0111】
しかしながら、実施例1に係るアクセス制御システムでは、差分比較中にユーザ端末35からアクセスを受信しても(ステップS707)、複数の同一構成Webサーバでアクセスを並列処理できる。
【0112】
すなわち、実施例1に係るアクセス制御システムでは、ユーザ端末35からアクセスを受け付けた場合に、Webサーバ34と同一構成のWebサーバ36にアクセスを転送し(ステップS708)、Webサーバ36からユーザ端末35に対するリプライを受け付けると(ステップS709)、当該リプライをユーザ端末35に転送する(ステップS710)。なお、このWebサーバ36についても、Webサーバ34と同様、Webサーバ36の内容の閲覧要求を送信し(ステップS712)、Webサーバ36の内容を取得し(ステップS713)、改ざんチェックが実行される。
【0113】
一方で、実施例1に係るアクセス制御システムでは、Webサーバ34へのマスタ上書き(ステップS711)が完了するまでの間、ユーザ端末33から2回目のアクセスを受け付けても(ステップS714)、Webサーバ34へのアクセスは実施できず(ステップS715)、マスタ上書きが完了した後に(ステップS716)、Webサーバ34へアクセスを転送することが可能になる。なお、このWebサーバ36についても、Webサーバ34と同様、ステップS717の処理(Webサーバ34の内容を上書き)を行い、Webサーバによるマスタ上書きの完了通知を受け付ける(ステップS718)。
【0114】
このように、短時間で受信可能なアクセス数は、サーバ監視機能部が収容するWebサーバ数が多くなるほど高くなる。このため、コストに応じて単位時間に受信可能なアクセス数を柔軟に変更できる。これによって、たとえば短時間に集中した攻撃を全て囮Webサーバへ転送でき、囮Webサーバによって攻撃情報のサンプルをより多く収集することが可能になる。
【0115】
[実施例1の効果]
上記してきたように、実施例1に係るアクセス制御システムは、URL(Uniform Resource Locator)やURI(Uniform Resource Identifier)などの統一資源識別子、或いはIP(Internet Protocol)アドレスやMAC(Media Access Control)アドレス等を共有する複数のWebサーバを設置する。なお、Webサーバとしては、囮Webサーバ、ユーザWebサーバもしくはこれらの組合せを収容することが可能である。
【0116】
そして、実施例1に係るアクセス制御システムは、外部ネットワークからのアクセスを複数のWebサーバのうちいずれかのWebサーバへ転送し、Webサーバによるアクセスの発信元へのレスポンスを受け付けた場合に、当該Webサーバが保有するディレクトリ構成とマスタ環境との間の差分を確認し、差分の確認結果に基づき、当該確認を行ったWebサーバのディレクトリ構成をマスタ環境で上書き更新する。
【0117】
その一方で、実施例1に係るアクセス制御システムは、転送処理、差分確認処理およびマスタ上書き処理のいずれにも介在せずにアクセス待機状態にあるWebサーバを転送先としてアクセス制御を行うこととした。
【0118】
したがって、実施例1に係るアクセス制御システムによれば、攻撃者が囮Webサーバに対して短時間に複数の攻撃を送信した場合や正常ユーザがアプリケーション提供サーバに対して短時間に複数のアクセスを送信した場合に、これらのWebサーバの改ざんチェックやマルウェア感染対策を実施しつつ、複数の攻撃やアクセスを複数のサーバで並列処理することが可能となる。
【0119】
また、実施例1に係るアクセス制御システムによれば、アクセス前後でWebサーバの内容に差分が確認された場合に、当該Webサーバのディレクトリ構成をマスタとなる状態で上書き更新することとした。
【0120】
このため、アクセス前後でWebサーバの内容に差分が確認されなかった場合には、Webサーバをマスタとなる状態で上書きする必要がなくなり、Webサーバをマスタ上書きで拘束する期間を最小限に低減できる結果、アクセスに対処する処理効率を向上させることが可能になる。
【0121】
以上のように、実施例1に係るアクセス制御システムは、Webサーバに代表されるようなアプリケーション提供サーバを悪意あるユーザの攻撃から防衛することができる。特に、IDS(Intrusion Detection System)や、WAF(Web Application Firewall)でみられるような攻撃トラヒックを検知してアクセス制御を実施することに有効である。
【0122】
なお、上記の実施例1では、サーバ監視機能部がWebサーバを収容する場合を例示したが、本発明はこれに限定されるものではなく、Webサーバ以外のサーバ、たとえばMailサーバ、NewsサーバやNFSサーバに対しても本発明を同様に適用することができる。
【0123】
なお、当然のことながら、本発明に係るアクセス制御システムは、マルウェア配布サイト、データベースの遠隔操作、その他の不正アクセスなど、複数種類の不正アクセスに対して同時に適用するものであってもよい。
【実施例2】
【0124】
これまで本発明の実施例1について説明してきたが、本発明は上記の実施例以外にも、種々の異なる形態にて実施されてよいものである。
【0125】
[差分未確認時のマスタ上書き]
上記の実施例1では、アクセス前後でWebサーバの内容に差分が確認された場合に限定してマスタ上書きを行う場合を例示したが、本発明はこれに限定されるものではなく、アクセス前後でWebサーバの内容に差分が確認されるか否かに関係なく、いずれの場合でもWebサーバの内容をマスタとなる状態で上書きすることとしてもよい。
【0126】
すなわち、アクセス前後でWebサーバの内容に差分が確認されなかった場合に、当該Webサーバのサーバ識別子に対応する状態管理テーブル26内のエントリの状態を差分抽出状態「3」からマスタ上書き状態「4」へ変更した上で、当該サーバ識別子に対応するWebサーバのディレクトリ構成をマスタ管理状態管理部27に記憶されたマスタ環境で上書きする指示とサーバの識別子およびマスタとなる状態とを含めた通知(図6の106を参照)を生成してリフレッシュ部22へ通知するようにイベント管理部23を構成すればよい。
【0127】
この場合には、Webサーバのディレクトリ構成をマスタとなる状態で必ず上書き更新することとなるので、マルウェア感染対策をより万全に実施することが可能になる。
【0128】
[ブラックリストの利用]
また、本発明では、不正なアクセスと見做すアクセス内容をブラックリストとして記憶しておき、差分が確認された場合に、当該差分のアクセス内容とブラックリストとを照合し、差分の内容がブラックリストに該当する場合には、差分が確認されたサーバのディレクトリ構成をマスタ環境で上書き更新し、差分の内容がブラックリストに該当しない場合には、マスタ環境に差分を反映する更新を行い、該更新後のマスタ環境で他のWebサーバのディレクトリ構成を上書き更新するようにしてもよい。
【0129】
これを図8を用いて具体的に説明する。図8は、ブラックリストを利用する場合のサーバ監視機能部の構成を説明するためのブロック図である。なお、ここでは、上記の実施例1との差異がある部分だけを説明し、同様の部分についてはその説明を省略する。
【0130】
図8に示すように、サーバ監視機能部14aは、上記の実施例1に比較して、アクセススケジューラ20がユーザ応答生成部29を内在し、イベント管理部23がブラックリスト30及びマスタ情報アップデート管理部31を内在する点が大きく異なる。
【0131】
ブラックリスト30は、ユーザによるアクセスを禁止しているディレクトリやディレクトリ内のファイルをリストとして保有する機能を有する。
【0132】
すなわち、ブラックリスト30は、攻撃者が攻撃に用いるアクセスパターンをリスト化したものであり、これに該当するアクセスパターンを不正アクセスと見做すためのものである。
【0133】
マスタ情報アップデート管理部31は、マスタとなる状態に反映された差分が各Webサーバの内容に反映されているか否かを管理する機能を有する。
【0134】
一例としては、図9に示すように、Webサーバのサーバ識別子、各Webサーバの上書き最終日時およびマスタとなる状態の最新更新日時などの項目を有するデータベースを構築し、イベント管理部23による指示にしたがって指定の項目に指定のデータを記述する。なお、上書き最終日時が最新更新日時より以前の日時である場合には、マスタとなる状態に反映された差分が当該Webサーバの内容に反映されていないことの証左となる。
【0135】
ここで、アクセス前後にWebサーバの内容に差分が確認された場合におけるイベント管理部23の機能は、ブラックリスト30、マスタ情報アップデート管理部31及び後述のユーザ応答生成部29との間で相関関係があるので、その点に焦点をあてて説明する。
【0136】
イベント管理部23は、差分抽出部21から差分の確認結果とサーバ識別子を含む通知(図6の105を参照)を受け付けた場合に、確認結果として、アクセス前後で差分があるとの確認結果が得られたならば、当該差分の内容がブラックリスト30に記載された内容と一致するか否かを照合する。
【0137】
このとき、差分の内容がブラックリスト30に該当する場合には、イベント管理部23は、後述のユーザ応答生成部29に対して、Webサーバへ依頼された処理を実行できない旨を通知する画面を表示するメッセージをユーザ端末へ送信するよう指示する。
【0138】
なお、以降の動作は、上記の実施例1と同様であり、概要としては、状態管理テーブル26内のエントリの状態を差分抽出状態からマスタ上書き状態へ遷移させ、リフレッシュ部22へのマスタ上書き指示を行い、上書き完了通知の受付後には、状態管理テーブル26内のエントリの状態をマスタ上書き状態からアクセス待機状態へ遷移させるとともに当該エントリのユーザ端末の情報を削除し、アクセス待機状態に復帰したWebサーバを含めてアクセス転送順序を再度決定する。
【0139】
一方、差分の内容がブラックリスト30に該当しない場合には、イベント管理部23は、後述のユーザ応答生成部29に対して、ユーザ端末にWebサーバからのレスポンスを送信するよう指示し、アクセススケジューラ20によってログ管理部28に別途記述された当該ユーザ端末から当該Webサーバへのアクセスログに差分の内容を追記する。
【0140】
そして、イベント管理部23は、マスタ状態管理部27に保存されているマスタとなる状態に差分の内容を反映させた上でマスタ情報アップデート管理部31内のマスタ環境の最新更新日時を更新し、状態管理テーブル26及びマスタ情報アップデート管理部31を閲覧する。
【0141】
このとき、イベント管理部23は、上書き最終日時がマスタ環境の最新更新日時より以前の日時であり、かつアクセス待機状態にあるサーバ識別子を対象に、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態を差分抽出状態「3」からマスタ上書き状態「4」へ変更する。
【0142】
その上で、イベント管理部23は、当該サーバ識別子に対応するWebサーバのディレクトリ構成をマスタ管理状態管理部27に記憶されたマスタ環境で上書きする指示とサーバの識別子およびマスタとなる状態とを含めた通知(図6の106を参照)を生成し、リフレッシュ部22へ通知する。
【0143】
このようにして、イベント管理部23では、アップデート未完了かつアクセス待機状態のWebサーバのディレクトリ構成を差分反映後のマスタ環境で上書き更新する。
【0144】
その後、イベント管理部23は、リフレッシュ部22からサーバの識別子を含む上書き完了通知(図6の107を参照)を受け付けると、当該サーバ識別子に対応する状態管理テーブル26内のエントリの状態をマスタ上書き状態「4」からアクセス待機状態「1」へ変更するとともに当該エントリのユーザ端末の情報を削除し、当該サーバ識別子に対応するマスタ情報アップデート管理部31内のエントリの上書き最終日時を更新する。
【0145】
また、イベント管理部23では、アップデートが未完了であるがアクセス待機状態以外の状態に遷移しているWebサーバを漏らさずアップデートすべく、タイマーを保有する等の手段を用いて、状態管理テーブル26とマスタ情報アップデート管理部31を所定の周期で監視し、アップデートが未完了であるWebサーバがアクセス待機状態に復帰したことを検知できるように、Webサーバの状態を定期的に確認するのが望ましい。
【0146】
なお、ここでは、マスタ情報アップデート管理部31が図9に示すデータベースを静的に保有し続ける場合について説明したが、本発明はこれに限定されるものではなく、アップデートが未完了であるサーバ識別子だけをエントリし、アップデートが完了したサーバ識別子を削除する時限的なデータベースとして構築することとしてもよい。
【0147】
ユーザ応答生成部29は、Webサーバによるアクセスのレスポンスを一旦受信した上で当該レスポンスをユーザ端末に送信するのを一時保留する機能を有する。
【0148】
より具体的には、ユーザ応答生成部29は、ユーザ端末に対しては処理中である旨を通知する画面を表示するメッセージを送信する一方で、イベント管理部23に対してはWebサーバによるアクセスへのレスポンスを受信した旨をサーバ識別子を用いて表現した通知として送信する。
【0149】
その後、イベント管理部23によってWebサーバからのレスポンスをユーザ端末へ送信するよう指示された場合には、ユーザ応答生成部29は、一旦受信したレスポンスの中からイベント管理部23によって指示されたユーザ端末とWebサーバに対応するレスポンスを抽出し、該抽出したレスポンスを当該ユーザ端末へ送信する。
【0150】
一方、イベント管理部23によってWebサーバへ依頼された処理を実行できない旨を通知する画面を表示するメッセージをユーザ端末へ送信するよう指示された場合には、ユーザ応答生成部29は、一旦受信したレスポンスの中から、イベント管理部23によって指示されたユーザ端末とWebサーバに対応するレスポンスを抽出し、当該レスポンスを廃棄するとともに、当該ユーザ端末に対して、Webサーバへ依頼された処理を実行できない旨を通知する画面を表示するメッセージを送信する。
【0151】
このように、サーバ監視機能部14aは、不正なアクセスと見做すアクセス内容をブラックリストとして記憶しておき、差分が確認された場合に、当該差分のアクセス内容と、ブラックリストとを照合する。
【0152】
そして、サーバ監視機能部14aは、差分の内容がブラックリストに該当する場合には、差分が確認されたサーバのディレクトリ構成をマスタ環境で上書き更新し、差分の内容がブラックリストに該当しない場合には、マスタ環境に差分を反映する更新を行い、該更新後のマスタ環境で他のWebサーバのディレクトリ構成を上書き更新する。
【0153】
したがって、サーバ監視機能部14aによれば、ブラックリストを用いて、予め攻撃と擬制されるアクセスの内容と同じパターンのアクセスをユーザ端末から受け付けた場合にWebサーバの改ざんを目的としたアクセスであると見做すことができ、悪意のあるユーザの攻撃をパターン化して看破することができる結果、Webサーバの改ざんチェックを効率化することが可能になる。
【0154】
[マスタ環境に対する更新アクセスの制限]
前述したように、図8に示すサーバ監視機能部では、マスタ状態管理部27によって保存されたマスタ環境に差分を反映する更新を行う場合について説明したが、複数のWebサーバで差分が個別に確認された場合には、一方の差分をマスタ環境に反映する更新が実行されている最中に他方の差分を反映する更新アクセスがマスタに行われ、データ更新が競合するおそれがある。
【0155】
このようなデータ更新の競合を防止すべく、本発明では、イベント管理部23によってマスタ環境に差分を反映する更新が実行されている場合に、当該更新以外のマスタへの更新アクセスであって当該差分の反映先のディレクトリを変更対象とする更新アクセスを禁止することもできる。
【0156】
具体的には、イベント管理部23では、ユーザ応答生成部29へ指示を通知する前であり、且つ、マスタとなる状態を変更する前に、サーバの上書き最終日時とマスタとなる状態の最新更新日時を比較し、前者が後者より以前の日時である場合は、重複書き込みが発生する可能性が高いため、マスタとなる状態への変更を中止する。
【0157】
この際、イベント管理部23は、ユーザ応答生成部29に対しては、Webサーバへ依
頼された処理を実行できない旨を通知する画面を表示するメッセージをユーザへ送信するよう指示し、ログ管理部28には、差分となる情報は追記しない。
【0158】
これによって、マスタ環境に差分を反映する更新イベントが重複したとしても先の行為新イベントを優先し、先の更新イベントが終了するまでは後の更新イベントを禁止することができるので、複数の更新イベントが競合することがなくなる結果、マスタ環境の原本性を保証することが可能になる。
【0159】
[ホワイトリストの利用]
また、本発明では、正当なアクセスと見做すアクセス内容をホワイトリストとして記憶しておき、差分が確認された場合に、当該差分の内容とホワイトリストとを照合し、差分の内容がホワイトリストに該当する場合には、マスタ環境に差分を反映する更新を行い、該更新後のマスタ環境で他のサーバのディレクトリ構成を上書き更新し、差分の内容がホワイトリストに該当しない場合には、差分が確認されたサーバのディレクトリ構成をマスタ環境で上書き更新するようにしてもよい。
【0160】
これを図10を用いて具体的に説明する。図10は、ホワイトリストを利用する場合のサーバ監視機能部の構成を説明するためのブロック図である。なお、ここでは、図8と対比しながら差異がある部分だけを説明し、同様の部分についてはその説明を省略する。
【0161】
図10に示すように、サーバ監視機能部14bは、図8に示したサーバ監視機能部14aに比較して、イベント管理部23がブラックリスト30ではなく、ホワイトリスト32を内在する点が大きく異なる。
【0162】
ホワイトリスト32は、ユーザによるアクセスを許容しているディレクトリやディレクトリ内のファイルをリストとして保有する機能を有する。
【0163】
すなわち、ブラックリスト32は、運用者が正式なものと認定したアクセスパターンをリスト化したものであり、これに該当するアクセスパターンを正当なアクセスと見做すためのものである。
【0164】
ここで、アクセス前後にWebサーバの内容に差分が確認された場合におけるイベント管理部23の機能は、ブラックリスト30を適用した場合と表裏の関係にある。
【0165】
イベント管理部23は、差分抽出部21から差分の確認結果とサーバ識別子を含む通知(図6の105を参照)を受け付けた場合に、確認結果として、アクセス前後で差分があるとの確認結果が得られたならば、当該差分の内容がホワイトリスト32に記載された内容と一致するか否かを照合する。
【0166】
ここで、差分の内容がホワイトリスト32に該当する場合には、イベント管理部23は、上記のブラックリスト30に該当しなかった場合と同様の動作を行う一方で、差分の内容がホワイトリスト32に該当しなかった場合には、上記のブラックリスト30に該当した場合と同様の動作を行う。
【0167】
このように、サーバ監視機能部14bは、正当なアクセスと見做すアクセス内容をホワイトリストとして記憶しておき、差分が確認された場合に、当該差分のアクセス内容と、ホワイトリストとを照合する。
【0168】
そして、サーバ監視機能部14bは、差分の内容がホワイトリストに該当する場合には、マスタ環境に差分を反映する更新を行い、該更新後のマスタ環境で他のWebサーバのディレクトリ構成を上書き更新する一方で、差分の内容がホワイトリストに該当しない場合には、差分が確認されたサーバのディレクトリ構成をマスタ環境で上書き更新する。
【0169】
したがって、サーバ監視機能部14bによれば、ホワイトリストを用いて、予めアップデート等の正当なアクセスと擬制されるアクセスの内容と同じパターンのアクセスをユーザ端末から受け付けた場合にWebサーバの改ざんを目的としたアクセスではないと見做すことができ、正規のユーザによるアクセスをパターン化して看破することができる結果、Webサーバの改ざんチェックやマルウェア感染対策を効率化することが可能になる。
【0170】
なお、ここでは、図3に示したサーバ監視機能部14、図8に示したサーバ監視機能部14a、図10に示したサーバ監視機能部14bを個別に説明したが、これら3者の機能を任意に組み合わせて実行することができる。
【0171】
これらサーバ監視機能部14、サーバ監視機能部14a及びサーバ監視機能部14bの機能を統合して構成した場合には、Webサーバに代表されるアプリケーション提供サーバを、悪意あるユーザの攻撃から防衛しつつ、多数のユーザに同時にサービスを提供できるアプリケーション提供サーバを構築させることが可能になる。
【0172】
[Webサーバによるマスタ上書きの自律制御]
上記の実施例1及び2では、Webサーバのディレクトリ構成をアクセス前のディレクトリ構成、すなわちマスタ環境に戻す手法として、サーバ監視機能部のマスタ状態管理部27によって保存されるマスタとなる状態でWebサーバのディレクトリ構成を上書き更新する場合を例示したが、本発明はこれに限定されるものではない。
【0173】
例えば、UNIX(登録商標)系コマンドであるchrootなどでアクセスできる限定的なディレクトリ空間にWebサーバを構築する一方で、その空間とは異なるディレクトリ空間にマスタとなる状態のコピーを配置することもできる。
【0174】
このように、Webサーバ上にマスタとなる状態を配置しておき、Webサーバを再起動しつつ当該マスタ環境を限定的なディレクトリ空間に展開することで、マスタとなる状態をWebサーバとして運用するディレクトリ空間に容易かつ高速に展開することが可能である。
【0175】
さらに、サーバ監視機能部がマスタ環境を更新する更新アクセスを行う必要がなくなるので、各Webサーバでマスタ上書きに係る負荷を分散し、もってサーバ監視機能部のトラヒックを低減することが可能になる。
【0176】
なお、WebサーバをVMwareという仮想化機能を用いて実装すれば、VMwareに搭載されているリバート機能を用いて実現することもできる。
【0177】
[アクセスログの保存形態]
上記の実施例1及び2では、イベント管理部23をサーバ監視機能部内に内在させ、サーバ監視機能部配下に存在する複数のWebサーバを用いてユーザ端末からのアクセスを並列処理を可能とするアクセス制御システムを例示した。
【0178】
かかるアクセス制御システムでは、ログ管理部28に保存するログを目的に応じて変更することができる。この際、特に差分情報に関して、発生した差分情報を全てログに残す一方でマスタとなる状態に反映された情報にのみフラグをつける形を採用し、可能な限り多くのログを保存する運用方式を採用することが好ましい。
【0179】
[イベント管理部の司令塔化]
なお、上記の実施例1及び2では、イベント管理部23は、アクセススケジューラ20、差分抽出部21やリフレッシュ部22の集中管理装置の位置付けとなっている。例えば、特願2009−043210号公報に記載されている監視装置には、差分抽出部やリフレッシュ部が含まれる可能性がある。
【0180】
このような監視装置を複数配置したネットワークにおいて、イベント管理部23を集中制御サーバの位置付けで配置するとともに、複数の監視装置を収容する形で置かれたリバースプロキシのような負荷分散装置にアクセススケジューラ20を搭載することで、複数の監視装置を用いて、実施例1及び2の動作を実行させることも可能である。
【0181】
[アクセス転送順序]
上記の実施例1及び2では、外部アクセスをWebサーバに転送するアクセスの転送順序を決定する場合にサーバ識別子を昇順または降順にソートしたものを転送順序として決定する場合を例示したが、本発明はこれに限定されるものではなく、アクセス待機状態「1」にあるWebサーバを対象にするのであれば、任意のWebサーバに任意の転送順序を付与できる。
【0182】
例えば、アクセス待機状態にあるWebサーバを対象に転送順序をランダムに割り振ることもできる。これによって、たとえば転送順序を構成する各転送順位ごとにアクセス待機状態「1」にあるWebサーバのサーバ識別子の中からランダムにサーバ識別子を抽出するといった簡易な仕組みでアクセス転送順序を決定でき、アクセス制御システムを低コストで実現することが可能になる。
【0183】
また、アクセス待機状態にあるWebサーバのうち、最後に外部アクセスを受け付けた最終アクセス受付時間が最も古いWebサーバのサーバ識別子から順にソートしたサーバ識別子の並び順をアクセス転送順序として決定することもできる。これによって、同一のWebサーバが連続して使用されることを防止できる結果、故障発生リスクを低減させることが可能になる。
【0184】
また、Webサーバが外部アクセスを処理したアクセス処理回数をカウントするカウンタをイベント管理部23に持たせ、そのアクセス処理回数が各Webサーバ間で均等になるようにアクセス転送順序を決定することもできる。
【0185】
例を挙げれば、各Webサーバのアクセス処理回数の平均回数を下回るWebサーバのサーバ識別子だけを対象に転送順序を決定したり、さらには、アクセス処理回数が少ないサーバ識別子から順にソートしたりする。これによって、各Webサーバ間で累計のアクセス処理回数を平滑化でき、特定のWebサーバだけにアクセスが集中するのを防止できる結果、故障発生リスクを低減させることが可能になる。
【産業上の利用可能性】
【0186】
以上のように、本発明に係るアクセス制御システム、アクセス制御装置及びアクセス制御方法は、複数のアクセスに同時に対処しつつ、サーバの改ざんチェックを実施してセキュリティを維持する場合に適している。
【符号の説明】
【0187】
1 ネットワーク
2 ネットワーク
3 ネットワーク
4 ネットワーク
5 ネットワーク
6 データ中継装置
7 データ中継装置
8 データ中継装置
9 データ中継装置
10 ユーザWebサーバ
11 ユーザWebサーバ
12 ユーザWebサーバ
13 ユーザWebサーバ
14 サーバ監視機能部
15 サーバ監視機能部
16 囮Webサーバ
17 囮Webサーバ
18 攻撃者端末
19 マルウェア配布サーバ
20 アクセススケジューラ
21 差分抽出部
22 リフレッシュ部
23 イベント管理部
24 アクセス管理部
25 イベント通知部
26 状態管理テーブル
27 マスタ状態管理部
28 ログ管理部

【特許請求の範囲】
【請求項1】
統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御システムであって、
前記複数のサーバが前記外部ネットワークからのアクセスを待機するアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段と、
前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送手段と、
前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と前記マスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認手段と、
前記差分確認手段による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新手段と、
前記転送手段に対して、前記転送手段、前記差分確認手段および前記更新手段による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御手段と
を有することを特徴とするアクセス制御システム。
【請求項2】
不正なアクセスと見做すアクセス内容をブラックリストとして記憶するブラックリスト記憶手段と、
前記差分確認手段によって前記差分が確認された場合に、当該差分の内容と、前記ブラックリスト記憶手段によって記憶されたブラックリストとを照合する照合手段とをさらに有し、
前記更新手段は、
前記照合手段によって前記差分の内容が前記ブラックリストに該当すると判定された場合には、前記差分が確認されたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新し、前記差分の内容が前記ブラックリストに該当しないと判定された場合には、前記マスタ環境記憶手段によって記憶されたマスタ環境に前記差分を反映する更新を行い、該更新後のマスタ環境で他のサーバのディレクトリ構成を上書き更新することを特徴とする請求項1に記載のアクセス制御システム。
【請求項3】
正当なアクセスと見做すアクセス内容をホワイトリストとして記憶するホワイトリスト記憶手段と、
前記差分確認手段によって前記差分が確認された場合に、当該差分の内容と、前記ホワイトリスト記憶手段によって記憶されたホワイトリストとを照合する照合手段とをさらに有し、
前記更新手段は、
前記照合手段によって前記差分の内容が前記ホワイトリストに該当すると判定された場合には、前記マスタ環境記憶手段によって記憶されたマスタ環境に前記差分を反映する更新を行い、該更新後のマスタ環境で他のサーバのディレクトリ構成を上書き更新し、前記差分の内容が前記ホワイトリストに該当しないと判定された場合には、前記差分が確認されたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新することを特徴とする請求項1に記載のアクセス制御システム。
【請求項4】
前記更新手段は、前記差分確認手段によって前記差分が確認された場合、或いは前記差分が確認されなかった場合のいずれの場合でも、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新することを特徴とする請求項1に記載のアクセス制御システム。
【請求項5】
前記更新手段は、
前記差分確認手段による差分の確認が行われたサーバに対して、前記マスタ環境記憶手段によって記憶されたマスタ環境で当該サーバのディレクトリ構成を上書き更新するように指示し、
前記複数のサーバは、
前記アクセスの送信元端末にサービスを提供するソフトウェアをディレクトリツリー内の制限された部分で動作させるとともに当該制限された部分以外に前記マスタ環境を保存し、
前記更新手段によるマスタ環境の上書き更新指示に応答して、保存したマスタ環境を前記制限された部分に展開する展開手段を有することを特徴とする請求項1〜4のいずれか一つに記載のアクセス制御システム。
【請求項6】
前記更新手段によって前記マスタ環境に前記差分を反映する更新が実行されている場合に、当該更新以外のマスタへの更新アクセスであって当該差分の反映先のディレクトリを変更対象とする更新アクセスを禁止するマスタ変更アクセス禁止手段をさらに有することを特徴とする請求項2または3に記載のアクセス制御システム。
【請求項7】
統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御装置であって、
前記複数のサーバが前記外部ネットワークからのアクセスを待機するアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段と、
前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送手段と、
前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と前記マスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認手段と、
前記差分確認手段による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新手段と、
前記転送手段に対して、前記転送手段、前記差分確認手段および前記更新手段による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御手段と
を有することを特徴とするアクセス制御装置。
【請求項8】
統一資源識別子またはアドレスを共有する複数のサーバに対する外部ネットワークからのアクセスを制御するアクセス制御システムに適用するアクセス制御方法であって、
前記外部ネットワークからのアクセスを前記複数のサーバのうちいずれかのサーバへ転送する転送工程と、
前記サーバによる前記アクセスの発信元へのレスポンスを受け付けた場合に、当該サーバが保有するディレクトリ構成と、前記複数のサーバがアクセス待機状態にある場合に保有させるディレクトリ構成をマスタ環境として記憶するマスタ環境記憶手段によって記憶されたマスタ環境との間の差分を確認する差分確認工程と、
前記差分確認工程による差分の確認結果に基づき、当該確認が行われたサーバのディレクトリ構成を前記マスタ環境記憶手段によって記憶されたマスタ環境で上書き更新する更新工程と、
前記転送工程に対して、前記転送工程、前記差分確認工程および前記更新工程による処理に介在せずに前記アクセス待機状態にあるサーバを前記アクセスの転送先として指定するアクセス制御工程と
を含んだことを特徴とするアクセス制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−3132(P2011−3132A)
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願番号】特願2009−147654(P2009−147654)
【出願日】平成21年6月22日(2009.6.22)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】