JP2015219753A - 情報処理システム及び情報処理方法 - Google Patents

情報処理システム及び情報処理方法 Download PDF

Info

Publication number
JP2015219753A
JP2015219753A JP2014103302A JP2014103302A JP2015219753A JP 2015219753 A JP2015219753 A JP 2015219753A JP 2014103302 A JP2014103302 A JP 2014103302A JP 2014103302 A JP2014103302 A JP 2014103302A JP 2015219753 A JP2015219753 A JP 2015219753A
Authority
JP
Japan
Prior art keywords
information processing
server device
server
load
processing system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014103302A
Other languages
English (en)
Inventor
甲斐 賢
Masaru Kai
賢 甲斐
藤城 孝宏
Takahiro Fujishiro
孝宏 藤城
茜 鈴木
Akane Suzuki
茜 鈴木
知奈津 佐藤
Chinatsu Sato
知奈津 佐藤
角谷 有司
Yuji Sumiya
有司 角谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014103302A priority Critical patent/JP2015219753A/ja
Publication of JP2015219753A publication Critical patent/JP2015219753A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

【課題】サーバ装置の利用料を不必要に増大させず、サーバ装置の負荷が増大やDoS攻撃を受けた場合のサーバ装置の可用性の低下を防ぐ。【解決手段】通信ネットワーク2から通信データを受信して情報処理を行うサーバ装置(APサーバ12)、通信データの受信制限を行う受信制限装置(ファイアウォール10)、サーバ装置の負荷を監視する負荷監視装置20、サーバ装置をスケールアウト又はスケールインするスケーリング制御装置21、サーバ装置による情報処理の実行時のセキュリティ違反を検知するセキュリティ違反監視装置32を備えた情報処理システム1において、サーバ装置の負荷が過負荷傾向にあり、かつ、セキュリティ違反が増加傾向にない場合はサーバ装置をスケールアウトし、サーバ装置の負荷が過負荷傾向にあり、かつ、セキュリティ違反が増加傾向にある場合は受信制限装置による受信制限を強化する。【選択図】図1

Description

本発明は、情報処理システム及び情報処理方法に関する。
情報処理システムの一形態として、クラウドコンピューティング(Cloud Computing)が普及しつつある。米国国立標準技術研究所(National Institute of Standards and Technology)は、クラウドコンピューティングの基本的な特徴として次に示す5つを定義している。
(1)オンデマンド・セルフサービス:サービスの利用や変更にあたって複雑な手続きを必要とせずにすぐに利用することができる。
(2)幅広いネットワークアクセス:インターネット経由のアクセスを代表とするアクセス形態に対応し、PCやスマートフォンなどさまざまなデバイスから利用することができる。
(3)リソースの共用:クラウド利用者は、利用しているリソースの所在や限界を意識することなく、リソースを利用することができる。リソースは、大きなリソースプールを共有する形で提供(マルチテナント化)される。
(4)スピーディな拡張性:リソースの拡張性が高く、利用者への割り付けの変更やスケールアウトが伸縮自在に可能である(スケーラブル性)。
(5)サービスが計測可能:クラウドの利用者のサービスの使用量は計測され、利用者が閲覧することができる。
また近年、クラウドの利用形態の一つとして、IoT(Internet of Things)の用途が期待されている。IoTとは、一意に識別可能なコンピュータ或いはデバイスがインターネットに接続され、デバイス同士が情報交換することにより相互に制御する仕組みである。とくにインダストリアルインターネット(Industrial Internet)と呼ばれる情報処理システムでは、デバイスや人をつなぎ、リアルタイムでデータを取得し、これに基づくアクションを行うことで、デバイスの稼動効率を高められると共に、人の待ち時間を減少させるといった効果が期待されている。
IoT用途でクラウドを使う場合、クラウドは大量のデータを蓄積する情報処理システムとなり、PC(Personal Computer)などのデバイスから幅広いネットワークアクセスを経て、クラウドにデータが転送される。一方、デバイスは常にネットワークに接続できるとは限らないため、転送されるデータ量は変化しうる。転送できなかった分を一時的に蓄積しておき、転送できる時機に合わせて一斉に転送することもあるので、ますますデータ量は変化しうる。さらに、クラウド利用者或いはクラウド利用企業が新たなテナントを申し込むことによりクラウドに転送されるデータ量は増加し、テナントの利用が終了すれば、クラウドに転送されるデータ量は減少する。
一方、幅広いネットワークアクセスの形態を許すクラウドでは、DoS(Denial of Service)攻撃の脅威に晒される機会が増える。DoS攻撃には、特定のサイトに対して異常なデータ或いはパケットを大量に送りつけることによりサービスを停止させるタイプのものや、異なる複数の場所から同時に同一サイトに攻撃を仕掛けるタイプのものがある。また大量のデータを送りつけるのではなく、アプリケーションレベルの処理時にメモリを食い尽くすような攻撃方法も知られている。とくに昨今では、アプリケーションレベルのDoS攻撃として、XMLパーサの処理時にメモリを食い尽くすような特殊なXMLデータを送りつける「Billion Laughs XML Attack」と呼ばれる攻撃に対する対策が課題となっている。
特許文献1には、OSI(Open Systems Interconnection)参照モデルでのレイヤ5以上のサービスに対応するサーバに対してパケットを送信するDoS攻撃を、スループットの低下をもたらすことなく、効果的に防御できるようにすることを目的として、ファイアウォール装置が、レイヤ4以下のパケットに含まれる情報を基に、イングレス側から入力されたパケットを段階を追って処理することで、レイヤ5以上の情報を転送しているレイヤ4以下パケットを絞っていき、最終段階で、パケットのトラヒック量などを計測してそれが規定値以上あればDoS/DDoS(Distributed Denial of Service)攻撃であると判断することが記載されている。
特開2006−60599号公報
ところで、特許文献1に記載された技術には、とくにレイヤ5以上の攻撃に対する防御に関して以下の課題がある。
(1)DoS攻撃の検知を、レイヤ5以上の情報を転送しているレイヤ4以下のパケットのトラヒック量の増加に基づいて判定しているため「Billion Laughs XML Attack」のようにトラヒック量を増大させることなくアプリケーションレベルでメモリを食いつぶすような攻撃を検知することができない。
(2)「Billion Laughs XML Attack」のようなアプリケーションを狙う攻撃をファイアウォール装置で検知するとなると、複雑な検知ロジックを組み込む必要があり、レイヤ5以上の攻撃の検知には性能上のボトルネックとなり、クラウドシステム全体から見た場合にファイアウォール装置が単一障害点になる。
(3)レイヤ5以上のDoS攻撃をアプリケーションサーバで見つけようとした場合、スケーラブルなクラウドシステムの構成では、DoS攻撃を受けた場合にスケールアウトが発生して不必要な課金が生じる。
本発明は、このような課題に鑑みてなされたものであり、サーバ装置の利用料を不必要に増大させることなく、サーバ装置の負荷の増大やDoS攻撃を受けた場合におけるサーバ装置の可用性の低下を防ぐことが可能な情報処理システム及び情報処理方法を提供することを目的としている。
上記目的を達成するための本発明の一つは、情報処理システムであって、通信ネットワークを介して送られてくる通信データを受信して情報処理を行うサーバ装置、前記通信データの受信制限を行う受信制限装置、前記サーバ装置の負荷を監視する負荷監視装置、前記サーバ装置の負荷に応じて前記サーバ装置をスケールアウト又はスケールインするスケーリング制御装置、前記サーバ装置による前記情報処理の実行時のセキュリティ違反を検知するセキュリティ違反監視装置、及び、前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にない場合は前記サーバ装置をスケールアウトし、前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にある場合は前記受信制限装置による前記受信制限を強化する総合判定制御装置を備えることとする。
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
本発明によれば、サーバ装置の利用料を不必要に増大させることなく、サーバ装置の負荷の増大やDoS攻撃を受けた場合におけるサーバ装置の可用性の低下を防ぐことできる。
情報処理システム1の概略的な構成を示す図である。 APサーバ12や各可用性維持装置を実現する情報処理装置のハードウエアの一例である。 負荷監視データ300の一例である。 APサーバ12の状態遷移図である。 スケーリング制御データ500の一例である。 課金管理データ600のデータ構造のイメージ図(ヒストグラム)である。 検査項目設定画面700の一例である。 セキュリティ違反データ800の一例である。 検査処理S900を説明するフローチャートである。 総合判定制御処理S1000を説明するフローチャートである。 時系列監視マトリクス1100の一例である。 ネットワーク機器制御データ1200の一例である。 スケーリング総合判定画面1300の一例である。 第3実施例として示す情報処理システム1の概略的な構成を示す図である。
以下、実施形態について図面を参照しつつ説明する。尚、以下の説明において、符号を構成するアルファベットの表記を省略することにより構成を総称することがある(例えば、「APサーバ12a」を「APサーバ12」と表記して総称する場合等)。
=第1実施例=
図1に第1実施例として説明する情報処理システム1の概略的な構成を示している。情報処理システム1は、クラウドシステムのリソースを用いて構成されている。同図に示すように、情報処理システム1は、通信ネットワーク2を介してクラウド利用装置3から送られてくる通信データ(処理要求(例えば、HTTP(HyperText Transfer Protocol)通信におけるhttpリクエスト)、計測されたデータ等)を受信して情報処理を行う情報処理装置である複数のAPサーバ12(サーバ装置)、並びにAPサーバ12の可用性を維持するための様々な構成を備えている。
通信ネットワーク2は、クラウド利用装置3へのなりすましや情報処理システム1に対するDoS(Denial of Service)攻撃(サービス妨害攻撃、サービス提供不能攻撃)を行う脅威源となり得る不正アクセス装置4が接続する可能性のある通信手段であって、例えば、インターネットである。
同図に示すように、情報処理システム1は、APサーバ12の可用性の維持並びにセキュリティ性能の維持に関する機能を提供する情報処理装置(以下、可用性維持装置とも称する。)として、ファイアウォール10(受信制限装置)、ロードバランサ11(負荷分散装置)、データベースサーバ13、負荷監視装置20、スケーリング制御装置21、課金管理装置22、ネットワーク機器制御装置23、検査設定装置30、セキュリティ違反監視装置32、及び総合判定制御装置33を備える。これらの情報処理装置は、クラウドシステムのリソースプールから供出されるリソース(ハードウエアリソース(CPU、メモリ、補助記憶装置、通信装置等)、ソフトウエアリソース(オペレーティングシステム、ミドルウエア、アプリケーション等)、及びネットワークリソース(通信帯域等))を用いて実現されている。尚、これらの機能は、例えば、クラウドシステムに導入されている仮想化管理ソフトウエア(ホスト型、ハイパーバイザ型等)によって管理される仮想マシン(Virtual Machine)によって実現されるものであってもよい。クラウドシステムのリソースは、例えば、データセンタ等に備えられたハードウエアによって提供される。
同図に示すように、ファイアウォール10、ロードバランサ11、及びAPサーバ12は、クラウドシステムのネットワークリソースである第1クラウドネットワーク14を介して互いに通信可能に接続されている。またAPサーバ12とデータベースサーバ13は、クラウドシステムのネットワークリソースである第2クラウドネットワーク15を介して互いに通信可能に接続されている。またAPサーバ12、負荷監視装置20、スケーリング制御装置21、課金管理装置22、ネットワーク機器制御装置23、検査設定装置30、セキュリティ違反監視装置32、及び総合判定制御装置33は、クラウドシステムのネットワークリソースである管理ネットワーク24を介して互いに通信可能に接続されている。
図2はAPサーバ12や可用性維持装置を実現する情報処理装置のハードウエアの一例である。同図に示すように、この情報処理装置200は、中央処理装置201、主記憶装置202、補助記憶装置203、通信装置204、入力装置205、及び出力装置206を備えている。これらは図示しないバス(bus)等の通信手段を介して通信可能に接続されている。APサーバ12や可用性維持装置によって提供される機能は、情報処理装置200が備えるハードウエアによって、もしくは、中央処理装置201が主記憶装置202や補助記憶装置203に格納されているプログラムを読み出して実行することにより実現される。
中央処理装置201は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等である。主記憶装置202は、ROM(Read Only Memory)、RAM(Random Access Memory)、NVRAM(Non Volatile RAM)等である。補助記憶装置203は、ハードディスクドライブ、SSD(Solid State Drive)、光学式記憶装置等である。通信装置204は、他の装置と通信する通信インタフェースであり、例えば、NIC(Network Interface Card)に相当する機能を有する。入力装置205は、ユーザから情報や指示の入力を受け付けるユーザインタフェースであり、例えば、キーボード、マウス、タッチパネル、カードリーダ、マイクロフォン等である。出力装置207は、ユーザに情報を提供するユーザインタフェースであり、例えば、グラフィックコントローラ、LCD(Liquid Crystal Display)、印字装置、スピーカ等である。
ファイアウォール10は、通信ネットワーク2から送られてくる通信データの受信(ファイアウォールのバックエンド側への通過)を所定の規則に従って制限する。ファイアウォール10は、通信ネットワーク2から送られてくる通信データの受信制限を行うか否かを、例えば、OSI(Open Systems Interconnection)参照モデルのネットワーク層(レイヤ3)又はトランスポート層(レイヤ4)の情報に基づき判定する。
ロードバランサ11は、スケーラブルに展開される複数のAPサーバ12間の負荷分散を行う。ロードバランサ11は、例えば、通信ネットワーク2から受信した通信データについて発生する情報処理(タスク等)を行うAPサーバ12を所定の負荷分散方式に従って決定し、決定したAPサーバ12に情報処理を割り当てることにより、複数のAPサーバ12間での負荷分散を実現する。上記の負荷分散方式には、静的な方式(ラウンドロビン方式、サーバごとに設定した重みや比率に応じて情報処理を割り当てる方式等)や動的な方式(コネクションが最も少ないサーバに情報処理を割り当てる最少コネクション方式、の応答速度が最も早いサーバに情報処理を割り当てる最短応答時間方式等)がある。
負荷監視装置20は、管理ネットワーク24を介してAPサーバ12から送られてくる負荷監視データ300を受信することにより、各APサーバ12の負荷をリアルタイムに(例えば、所定の時間間隔で)監視する。
図3は、APサーバ12から負荷監視装置20に負荷の状況を伝達する際にAPサーバ12から負荷監視装置20に送信される、XML(eXtensible Markup Language)形式で記述されたデータ(以下、負荷監視データ300と称する。)の一例である。同図に示すように、負荷監視データ300は、APサーバ12の識別子が設定される「<server_id>」、APサーバ12のサーバ名が設定される「<server_name>」、当該負荷監視データ300に記載される負荷を取得した時間が設定される「<time>」、APサーバ12のCPU使用率が設定される「<cpu>」、APサーバ12のメモリの使用量が設定される「<memory>」、APサーバ12のネットワークの使用量が設定される「<network>」、APサーバ12の補助記憶装置203の使用量が設定される「<disk>」、オプション情報が格納される「<option>」等のタグを用いて記述される各種の情報を含む。負荷監視データ300に記載されるこれらの情報は、例えば、APサーバ12において動作するオペレーティングシステムや仮想マシンを実現しているハイパーバイザ(hypervisor)等によって取得される。尚、負荷監視データ300は、JSON(JavaScript Object Notation(「Java」は登録商標)形式やCSV(comma-separated variables)形式等、XML以外の他の形式で記述されたものであってもよい。
図1に示すスケーリング制御装置21は、APサーバ12の(稼働)状態を制御することによりAPサーバ12をスケールアウト(負荷分散先のAPサーバ12の数を増やす)又はスケールイン(負荷分散先のAPサーバ12の数を減らす)する。
図4にAPサーバ12の状態遷移図を示している。同図に示すように、APサーバ12は、クラウドシステムのリソースを割り当てて稼動中(ON)の状態である稼働中411、リソースを割り当ててはいるが停止中(STOP)の状態である停止中412、及びリソースを解放中(OFF)の状態である解放中413の3つの状態をとることができる。APサーバ12の状態が解放中413から稼働中411に遷移する場合、スケーリング制御装置21は、クラウドシステムのリソースプールから当該APサーバ12にリソースを割り当てる。またAPサーバ12の状態が割り当て中(稼働中411又は停止中412)から解放中413に遷移する場合、スケーリング制御装置21は、APサーバ12に割り当てられているリソースを解放してリソースプールに返却する。またAPサーバ12の稼働状態が割り当て中(稼働中411又は停止中412)の場合はAPサーバ12の稼動時間とAPサーバ12の稼動数に応じてクラウドシステムの利用料(リソースの利用料)が発生し、APサーバ12の稼働状態が解放中413の場合は利用料は発生しない。
図5はスケーリング制御装置21が記憶するスケーリング制御データ500の一例である。スケーリング制御データ500の内容は、総合判定制御装置33や負荷監視装置20によって随時更新される。同図に示すように、スケーリング制御データ500は、APサーバ識別子501、稼動状態502、及びサーバ負荷503の各項目を有する複数のレコードを含む。APサーバ識別子501には、APサーバ12の識別子が格納される。稼動状態502には、APサーバ12の稼動状態(稼働中411の場合は「ON」、停止中412の場合は「STOP」)が格納される。サーバ負荷503には、負荷監視データ300から取得されるAPサーバ12の負荷を示す情報が格納される。サーバ負荷503は、例えば、負荷監視装置20がAPサーバ12から負荷監視データ300を受信する都度更新される。
図1に示す課金管理装置22は、APサーバ12の稼動時間と稼動数に応じて、クラウドの利用者に請求するAPサーバ12の利用料(課金金額)を算出する。
図6は課金管理装置22が記憶する課金管理データ600のデータ構造のイメージ図(ヒストグラム)である。同図において、横軸は時間であり、縦軸は課金対象となるAPサーバ12の数である。利用料はAPサーバ12の稼働時間と稼働数(総数)に比例して算出される。例えば、t0〜t5の時間帯では、領域601の面積に相当する利用料が発生する。またt5〜t10の時間帯では、領域602の面積に相当する利用料が発生する。
APサーバ12では、通信ネットワーク2を介してクラウド利用装置3から送られてくる通信データに応じて情報処理を行うアプリケーションが機能する。またAPサーバ12では、クラウド利用装置3から送られてくる通信データについてセキュリティに関する検査を行う検査部31が機能する。検査部31は、APサーバ12による通信データについての情報処理の実行時のセキュリティ違反を検知する。
検査部31の動作設定(検査部31が行う検査項目の設定)は、検査設定装置30によって行うことができる。検査部31による検査の結果はセキュリティ違反監視装置32に随時送信され、各APサーバ12の検査の結果がセキュリティ違反監視装置32に集約される。
図7は検査設定装置30が検査部31の設定に際してユーザに提示する画面(以下、検査項目設定画面700と称する。)の一例である。ユーザは、検査項目設定画面700を介して、検査部31の設定(フォーマット違反710の設定、コンテンツ違反720の設定、及びコンテキスト違反730の設定)を行う。
同図に示すように、フォーマット違反710の設定欄には、クラウド利用装置3から送られてくる通信データについて「XMLパーサ処理の失敗」、「JSONパーサ処理の失敗」、及び「データ長の不一致」の夫々について検査を行うか否かを設定するためのチェックボックス711〜713が設けられている。このうち「データ長の不一致」については、設定ボタン714を選択して図示しない設定画面を表示させることにより、より詳細な設定を行うことができる。
コンテンツ違反720の設定項目には、クラウド利用装置3から送られてくる通信データについて「ウイルスコードの検知」、「電文データからDBデータへの変換の失敗」、「署名検証の失敗」、及び「データ復号の失敗」の夫々について検査を行うか否かを設定するためのチェックボックス721〜724が設けられている。このうち「電文データからDBデータへの変換の失敗」については、設定ボタン725を選択して図示しない設定画面を表示させることにより、より詳細な設定を行うことができる。
コンテキスト違反730の設定項目には、クラウド利用装置3から送られてくる通信データについて「失効した証明書の検知」、「GPS位置情報の不一致」、「文字コードの不一致」、及び「テナントIDの不一致」(テナントIDについては後述する。)の夫々について検査を行うか否かを設定するためのチェックボックス731〜734が設けられている。
検査項目設定画面700の下部に設けられているボタン740が選択されると、検査項目設定画面700に設定された内容が検査設定装置30から複数のAPサーバ12の検査部31に自動的に送信され、各APサーバ12の検査部31に最新の設定内容が反映される。尚、設定項目は、負荷分散先となるAPサーバ12の検査部31の全てに同じ内容を配信してもよいし、例えば、APサーバ12の夫々が提供するサービスの特性等に応じてAPサーバ12ごとに設定内容を調整するようにしてもよい。
図1に示す総合判定制御装置33は、APサーバ12の負荷とセキュリティ違反監視装置32に集約されるセキュリティ違反の双方に基づき、APサーバ12のスケール(稼働させるAPサーバ12の数)を制御する。また総合判定制御装置33は、ネットワーク機器制御装置23を介して、スケーリング制御装置21、ファイアウォール10、及びロードバランサ11を制御する。
図1に示すセキュリティ違反監視装置32は、APサーバ12の検査部31から送られてくるセキュリティ違反データ800を受信し、受信したセキュリティ違反データ800を蓄積管理する。
図8は検査部31からセキュリティ違反監視装置32に送信されるXML形式で記述されたデータ(以下、セキュリティ違反データ800と称する。)の一例である。セキュリティ違反データ800は、例えば、検査部31にてセキュリティ違反が検知されたことを契機として検査部31からセキュリティ違反監視装置32に送信される。セキュリティ違反監視装置32は、セキュリティ違反データ800を受信することにより、APサーバ12の夫々におけるセキュリティ違反の状況を把握することができる。
同図に示すように、セキュリティ違反データ800は、APサーバ12を区別する識別子が設定される「<server_id>」、APサーバ12の名称が設定される「<server_name>」、セキュリティ違反が検知された時刻が設定される「<time>」、クラウド利用装置3のネットワークアドレス(例えばIPアドレス)が設定される「<device_from>」、フォーマット違反の内容が設定される「<violation_format>」、コンテンツ違反の内容が設定される「<violation_content>」、コンテキスト違反の内容が設定される「<violation_context>」、クラウド利用装置3が属するテナントの識別子(第2実施例にて説明)が格納される「<tenant_id>」、オプション情報が格納される「<option>」等のタグで記述された各種の情報を含む。尚、セキュリティ違反データ800は、JSON形式やCSV形式等のXML以外の他の形式で記述されるものであってもよい。
続いて、以上の構成からなる情報処理システム1において行われる処理について説明する。
<検査処理>
図9は、APサーバ12が通信ネットワーク2を介してクラウド利用装置3から通信データを受信した際に当該通信データについて当該APサーバ12(検査部31)が行う処理(以下、検査処理S900とも称する。)を説明するフローチャートである。以下、同図とともに説明する。尚、APサーバ12は、通信データを受信する都度、同図におけるS901からS907の処理を実行する。
まずS902では、APサーバ12がクラウド利用装置3から通信データを受信し、当該通信データの検査を開始する。
S903では、APサーバ12は、受信した通信データについてフォーマット違反の有無を検査する。フォーマット違反が検知されない場合(S903:違反なし)、APサーバ12はS904の処理を行う。フォーマット違反が検知された場合(S903:違反あり)、APサーバ12はS906の処理を行う。
S904では、APサーバ12は、受信した通信データについてコンテンツ違反の有無を検査する。コンテンツ違反が検知されない場合(S904:違反なし)、APサーバ12はS905の処理を行う。コンテンツ違反が検知された場合(S904:違反あり)、APサーバ12はS906の処理を行う。
S905では、APサーバ12は、受信した通信データについてコンテキスト違反の有無を検査する。コンテキスト違反が検知されない場合(S905:違反なし)、APサーバ12はS902からの処理を行う。コンテキスト違反が検知された場合(S905:違反あり)、APサーバ12はS906の処理を行う。
S906では、APサーバ12は、セキュリティ違反データ800を生成してセキュリティ違反監視装置32に送信する。その後、APサーバ12はS902からの処理を行う。
フォーマット違反、コンテンツ違反、及びコンテキスト違反のいずれかのセキュリティ違反が検知されると、APサーバ12からセキュリティ違反監視装置32にセキュリティ違反データ800が送信され、セキュリティ違反監視装置32に各APサーバ12におけるセキュリティ違反の発生数が集約して管理される。
APサーバ12は、以上の仕組みによりレイヤ5以上のセキュリティ違反を検知するので、トラヒック量を増大させることなく、アプリケーションレベルでメモリを食いつぶすような攻撃についてもこれをセキュリティ違反として確実に検知することができる。
<総合判定制御処理>
図10は総合判定制御装置33が行う処理(以下、総合判定制御処理S1000とも称する。)を説明するフローチャートである。以下、同図とともに説明する。尚、総合判定制御装置33は、同図におけるS1001〜S1012までの処理を所定の間隔で繰り返し実行する。
S1002では、総合判定制御装置33は、セキュリティ違反監視装置32からセキュリティ違反の発生数の合計(負荷分散先の全てのAPサーバ12におけるセキュリティ違反の発生数の合計)を受信する。尚、総合判定制御装置33がセキュリティ違反監視装置32からセキュリティ違反の発生数のみを受信し、発生数の合計については総合判定制御装置33が算出するようにしてもよい。
S1003では、総合判定制御装置33は、各APサーバ12から負荷監視データ300を受信してAPサーバ12の負荷を取得する。
S1004では、総合判定制御装置33は、APサーバ12の負荷の傾向、セキュリティ違反の傾向、及びこれらの関係等の判定に用いる情報である、時系列監視マトリクスを生成する。
図11は時系列監視マトリクスの一例である。同図に示すように、時系列監視マトリクス1100は、APサーバ12の平均負荷(負荷分散先の複数のAPサーバ12の平均負荷)を横軸とし、検査部31で見つかったセキュリティ違反の発生数の合計を縦軸として、所定の単位期間ごとに、平均負荷とセキュリティ違反の発生数の合計との関係をプロット1101したものである。総合判定制御装置33は、APサーバ12がサービスを提供している期間中、最新の情報(平均負荷とセキュリティ違反の発生数)に基づきプロット1101を繰り返し生成する。
ここで例えばクラウド利用装置3から送られてくる通信データの数が増加傾向にある場合、プロット1101は横軸に沿って平均負荷が高くなる方向に移動していく。またセキュリティ違反の発生数が増加傾向にある場合、プロット1101は縦軸に沿ってセキュリティ違反の発生数が増加する方向に移動していく。そしてこのようにAPサーバ12の平均負荷とセキュリティ違反の発生数との関係をマトリクス状に表現することで、総合判定制御装置33は、セキュリティ違反とはとくに関係なく通信データが増加することに因ってAPサーバ12の負荷が高くなっているのか、それともセキュリティ違反が生じていることに因ってAPサーバ12の負荷が高くなっているのかを判定することができる。
図10に戻り、S1005では、総合判定制御装置33は、APサーバ12が現在、過負荷傾向であるか否かを判定する。総合判定制御装置33は、例えば、時系列監視マトリクス1100においてプロット1101が所定の個数だけ連続してAPサーバ12の平均負荷について設定された所定の閾値を超えているか否かに基づき、APサーバ12が現在、過負荷傾向であるか否かを判定する。
APサーバ12が現在、過負荷傾向であると判定すると(S1005:過負荷)、総合判定制御装置33はS1006からの処理を行う。一方、APサーバ12が現在、過負荷傾向でないと判定すると(S1005:いいえ)、総合判定制御装置33はS1010からの処理を行う。
S1006では、総合判定制御装置33は、セキュリティ違反が現在、増加傾向であるか否かを判定する。総合判定制御装置33は、例えば、時系列監視マトリクス1100を参照し、プロット1101のセキュリティ違反の発生数が、所定の個数だけ連続してセキュリティ違反の発生数について設定された所定の閾値を超えている場合にセキュリティ違反が現在、増加傾向であると判定する。
総合判定制御装置33は、セキュリティ違反が現在、増加傾向であると判定すると(S1006:増加傾向)、ファイアウォール10を制御して受信制限を強化する。受信制限の強化は、例えば、統合判定制御装置33がファイアウォール10に受信制限を指示する制御データ(以下、ネットワーク機器制御データ1200とも称する。)を送信することにより行われる。尚、受信制限の強化に加え、必要な限度でAPサーバ12のスケールアウトを実施するようにしてもよい。
図12にネットワーク機器制御データ1200の一例を示している。ネットワーク機器制御データ1200はXML形式で記述されている。同図に示すように、ネットワーク機器制御データ1200は、制御対象のネットワーク機器の識別子が設定される「<network_id>」、ネットワーク機器の受信制限ルールに追加する内容が設定される「<add_rule>」、オプション情報が格納される「<option>」等のタグで記述された各種の情報を含む。尚、ネットワーク機器制御データ1200は、JSON形式やCSV形式等のXML以外の他の形式で記述されたものであってもよい。
一方、S1006においてセキュリティ違反が現在、増加傾向でないと判定すると(S1006:いいえ)、総合判定制御装置33は、スケーリング制御装置21を制御してAPサーバ12をスケールアウトする。具体的には、総合判定制御装置33は、スケーリング制御装置21を制御することにより、状態が解放中413のAPサーバ12のいずれかを稼働中411の状態に遷移させる。また総合判定制御装置33は、スケーリング制御データ500の稼動状態502を最新の内容に更新する。
S1010では、総合判定制御装置33は、APサーバ12が現在、低負荷傾向であるか否かを判定する。総合判定制御装置33は、例えば、時系列監視マトリクス1100を参照し、プロット1101の平均負荷が、所定の個数だけ連続して、平均負荷について設定された所定の閾値未満である場合に、APサーバ12が現在、低負荷傾向であると判定する。
総合判定制御装置33は、APサーバ12が現在、低負荷傾向であると判定すると(S1010:低負荷)、スケーリング制御装置21を制御してAPサーバ12をスケールインする(S1011)。これにより低負荷時にAPサーバ12が不必要に供出されるのを防いでAPサーバ12の利用料を抑えることができる。APサーバ12のスケールインは、例えば、総合判定制御装置33がスケーリング制御装置21を制御して稼働中のAPサーバ12のいずれかにおいてロードバランサ11によるタスクの割り当て数を減らしておき、割り当てられているタスクが0になっている間にAPサーバ12の状態を停止中412に遷移させることにより行う。尚、このとき、総合判定制御装置33は、スケーリング制御データ500の稼動状態502を最新の内容に更新する。
一方、APサーバ12が現在、低負荷傾向でないと判定すると(S1010:いいえ)、総合判定制御装置33はS1002からの処理を行う。
以上のように、総合判定制御処理S1000は、APサーバ12の平均負荷の傾向とセキュリティ違反の発生数の傾向の双方を考慮してAPサーバ12のスケールを適切に制御するので、APサーバ12の利用料を不必要に増大させることなく、APサーバ12の負荷の増大やDoS攻撃を受けることによるAPサーバ12の可用性の低下を防ぐことができる。
<スケーリング総合判定画面>
図13は総合判定制御装置33が表示するスケーリング総合判定画面1300である。同図に示すように、スケーリング総合判定画面1300には、現在時刻1301、テナント名1302(第2実施例で説明)、APサーバ12の負荷を監視するグラフ1303、セキュリティ違反数を監視するグラフ1304、受信制限の規則の更新履歴1305、現在割り当て中(稼働中411又は停止中412)のAPサーバ12の数を示すグラフ1306、受信制限を実施しない場合における課金分析結果グラフ1307、所定期間の課金額1308、及び受信制限しない場合における所定期間の課金額1309が表示される。
ユーザは、スケーリング総合判定画面1300を参照することで、APサーバ12の平均負荷、APサーバ12で受信したデータのセキュリティ違反数、現在割り当て中のAPサーバ12の数、及びAPサーバ12の利用料(課金額)等の情報を得ることができる。またユーザは、所定期間の課金額1308と、受信制限しない場合の所定期間の課金額1309とを対照することで、受信制限を強化することによる効果を検証することができる。またユーザがポインタ1310をセキュリティ違反監視グラフ1304の部分に重ねることで、当該部分におけるセキュリティ違反データ800の内容が自動的に表示される。これによりユーザは、セキュリティ違反の内容とセキュリティ違反に起因して行われる受信制限とを同時に対照することができ、発生したセキュリティ違反に対して有効に受信制限が機能しているか否かを容易に確認することができる。
=第2実施例=
図1に示した情報処理システム1は、マルチテナントの環境下で実施することもできる。以下、図1において、クラウド利用装置3aがテナントA群のクラウド利用装置であり、クラウド利用装置3bはテナントB群のクラウド利用装置であり、クラウド利用装置3cはテナントC群のクラウド利用装置である場合を例として、情報処理システム1をマルチテナントの環境下で実施する場合について説明する。
APサーバ12は、ロードバランサ11から割り当てられた通信データに対して、第1実施例の場合と同様の処理を行うと共に、通信データがいずれのテナントから送信されたものであるのかを判定する。この判定は、例えば、通信データに含まれている情報(送信元のクラウド利用装置3のIPアドレス範囲、クラウド利用装置3の識別子等)に基づき行うことができる。また前回の通信データの受信応答時にAPサーバ12においてテナントを判定し、判定結果(以下、テナントIDと称する)を記載した小さなデータ(例えば、クッキー(Cookie))をAPサーバ12からクラウド利用装置3に送り、クラウド利用装置3がAPサーバ12に送信する通信データに上記テナントIDを含めて送るようにし、APサーバ12が通信データの受信時に上記テナントIDを参照して当該通信データの送信元のクラウド利用装置3のテナントを判定する方法もある。
通信データに関してデータベースサーバ13に管理されるデータは、APサーバ12で判定されたテナントIDを付与して管理するように、例えば、テナントIDごとに異なるテーブルにデータを格納するようにする。これにより、例えば、APサーバ12がデータベースサーバ13にアクセスする際、テナントIDの異なるデータは参照しないようにすることができ、効率よくデータベースサーバ13にアクセスすることが可能になる。
図7の検査項目設定画面700には、コンテキスト違反730として、テナントIDの不一致を確認するチェックボックス734を設けているが、テナントIDの不一致の検査は、例えば、通信データに含まれているテナントIDとデータベースサーバ13に管理されるデータに付与されているテナントIDとを対照することにより行うことができる。この検査によって検査部31がテナントIDの不一致を見つけた場合、図8のセキュリティ違反データ800の「<tenant_id>」に違反のあったテナントIDが格納される。またこのテナントIDは、セキュリティ違反監視装置32に通知され、例えば、ファイアウォール10による受信制限規則に反映される。
尚、マルチテナント構成の場合、テナントごとにサービス利用の繁茂期と閑散期が多様になることが想定され、スケールアウトやスケールインが実施される機会が増えることが予想されるが、以上の構成よれば、そのような場合でもクラウド利用装置3から送られてくる通信データのうちセキュリティ違反(テナントIDが不一致)であるものを確実に検知することができ、APサーバ12を不必要にスケールアウトさせることなく、確実に受信制限を行うことができる(図10のS1007)。そのため、APサーバ12を不必要にスケールアウトさせて利用料を増大させることなく、サービスの可用性を維持することができる。
=第3実施例=
図14に第3実施例として示す情報処理システム1の概略的な構成を示している。同図に示すように、第3実施例の情報処理システム1は、複数のクラウドシステム(フロントエンドクラウドシステム1400及びバックエンドクラウドシステム1410)を組み合わせることにより構成されている。尚、同図において、第1実施例における装置と同じ名称の装置は、第1実施例における装置と同様の機能を有するものとする。
同図におけるフロントエンドクラウドシステム1400は、通信ネットワーク2を介してクラウド利用装置3a〜3cと通信可能に接続している。同図に示すように、フロントエンドクラウドシステム1400は、ファイアウォール1401、ロードバランサ1402、ネットワーク機器制御装置1403、検査設定装置1404、セキュリティ違反監視装置1405、及び総合判定制御装置1406を備える。
フロントエンドクラウドシステム1400は、第3クラウドネットワーク16を介して複数のバックエンドクラウドシステム1410と通信可能に接続している。ロードバランサ1402は、複数のバックエンドクラウドシステム1410の夫々の負荷に応じて複数のバックエンドクラウドシステム1410に通信ネットワーク2から受信した通信データについて発生する情報処理(タスク等)を割り当てることにより、複数のバックエンドクラウドシステム1410間(各バックエンドクラウドシステム1410の複数のAPサーバ1413間)での負荷分散を実現する。
バックエンドクラウドシステム1410は、夫々、負荷監視装置1411、スケーリング制御装置1412、APサーバ1413、検査部1414、及び図示しないデータベースサーバを備える。
各バックエンドクラウドシステム1410のスケーリング制御装置1412は、各バックエンドクラウドシステム1410のAPサーバ1413の状態を制御する。検査部1414の設定項目の設定は、第3クラウドネットワーク16を介して、フロントエンドクラウドシステム1400の検査設定装置1404によって行われる。各バックエンドクラウドシステム1410のAPサーバ1413の検査部1414は、セキュリティ違反データ800を、第3クラウドネットワーク16を介してフロントエンドクラウドシステム1400のセキュリティ違反監視装置1405に送信する。
フロントエンドクラウドシステム1400の総合判定制御装置1406は、時系列監視マトリクス800を生成し、バックエンドクラウドシステム1410全体での平均負荷とセキュリティ違反の発生数の合計とに基づき、図10と同様の処理により、各バックエンドクラウドシステム1410のAPサーバ1413のスケールイン又はスケールアウト、及び受信制限の強化等の制御を行う。これにより情報処理システム1全体として、APサーバ1413の利用料を不必要に増大させることなくAPサーバ1413の可用性の低下を防ぐことができる。
ところで、本発明は上記した実施例に限定されるものではなく、他の様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウエアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 情報処理システム、2 通信ネットワーク、3 クラウド利用装置、4 不正アクセス装置、10 ファイアウォール、11 ロードバランサ、12 APサーバ、13 データベースサーバ、14 第1クラウドネットワーク、15 第2クラウドネットワーク、20 負荷監視装置、21 スケーリング制御装置、22 課金管理装置、23 ネットワーク機器制御装置、24 管理ネットワーク、30 検査設定装置、31 検査部、32 セキュリティ違反監視装置、33 総合判定制御装置、200 情報処理装置、300 負荷監視データ、500 スケーリング制御データ、600 課金管理データ、700 検査項目設定インタフェース、800 セキュリティ違反データ、S900 検査処理、S1000 総合判定制御処理、1100 時系列監視マトリクス、1100 スケーリング総合判定インタフェース、1200 ネットワーク制御データ、1300 スケーリング総合判定画面

Claims (14)

  1. 通信ネットワークを介して送られてくる通信データを受信して情報処理を行うサーバ装置、
    前記通信データの受信制限を行う受信制限装置、
    前記サーバ装置の負荷を監視する負荷監視装置、
    前記サーバ装置の負荷に応じて前記サーバ装置をスケールアウト又はスケールインするスケーリング制御装置、
    前記サーバ装置による前記情報処理の実行時のセキュリティ違反を検知するセキュリティ違反監視装置、及び、
    前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にない場合は前記サーバ装置をスケールアウトし、前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にある場合は前記受信制限装置による前記受信制限を強化する総合判定制御装置
    を備えることを特徴とする情報処理システム。
  2. 請求項1に記載の情報処理システムであって、
    前記サーバ装置による情報処理の実行時のセキュリティ違反は、OSI(Open Systems Interconnection)のレイヤ5以上において検知されるセキュリティ違反である
    ことを特徴とする情報処理システム。
  3. 請求項1に記載の情報処理システムであって、
    前記サーバ装置の負荷が低負荷傾向にある場合は前記サーバ装置をスケールインする
    ことを特徴とする情報処理システム。
  4. 請求項1に記載の情報処理システムであって、
    前記サーバ装置はクラウドシステムのリソースを用いて構成され、
    前記通信データは、前記通信ネットワークを介して前記クラウドシステムを利用する装置から送信される
    ことを特徴とする情報処理システム。
  5. 請求項1に記載の情報処理システムであって、
    前記受信制限装置はファイアウォールである
    ことを特徴とする情報処理システム。
  6. 請求項1に記載の情報処理システムであって、
    前記サーバ装置のスケールに応じて利用料を算出する課金管理装置
    をさらに備えることを特徴とする情報処理システム。
  7. 請求項5に記載の情報処理システムであって、
    前記受信制限を強化したときの前記サーバ装置の利用料と、前記受信制限を強化しないときの前記サーバ装置の利用料とを対比した情報を出力する装置
    をさらに備えることを特徴とする情報処理システム。
  8. 請求項1に記載の情報処理システムであって、
    前記セキュリティ違反は、前記通信データのフォーマット違反、コンテンツ違反、コンテキスト違反のうちの少なくともいずれかである
    ことを特徴とする情報処理システム。
  9. 請求項8に記載の情報処理システムであって、
    前記フォーマット違反は、XMLパーサ処理の失敗、JSONパーサ処理の失敗、及びデータ長の不一致のうちの少なくともいずれかである
    ことを特徴とする情報処理システム。
  10. 請求項8に記載の情報処理システムであって、
    前記コンテンツ違反は、ウイルスコードの検知、電文データからDBデータへの変換失敗、署名検証の失敗、及びデータ復号の失敗のうちの少なくともいずれかである
    ことを特徴とする情報処理システム。
  11. 請求項8に記載の情報処理システムであって、
    前記コンテキスト違反は、失効した証明書の検知、前記通信データに含まれるGPS位置情報の不一致、及び文字コードの不一致のうちの少なくともいずれかである
    ことを特徴とする情報処理システム。
  12. 請求項1に記載の情報処理システムであって、
    前記サーバ装置はマルチテナントで運用されるクラウドシステムのリソースを用いて構成され、
    前記通信データが所属するテナントが予め記憶しているいずれのテナントにも一致しない場合に前記通信データを受信制限装置により受信制限するテナント判定処理部を備える
    ことを特徴とする情報処理システム。
  13. 通信ネットワークを介して送られてくる通信データを受信して情報処理を行うサーバ装置、
    前記通信データの受信制限を行う受信制限装置、
    前記サーバ装置の負荷を監視する負荷監視装置、
    前記サーバ装置の負荷に応じて前記サーバ装置をスケールアウト又はスケールインするスケーリング制御装置、
    前記サーバ装置による前記情報処理の実行時のセキュリティ違反を検知するセキュリティ違反監視装置、及び
    総合判定制御装置、
    を備えて構成される情報処理システムにおける情報処理方法であって、
    前記総合判定制御装置が、
    前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にない場合は前記サーバ装置をスケールアウトし、前記サーバ装置の負荷が過負荷傾向にあり、かつ、前記セキュリティ違反が増加傾向にある場合は前記受信制限装置による前記受信制限を強化する
    をことを特徴とする情報処理方法。
  14. 請求項13に記載の情報処理方法であって、
    前記サーバ装置による情報処理の実行時のセキュリティ違反は、OSIのレイヤ5以上において検知されるセキュリティ違反である
    ことを特徴とする情報処理方法。
JP2014103302A 2014-05-19 2014-05-19 情報処理システム及び情報処理方法 Pending JP2015219753A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014103302A JP2015219753A (ja) 2014-05-19 2014-05-19 情報処理システム及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014103302A JP2015219753A (ja) 2014-05-19 2014-05-19 情報処理システム及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2015219753A true JP2015219753A (ja) 2015-12-07

Family

ID=54779064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014103302A Pending JP2015219753A (ja) 2014-05-19 2014-05-19 情報処理システム及び情報処理方法

Country Status (1)

Country Link
JP (1) JP2015219753A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019021167A (ja) * 2017-07-20 2019-02-07 富士ゼロックス株式会社 情報処理装置および情報処理システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019021167A (ja) * 2017-07-20 2019-02-07 富士ゼロックス株式会社 情報処理装置および情報処理システム

Similar Documents

Publication Publication Date Title
US10855545B2 (en) Centralized resource usage visualization service for large-scale network topologies
US10728175B2 (en) Adaptive service chain management
US10313211B1 (en) Distributed network service risk monitoring and scoring
US9647904B2 (en) Customer-directed networking limits in distributed systems
US10747592B2 (en) Router management by an event stream processing cluster manager
US10313362B2 (en) Systems and methods for real-time configurable load determination
US10237875B1 (en) Routing-aware network limiter
US9231869B2 (en) Ensuring predictable and quantifiable networking performance
US8706864B1 (en) Behavior monitoring and compliance for multi-tenant resources
JP4058038B2 (ja) 負荷監視装置および負荷監視方法
US10735459B2 (en) Service overload attack protection based on selective packet transmission
Yang et al. Implementation of a real-time network traffic monitoring service with network functions virtualization
CN107454039B (zh) 网络攻击检测系统、方法和计算机可读存储介质
US9590885B1 (en) System and method of calculating and reporting of messages expiring from a queue
JP6518297B2 (ja) ウェブページのアンチウィルススキャンを実行するためのシステム及び方法
JP2009146005A (ja) 情報処理装置および情報処理方法
CN113765980A (zh) 一种限流方法、装置、系统、服务器和存储介质
CN112165445B (zh) 用于检测网络攻击的方法、装置、存储介质及计算机设备
CN111865720B (zh) 用于处理请求的方法、装置、设备以及存储介质
JP6680028B2 (ja) 監視システム、監視方法および監視プログラム
US9195564B2 (en) Advanced notification of workload
US20130132552A1 (en) Application-Aware Quality Of Service In Network Applications
US20220334877A1 (en) Method for overload control in a container-virtualized computing apparatus
US10999398B1 (en) Scan protection with rate limiting
JP6310822B2 (ja) 仮想マシンのリソース管理システム、方法及びプログラム