JP2005316779A - 不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム - Google Patents
不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム Download PDFInfo
- Publication number
- JP2005316779A JP2005316779A JP2004134668A JP2004134668A JP2005316779A JP 2005316779 A JP2005316779 A JP 2005316779A JP 2004134668 A JP2004134668 A JP 2004134668A JP 2004134668 A JP2004134668 A JP 2004134668A JP 2005316779 A JP2005316779 A JP 2005316779A
- Authority
- JP
- Japan
- Prior art keywords
- detection rule
- detection
- unauthorized access
- access
- rule generation
- 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
Links
Images
Abstract
【課題】検知ルールが明らかでない新種や未知の不正アクセスに対処すること。また、新種や未知の不正アクセスに対処するための検知ルールの生成を迅速かつ自動的に行うこと。
【解決手段】ネットワークに対して行われる不正アクセスを検出する不正アクセス検出装置であって、自己の存在を知らせることなく自己宛の通信を検出するパッシブホストセンサ11と、不正アクセスを特徴づける検知ルールを生成して出力する検知ルール生成装置12と、観測されたアクセスの不正性を判定するシグネチャマッチング型IDS14とが備えられ、検知ルール生成装置12は、パッシブホストセンサ11から通知されたアクセスログに基づいて検知ルールを自動生成する自動生成手段を備える。
【選択図】 図1
【解決手段】ネットワークに対して行われる不正アクセスを検出する不正アクセス検出装置であって、自己の存在を知らせることなく自己宛の通信を検出するパッシブホストセンサ11と、不正アクセスを特徴づける検知ルールを生成して出力する検知ルール生成装置12と、観測されたアクセスの不正性を判定するシグネチャマッチング型IDS14とが備えられ、検知ルール生成装置12は、パッシブホストセンサ11から通知されたアクセスログに基づいて検知ルールを自動生成する自動生成手段を備える。
【選択図】 図1
Description
この発明は、ネットワークに対して行われる不正アクセスの検出に関するものであり、特に、新種や未知の不正アクセスに対処可能な不正アクセス検出装置ならびに、これらの新種や未知の不正アクセスに迅速に対処するための検知ルールを自動生成可能な検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラムに関するものである。
近年、インターネットが社会的に重要なメディアとなり、その上で様々なサービスが提供されている。例えば、従来から利用されているメール、webによるブラウジングや掲示板などに加え、オンラインショッピングや銀行決済、企業間の取引などにもインターネットが利用されるようになってきている。
一方、これらへの利用に伴い、悪意のあるユーザによる不正アクセスによって、サービスの停止や、情報の改ざん、情報の漏洩などが起こった場合の社会的活動に与える影響が以前に比べて重大かつ深刻なものになってきている。そのため、不正アクセスをいち早く検出し対策をとることが求められている。
上述のような不正アクセスを早期に検出するための検出手段の一つとして、侵入検知システム(IDS:Intrusion Detection System)があり、その中でも、“Snort”と呼ばれるシグネチャマッチング型のIDSが実用化され、各所で使用されている。
ところで、シグネチャマッチング型のIDSは、既知の不正アクセスの通信内容に含まれる特徴的な文字列を予めデータベースとして保有するとともに、その文字列に一致するものが監視対象のネットワークで発見され場合に、管理者に対してアラートを通知するように動作する。したがって、この方式は、動作の高速性があり、誤検出が少ないといった利点を有している反面、対応する検知ルールが明らかでない新種や未知の不正アクセスについては、全く検知することはできないという問題点が存在しており、新種や未知の不正アクセスが発見されたときにいかにして、迅速に検知ルールを作成するかが重要な課題として残っている。
このような状況下において、不正アクセスから自己のシステムを防御するための従来技術として、コンピュータネットワークのセキュリティサポート契約者に対し、不正侵入を検知した契約者のネットワーク機器からの情報により、不正侵入者をおとりサーバに誘導する手段を提供した管理システムが開示されている(例えば、特許文献1)。この特許文献1では、この管理システムを利用することの利点として、おとりサーバの設置やログ解析、応答パケットの作成といった対処を専門のサービス業者に委託することによりネットワーク管理のコストを軽減することができるという第1の利点と、サービス提供者側が、サービス利用者のネットワーク機器の状況を遠隔地から常時把握することができ、サービス利用者のところに出向かずとも迅速な対応が可能となるという第2の利点とが挙げられている。
しかしながら、上述した従来のシグネチャマッチング型のIDSや、上記特許文献1に開示された管理システムにおいては、根本的な問題点が内在しているという点で両者には共通点がある。すなわち、特許文献1の発明ではログ解析や不正アクセスに対する応答パケットの作成といった対処を専門のサービス業者に委託することが前提であり、従来のシグネチャマッチング型のIDSに固有な「新種や未知の不正アクセスが発見されたときに迅速な対処ができない」という課題は依然として解決されていない。
この発明は、上述した従来の欠点に鑑みてなされたものであり、検知ルールが明らかでない新種や未知の不正アクセスに対処することができる不正アクセス検出装置を提供することを目的とする。また、これらの新種や未知の不正アクセスに対処するための検知ルールの生成を迅速かつ自動的に行うことができる検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラムを提供することを目的とする。
上記目的を達成するため、請求項1にかかる不正アクセス検出装置は、ネットワークに対して行われる不正アクセスを検出する不正アクセス検出装置であって、自己の存在を知らせることなく自己宛の通信を検出するパッシブホストセンサと、不正アクセスを特徴づける検知ルールを生成して出力する検知ルール生成装置と、観測されたアクセスの不正性を判定するシグネチャマッチング型IDSと、を備え、前記検知ルール生成装置は、前記パッシブホストセンサから通知されたアクセスログに基づいて前記検知ルールを自動生成する自動生成手段を備えたことを特徴とする。
また、請求項2にかかる不正アクセス検出装置は、上記の発明において、前記自動生成手段は、前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定手段を備えたことを特徴とする。
また、請求項3にかかる不正アクセス検出装置は、上記の発明において、前記自動生成手段は、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成手段と、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出手段と、を具備する第2の剪定手段を備えたことを特徴とする。
また、請求項4にかかる不正アクセス検出装置は、上記の発明において、前記仮の検知ルール生成手段は、前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする。
また、請求項5にかかる不正アクセス検出装置は、上記の発明において、前記仮の検知ルール生成手段は、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする。
また、請求項6にかかる不正アクセス検出装置は、上記の発明において、前記所定の抽出処理では、不正アクセスを含まないトラフィックデータである通常トラフィックデータに基づいて頻出文字列リストが生成され、前記仮の検知ルールから、当該頻出文字列リストの所定の順位以上に位置する頻出文字列が除去されることを特徴とする。
また、請求項7にかかる不正アクセス検出装置は、上記の発明において、前記アクセスログのプロトコルがアプリケーション層の通信プロトコルであることを特徴とする。
また、請求項8にかかる不正アクセス検出装置は、上記の発明において、前記第1の剪定手段は、前記アプリケーション層の通信プロトコルで通信されたリクエストに含まれるメッセージヘッダを構成するフィールド名のセッションごとの出現頻度と、該フィールドの種類ごとに算出された所定の第1のしきい値と、に基づいて前記検知ルールの自動生成処理を行わせるか否かを判定することを特徴とする。
また、請求項9にかかる不正アクセス検出装置は、上記の発明において、前記第1の剪定手段は、前記アプリケーション層の通信プロトコルで通信されたリクエストに含まれるメッセージヘッダのフィールド値を構成する文字列の任意の文字種間の遷移確率の平均値と、所定の第2のしきい値とに基づいて前記検知ルールの自動生成処理を行わせるか否かを判定することを特徴とする。
また、請求項10にかかる不正アクセス検出装置は、上記の発明において、観測された不正アクセスから生成される複数の検知ルールに対し、当該検知ルールの性能を表す重要度で重み付け処理した合計値である得点が所定値以上の場合にアラートを発生させることを特徴とする。
また、請求項11にかかる不正アクセス検出装置は、上記の発明において、前記重要度は、過去のトラヒックデータに対する反応数に基づいて算出されることを特徴とする。
また、請求項12にかかる不正アクセス検出装置は、上記の発明において、設定された許容F.P.数と、検知ルールごとの前記得点の傾向とに基づいて決定される判定しきい値が設定され、当該判定しきい値よりも上位順位にある検知ルールに反応したときにアラートを発生させることを特徴とする。
また、請求項13にかかる不正アクセス検出装置は、上記の発明において、観測された不正アクセスが新種の不正アクセスの場合に、当該観測された不正アクセスに基づいて検知ルールを生成し、生成された検知ルールを所定のデータベースに追加する追加モードと、登録済の検知ルールに基づいて観測されたアクセスが不正か否かを判定する判定モードと、を有することを特徴とする。
また、請求項14にかかる不正アクセス検出装置は、上記の発明において、前記検知ルールを新規に構築するための生成モードを有することを特徴とする。
また、請求項15にかかる不正アクセス検出装置は、上記の発明において、検知ルールの追加および判定処理を同時に行う追加・判定モードを有することを特徴とする。
また、請求項16にかかる検知ルール生成装置は、上記の発明において、ネットワークに対して行われる不正アクセスを検出するための検知ルールを生成する検知ルール生成装置であって、入力されたアクセスログに基づいて不正アクセスを特徴づける検知ルールを自動生成する自動生成手段を備えたことを特徴とする。
また、請求項17にかかる検知ルール生成装置は、上記の発明において、前記自動生成手段は、前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定手段を備えたことを特徴とする。
また、請求項18にかかる検知ルール生成装置は、上記の発明において、前記自動生成手段は、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成手段と、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出手段と、を具備する第2の剪定手段を備えたことを特徴とする。
また、請求項19にかかる検知ルール生成装置は、上記の発明において、前記仮の検知ルール生成手段は、前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする。
また、請求項20にかかる検知ルール生成装置は、上記の発明において、前記仮の検知ルール生成手段は、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする。
また、請求項21にかかる検知ルール生成装置は、上記の発明において、前記検知ルールを新規に構築するための生成モードを有することを特徴とする。
また、請求項22にかかる検知ルール生成装置は、上記の発明において、仮の検知ルールデータから前記検知ルールが一括生成されることを特徴とする。
また、請求項23にかかる不正アクセス検出方法は、ネットワークに対して行われる不正アクセスを検出するための検知ルールを生成する検知ルール生成方法であって、入力されたアクセスログに基づいて不正アクセスを特徴づける検知ルールを自動生成する自動生成ステップと、前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定ステップと、を含むことを特徴とする。
また、請求項24にかかる不正アクセス検出方法は、上記の発明において前記自動生成ステップは、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成ステップと、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出ステップと、を具備する第2の剪定ステップを備えたことを特徴とする。
また、請求項25にかかる不正アクセス検出方法は、上記の発明において前記仮の検知ルール生成ステップは、前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする。
また、請求項26にかかる不正アクセス検出方法は、上記の発明において前記仮の検知ルール生成ステップは、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする。
また、請求項27にかかる検知ルール生成プログラムは、請求項23〜26のいずれか一つに記載の方法を電子計算機に実行させることを特徴とする。
この発明にかかる不正アクセス検出装置によれば、パッシブホストセンサから通知されたアクセスログに基づいて検知ルールを自動生成するようにしているので、検知ルールが明らかでない新種や未知の不正アクセスに対処することができる。
また、この発明にかかる検知ルール生成装置によれば、入力されたアクセスログに基づいて不正アクセスを特徴づける検知ルールを自動生成するようにしているので、新種や未知の不正アクセスに対処するための検知ルールの生成を迅速かつ自動的に行うことができる。
以下、図面を参照して、この発明の実施の形態である不正アクセス検出装置ならびに検知ルール生成装置および検知ルール生成方法について説明する。なお、この実施の形態によりこの発明が限定されるものではない。
(実施の形態1)
図1は、この発明の実施の形態1にかかる不正アクセス検出装置の構成を示すブロック図である。同図に示す接続構成は、不正アクセス検出装置10が接続されるネットワークがインターネットや他のネットワークなどの任意のネットワークに接続されている状態を示すものである。
図1は、この発明の実施の形態1にかかる不正アクセス検出装置の構成を示すブロック図である。同図に示す接続構成は、不正アクセス検出装置10が接続されるネットワークがインターネットや他のネットワークなどの任意のネットワークに接続されている状態を示すものである。
図1において、不正アクセス検出装置10は、ネットワーク2,3およびインターネット4に接続されたネットワーク1に接続されている。一方、ネットワーク1には、ネットワーク1の通信ログなどを常時記録するためのトラフィックデータベース5が接続されている。不正アクセス検出装置10は、パッシブホストセンサ11と、検知ルール生成装置12と、検知ルールデータベース13と、IDS14とを備えている。不正アクセス検出装置10を構成する各構成部は、パッシブホストセンサ11と、IDS14とがネットワーク1にそれぞれ接続され、パッシブホストセンサ11に接続される検知ルール生成装置12と、IDS14に接続される検知ルールデータベース13とがそれぞれ接続されている。また、検知ルール生成装置12およびIDS14は、トラフィックデータベース5にも接続されている。
例えば、パッシブホストセンサ11、検知ルール生成装置12およびIDS14は、ワークステーションまたはパーソナルコンピュータなどのプラットフォームと、このプラットフォームに搭載される処理ソフトウェアなどから構成される。また、検知ルールデータベース13は磁気ディスク等の記憶装置から構成される。なお、これらの各構成部は、図1に示すようにそれぞれが異なるハードウェアで処理させる構成としてもよいし、また、それぞれの処理能力に応じて、各構成部で行われる幾つかの処理機能を統合して同一ハードウェア上で処理させる構成としてもよい。例えば、パッシブホストセンサ11内に検知ルール生成装置12の機能を組み込むように構成してもよい。また、検知ルール生成装置12内に検知ルールの記憶領域を確保し、検知ルールデータベース13の機能を組み込むように構成してもよい。
つぎに、図1に示す不正アクセス検出装置10の3つの処理モードについて説明する。不正アクセス検出装置10は、つぎに示す3つの処理モードを有する。
(1) 検知ルールデータベース13を新規に構築するための生成モード
(2) 観測された不正アクセスが新種の不正アクセスの場合に、この観測された不正アクセスに基づいて不正アクセス検知ルール(以下、単に「検知ルール」と呼称)を生成し、生成された検知ルールを検知ルールデータベース13に追加する追加モード
(3) 登録済の検知ルールに基づいて観測されたアクセスが不正か否かを判定する判定モード
また、上記3つの処理モードの他に検知ルールの自動生成と、生成された検知ルールの登録を迅速に行うことができるという特徴を活用し、検知ルールの追加および判定処理を同時に行う追加・判定モードも存在するが、この追加・判定モードは、システムの運用上のモードであり機能的には追加モードおよび判定モードの機能を組み合わせたものに相当するので、上記3つの処理モードに含めて考えることにする。 なお、ここでいう検知ルールという用語は、一般的なIDSなどに設定されている不正パケットの特徴情報を示すシグネチャと同義であると考えて差しつかえない。
(1) 検知ルールデータベース13を新規に構築するための生成モード
(2) 観測された不正アクセスが新種の不正アクセスの場合に、この観測された不正アクセスに基づいて不正アクセス検知ルール(以下、単に「検知ルール」と呼称)を生成し、生成された検知ルールを検知ルールデータベース13に追加する追加モード
(3) 登録済の検知ルールに基づいて観測されたアクセスが不正か否かを判定する判定モード
また、上記3つの処理モードの他に検知ルールの自動生成と、生成された検知ルールの登録を迅速に行うことができるという特徴を活用し、検知ルールの追加および判定処理を同時に行う追加・判定モードも存在するが、この追加・判定モードは、システムの運用上のモードであり機能的には追加モードおよび判定モードの機能を組み合わせたものに相当するので、上記3つの処理モードに含めて考えることにする。 なお、ここでいう検知ルールという用語は、一般的なIDSなどに設定されている不正パケットの特徴情報を示すシグネチャと同義であると考えて差しつかえない。
上述の3つの処理モードにおいて、以下のような処理が行われる。生成モードでは、予め記録されているアクセスログ(例えば、トラフィックデータベース5などに記録されているログデータ)に基づいて検知ルールが生成され、生成された検知ルールが検知ルールデータベース13に登録される。なお、検知ルールの生成に際しては、上述したSnortなどに記述されているルールセットなどを活用することができる。追加モードでは、パッシブホストセンサ11において観測されたアクセスログに基づいて生成される検知ルールが検知ルールデータベース13に追加される。判定モードでは、IDS14において観測されたアクセスの不正性が判定される。
なお、パッシブホストセンサ11は、一種のおとりシステムであり、故意に脆弱性を設けたホストセンサをおとりとしてネットワークに設置して不正アクセスの挙動を観測するためのものである。パッシブホストセンサ11を用いる理由は、「通常、このおとりシステムであるパッシブホストセンサ11をクライアントとして利用するユーザはなく、また、外部に対するアナウンスも行われていないので、パッシブホストセンサ11に対して行われる通信は全て何らかの悪意を持って行われる」、という考え方に基づいている。
また、パッシブホストセンサ11を侵入検知システムとして見た場合にはつぎのような利点がある。すなわち、従来は実際に被害が出るか、もしくはネットワーク上の通信ログを詳細に解析しなければ不正アクセスが行われたか否かの判断を行うことができなかったが、その判断を即座に行うことができる。さらに、不正アクセスの解析に先立ち、必要な不正アクセスログの分離作業も必要なくなる。
つぎに、上記3つの処理モードの各処理手順について各図面を参照しながら説明する。図2は、生成モード時の処理手順を示すフローチャートである。なお、同図に示すように、アクセスログなどのトラフィックデータに基づいて仮の検知ルールデータ21が生成されて記録されているものとする。例えば、仮の検知ルールデータ21には、任意のトラフィックデータに対して上述のSnortなどのルールセットを適用し、このルールセットに反応した複数のセッション(セッション群)などが記録されている。
図2のフローに戻り、まず、仮の検知ルールデータ21に記録されている仮の検知ルールデータが検知ルール生成装置12に読み込まれる(ステップS101)。検知ルール生成装置12は、不正アクセスを特徴づける検知ルールの自動生成処理(詳細は後述)を行う(ステップS102)。自動生成された検知ルールは、検知ルールデータベース13に送信され(ステップS103)、登録される(ステップS104)。また、この検知ルールはIDS14に送信され(ステップS105)、設定登録される(ステップS106)。ここで、自動生成された検知ルールを検知ルールデータベース13に加えてIDS14にも設定登録するようにしているが、この理由は不正アクセスの検出処理を迅速に行うためである。ただし、検出処理に対する時間的要求がさほど厳しくない場合には自動生成された検知ルールをIDS14に設定登録しなくてもよい。この場合には、不正アクセスの判定処理を行う際に、IDS14側から検知ルールデータベース13を参照するような処理方式を採用すればよい。
ところで、上記でいうセッションという概念は、「接続要求」があった時点から「終了通知」または「タイムアウト」になった時点までの期間を意味するものである。例えば、TCPの場合では、SYNパケット(接続要求パケット)からFIN(終了通知)、または、RST(切断要求パケット)送信されるまでか、あるいは通信が途絶えて(通信相手からのパケット送信が途絶えて)から設定したタイムアウトになった時点までの期間を意味する。
つぎに、追加モード時の処理手順について説明する。図3は、追加モード時の処理手順を示すフローチャートである。同図において、パッシブホストセンサ11は、ネットワーク1から自身に対して行われたアクセスを検出する(ステップS111)。上述のように、「パッシブホストセンサ11に対して行われる通信は全て何らかの悪意を持って行われる」ということを前提としているため、パッシブホストセンサ11は、ステップS111で検出されたアクセスを不正アクセスと判定し、不正アクセスがあったことをトラフィックデータベース5に対して通知(ステップS112)するとともに、当該アクセスにかかるアクセスログを検知ルール生成装置12に送信する(ステップS113)。
トラフィックデータベース5は、ネットワーク1で行われているアクセスデータを、常時、所定の間隔で記録しているが、パッシブホストセンサ11から不正アクセスが通知された場合には、通常トラフィックデータの更新処理を行う(ステップS114)。なお、ここでいう「通常トラフィックデータ」とは、不正アクセス以外のトラフィックデータのみで構成されたトラフィックデータのことを指しており、この更新処理では、トラフィックデータベース5に蓄積されているトラフィックデータ(通信ログデータ)の中から不正アクセスにかかるセッションのトラフィックデータが除去される。
一方、検知ルール生成装置12は、検知ルールの自動生成処理に先立ってトラフィックデータベース5から通常トラフィックデータを読み込み(ステップS115)、この通常トラフィックデータとパッシブホストセンサ11から送信されたアクセスログとに基づいて検知ルールの自動生成処理を行う(ステップS116)。なお、ステップS116の処理は、「生成モード時における検知ルールの自動生成処理」である図2のステップS102の処理と同等である。その後のステップS117〜S120処理、すなわち、検知ルール生成装置12で自動生成された検知ルールが検知ルールデータベース13や、IDS14に登録される処理については、生成モード時と同様な処理であり、その説明を省略する。
ところで、上記の処理では、通常トラフィックデータを生成する際には、パッシブホストセンサ11からの不正アクセスの通知に基づいて、常時記録しているトラフィックデータからパッシブホストセンサ11で観測されたセッション「のみ」を除去するようにしている。一方、このような除去処理とは異なるつぎのような処理を適用することも可能である。例えば、パッシブホストセンサで観測されたセッションだけでなく、同種と考えられる不正を含むセッションを除去するような処理を行う場合には、上記ステップS116の処理後に、不正アクセスを通知するとともに、生成された検知ルールセットをトラフィックデータベース5に対して通知することもできる。
なお、図3に示す追加モード時の通常トラフィックデータの読込処理(ステップS115)では、通常トラフィックデータの全体を読み込む処理と、ステップS114の処理にて更新された通常トラフィックデータの更新分のデータ(差分データ)だけを読み込む処理とが考えられ、いずれの処理を適用してもよい。ただし、通常トラフィックデータは膨大な量のデータ群であり、検知ルールの生成の都度、通常トラフィックデータを読み込むことは得策ではなく、後者のように通常トラフィックデータの差分データだけを読み込むようにすれば、処理負荷の低減化や、処理時間の短縮化が可能となる。
また、図2に示す生成モード時の処理手順の中では、頻出文字列リストの除外処理を行わない場合、あるいは予め検知ルール自動生成装置内に頻出文字列リストが保持されている場合を想定しているので、検知ルールの自動生成処理(ステップS102)において、通常トラフィックデータの読込処理を行ってはいない。しかしながら、生成モード時の処理手順においても、図3に示す追加モード時の処理手順のように、通常トラフィックデータを読み込んだ後に頻出文字列リストを生成するとともに、生成された頻出文字列を仮の検知ルールから除外する処理を行うようにしてもよい。
つぎに、判定モード時の処理手順について説明する。図4は、判定モード時の処理手順を示すフローチャートである。同図において、IDS14は、ネットワーク1で行われたアクセスを検出し(ステップS121)、検出したアクセスが自身に設定登録されている検知ルールに反応するか否かを判定し(ステップS122)、検知ルールに反応した場合(ステップS122,Yes)にはアラートを出力する(ステップS125)。一方、全ての検知ルールに反応しない場合(ステップS122,No)にはアラートを出力しない。なお、検知ルールに反応した場合(ステップS122,Yes)には、不正アクセスがあったことをトラフィックデータベース5に対して通知する(ステップS123)。トラフィックデータベース5は、IDS14からの通知に基づいて、通常トラフィックデータの更新処理を行う(ステップS124)。
つぎに、検知ルールの自動生成処理について説明する。図5は、図2に示すステップS102の処理や、図3に示すステップS116の処理に対応するものであり、自動生成処理の一例としてHTTP(Hyper Text Transfer Protocol)通信に適用した検知ルール自動生成処理の処理手順を示すフローチャートである。図5に示すフローには、同一の不正行為だけでなく、同種の不正行為をも含んだリクエストを検出する一方で、不正でないものを不正と判断するフォールスポジティブ(以下「F.P.」と標記)や、不正なものを不正でないと判断するフォールスネガティブ(以下「F.N.」と標記)を極力少なくするための処理が含まれている。なお、このフローは、好適な一例としてHTTP通信の場合について説明するものであり、必ずしもHTTPプロトコルに限定されるものではない。例えば、SMTPプロトコルや、FTPプロトコルなどのアプリケーション層の通信プロトコルにも適用できる。この場合、HTTPプロトコルのメッセージと同等の構造を有しているものに対して適用することができ、同等な構造がないものに対しては当該処理をスキップしてもよい。
ここで、図5のフローチャートの説明に際し、以降の説明の理解を容易にするため、HTTPリクエストメッセージの構造について説明する。図6は、HTTPリクエストメッセージの構造を示す図である。HTTPリクエストメッセージはRFC2616によって定義されており、同図に示すように、スタートライン、メッセージヘッダ部、メッセージボディの3つの部分から構成される。
スタートラインには、主としてリクエストの動作および対象となるファイルが記述され、空白を区切り文字として、メソッド、URI、HTTPバージョンの3つの部分に分けられる。URIには、“?”に続けてクエリ文字列が続く場合がある。クエリ文字列はサーバ側で実行されるプログラムにデータを渡すために用いられる。なお、サーバ側のプログラムによって形式は異なるが、一般には、変数名と値が“=”で結ばれ、それが複数個の“&”を区切りとして連結したものである場合が多い。一方、メッセージヘッダ部は、クライアント側の情報をサーバ側に伝えるために用いられる。なお、メッセージヘッダ部では、一つの行に記述されるメッセージヘッダが複数記述され、各メッセージヘッダは“:”で区切られた“フィールド名”と“フィールド値”から構成される。また、メッセージボディは、サーバ側で実行されるプログラムにデータ渡す際に用いられるものであり、上記URIのクエリ文字列と同様の形式である場合が多い。
つぎに、図5に戻り、検知ルール生成装置12で行われる検知ルールの自動生成処理について説明する。同図に示すように、この自動生成処理ステップは、ステップS201〜S204の第1の剪定処理ステップと、ステップS205〜S207の第2の剪定処理ステップとに分解することができる。ここで、第1の剪定処理ステップは、検知ルール自動生成の前処理に相当するものであり、処理対象の種類(通信プロトコル)や、処理対象を構成するメッセージフィールドの特性に応じて、後続の第2の剪定処理を行わせるか否かのフィルタリングを行うものである。一方、第2の剪定処理ステップは、検知ルール自動生成の本処理に相当するものであり、実際に検知ルールの自動生成処理を行うものである。ただし、後述のように、一旦、仮の検知ルールセットを生成し、生成された仮の検知ルールセットから所定の文字列を除外するようなフィルタリング処理を併用している。これらの第1、第2の剪定処理ステップを行うことで、単純に自動生成処理を行う場合に比べて、処理時間、処理負荷を大幅に低減させることができ、また、誤検知の確率を大幅に低下させることができるという利点がある。
図5において、検知ルール生成装置12は、パッシブホストセンサ11から送信された不正アクセスログ(HTTPリクエスト)に対して、その処理対象を特定する。例えば、“スタートライン”、“メッセージヘッダ”、“メッセージボディ”のいずれに該当するのかを特定する(ステップS201)。処理対象が“メッセージヘッダ”以外(ステップS202、No)ならば、第1の剪定処理ステップを抜けて第2の剪定処理ステップ(ステップS205)の処理に移行する。一方、処理対象が“メッセージヘッダ”の場合には(ステップS202、Yes)、メッセージヘッダを構成する“フィールド名”および“フィールド値”のそれぞれに対して、それぞれ異なる判定処理が行われる。まず、フィールド名に対しては、各セッションにおけるフィールド名の出現頻度と、ヘッダフィールドの種類(例えば、Cookieヘッダフィールド、If−Modified−Sinceヘッダフィールド)ごとに算出された所定のしきい値としての第1のしきい値との間で比較処理が行われる(ステップS203)。フィールド名の出現頻度が第1のしきい値以下の場合には(ステップS203、No)、第1の剪定処理ステップを抜けて第2の剪定処理ステップ(ステップS205)の処理に移行し、フィールド名の出現頻度が第1のしきい値よりも大きい場合には(ステップS203、Yes)、ステップS204に移行する。
また、フィールド値に対しては、各セッションにおいて、フィールド値を構成する文字列の任意の文字種間の遷移確率の平均値と、所定のしきい値としての第2のしきい値との間で比較処理が行われる(ステップS203)。このフィールド値の遷移確率の平均値が第2のしきい値より大きい場合には(ステップS204、No)、第2の剪定処理ステップに移行することなく自動生成処理を終了し、フィールド値の遷移確率の平均値が第2のしきい値以下の場合には(ステップS204、Yes)、第2の剪定処理ステップのステップS205に移行する。なお、上記の説明の中で、ステップS204で行われる平均処理は、相乗平均、相加平均などの任意の平均処理を適用することができる。また、上記の説明の中の「文字種間の遷移確率」については、以下にその詳細について補足する。
「文字種間の遷移確率」とは、メッセージヘッダなどに含まれる文字列の各文字の移り変わりを確率的に表したものである。通常、文字列は左から右へ向かって変化するという前提であり、文字列のある2文字に着目した場合、左側の文字種が観測された後、右側の文字種が出現する確率は、左側の文字種と、右側の文字種との関係で決定され、文字種ごとに異なる確率値をとる。この確率値を「文字種間の遷移確率」と定義している。例えば、日本語の場合、文末に「です。」という文字列が頻繁に出現するので、「で」という文字種のつぎに「す」という文字種に遷移する確率は高くなる。このように、ステップS203の処理では、メッセージヘッダに現れる文字を対象として、上記のように定義された文字種間の遷移確率を予め算出するようにしている。
つぎに、図5のフローチャートに戻って、第2の剪定処理ステップについて説明する。検知ルール生成装置12は、スタートライン、メッセージボディなどのリクエストデータや、第1の剪定処理ステップの処理でフィルタリングされたメッセージヘッダから不正アクセスを検出するための文字列を抽出した仮の検知ルールセットを生成し(ステップS205)、その一方で、通常トラフィックデータに基づいて頻出文字列リストを生成し、あるいは頻出文字列リストに新たな検知ルールを追加する(ステップS206)。検知ルール生成装置12は、検知ルールセットから頻出文字列リストの上位に位置する所定の頻出文字列を除去した検知ルール(真の検知ルール)を生成して出力する(ステップS207)。なお、この検知ルールが、検知ルールデータベース13に登録され、IDS14に反映されることは前述のとおりである。
このように、図5に示す第1の剪定処理ステップおよび第2の剪定処理ステップの処理に基づいて、同種の不正行為を含んだリクエストの検出を可能とする一方で、F.P.数やF.N.数を局限可能な検知ルールを自動生成することができる。なお、上述の説明の中で、ステップS205の仮の検知ルールセットの生成処理、ステップS206の頻出文字列の生成処理およびステップS207の頻出文字列による除外処理の各説明が不足しているので、さらに説明を加える。
図7および図8は、仮の検知ルールセットの生成処理について補足するための図であり、より詳細には、図7は、同種の不正アクセスを検出するための検知ルールの一例を示す説明図であり、図8は、プロトコル構文を考慮した階層的な分割手法の一例を示す説明図である。まず、図7において、上段部には、HTTPプロトコルのリクエストメッセージ(A)が示されている。中上段部には、リクエストメッセージ(A)から抽出された3つの検知ルール(a),(b),(c)が示されている。このような検知ルールが生成されている場合に、例えば、中下段部に示される不正なリクエストメッセージ(B),(C)が検出された場合を考える。このとき、検知ルール(a)ではリクエストメッセージ(B),(C)ともに検知することができず、検知ルール(c)ではリクエストメッセージ(B),(C)ともに検知することができるが、不正なアクセス以外にも反応する可能性がある。一方、検知ルール(b)ではリクエストメッセージ(B),(C)ともに検知することができ、また、不正なアクセス以外に反応する可能性は検知ルール(c)よりも小さい。このように、検知ルール(b)は不正な部分の特徴部分のみが適切に記述された例としての一例を示すものである。
また、図8には、HTTPプロトコルのスタートラインの記述例が示されている。例えば、スタートラインでは、空白によって、メソッド、URI、バージョンに分割し、URIは“?”によってファイル指定部およびクエリ文字列に分割し、さらに、ファイル指定部は、“/”によって分割する。なお、分割途中の段階を含め、各段階で生成された文字列の全てを、仮の検知ルールとして残しておくことが重要なポイントである。このような分割途中の段階で生成された文字列を含めることで、同種の不正アクセスを検出する確率を増大させることができる。なお、同図には示していないが、メッセージヘッダや、メッセージボディについても同様な手法で分割することができる。
分割に際して、他の考慮すべき事項として、生成した検知ルールが全く関係のない文字列や、当該文字列を部分的に含む文字列に偶然に一致することを避ける必要がある。このため、図8の下段部に示すように、一旦分割された文字列の両端に分割に用いた区切り文字を残すようにする。例えば、URI部分を分割した、“arch”という文字列が生成された場合には、分割に用いた文字“/”を両端に残し、“/arch/”を検知ルールとする。この処理により、“research”や、“architecture”などの文字列に偶然に一致するような状況が回避され、また、URIから生成された検知ルールがURI部分により限定的にマッチするようになり、F.P.数の増加防止に効果的である。
一方、図9は、頻出文字列の生成処理および仮の検知ルールに対する頻出文字列の除外処理を補足するための図であり、より詳細には、通常トラフィックデータの中に含まれる文字列の出現頻度の一例を示す図である。同図に示すグラフは横軸が文字列を出現頻度順に並べたときの順位であり、縦軸は当該順位文字列の総リクエスト数に対する出現頻度である。例えば、同図の例では、縦軸上の切片に';q=’という文字列の総リクエスト数に対する出現頻度である“246049”の値がプロットされ、以下、右隣の所定の位置に'image/’、'text/’、・・・のそれぞれの値がプロットされる。同図では、好適な例として、面積の80%を占めるまでの文字列を高頻度で出現する文字列(頻出文字列)として定義し、これらの文字列は不正の特徴を表していないものとして取り扱われる。すなわち、仮の検知ルールの中にこれらの文字列を含んでいる場合には、検知ルールから取り除かれる。
先に述べたように、通常トラヒックデータの大部分は正規の通信によって占められている。したがって、不正な通信に特有の文字列は通常トラヒックデータ中には高頻度では存在しないはずである。そこで、通常トラヒックデータ中にあるしきい値以上で高頻度に出現する文字列は、通常の通信にも含まれる一般的な語と判断して検知ルールから除くという処理を行うことで、同種の不正行為を含んだリクエストの検出を可能とし、その一方で、不正でないものを不正と判定するF.P.数を局限することができる。
なお、この実施の形態では、専用の装置を用いた構造について説明したが、本発明の適用対象は、必ずしも実施の形態に限定して解釈する必要はない。また、具体的構造についても、図1のブロック図に示されるものに限定して解釈する必要はなく、上記の手法を用いてネットワークの不正アクセスを検出できるものであればよい。
(実施の形態2)
実施の形態2にかかる不正アクセス検出装置の構成は、図1に示す実施の形態1の構成と同一、あるいは同等である。一方、この実施の形態の処理は、実施の形態1の処理と比較して以下のような特徴を有している。
(1) 実施の形態1の処理では、検知ルールに一つでも反応すればアラートを発生していたが、この実施の形態の判定処理では、反応した検知ルールに重要度を設定し、セッション単位での重要度の合計(以下「得点」と呼称)が所定値以上の場合にアラートを発生させる。
(2) 実施の形態1の処理では、許容F.P.数による制御という概念が存在しなかったが、この実施の形態では、許容F.P.数に基づいた制御を行う。
(3) 上記(2)に関連するが、設定された許容F.P.数と、検知ルールごとの得点の傾向とに基づいて決定される判定しきい値を設定し、当該判定しきい値よりも上位順位にある検知ルールに反応したときにアラートを発生させる。
実施の形態2にかかる不正アクセス検出装置の構成は、図1に示す実施の形態1の構成と同一、あるいは同等である。一方、この実施の形態の処理は、実施の形態1の処理と比較して以下のような特徴を有している。
(1) 実施の形態1の処理では、検知ルールに一つでも反応すればアラートを発生していたが、この実施の形態の判定処理では、反応した検知ルールに重要度を設定し、セッション単位での重要度の合計(以下「得点」と呼称)が所定値以上の場合にアラートを発生させる。
(2) 実施の形態1の処理では、許容F.P.数による制御という概念が存在しなかったが、この実施の形態では、許容F.P.数に基づいた制御を行う。
(3) 上記(2)に関連するが、設定された許容F.P.数と、検知ルールごとの得点の傾向とに基づいて決定される判定しきい値を設定し、当該判定しきい値よりも上位順位にある検知ルールに反応したときにアラートを発生させる。
つぎに、上述した実施の形態2の特徴に含まれる「重要度」および「判定しきい値」の概念について説明する。実施の形態1のところで説明したように、パッシブホストセンサ11が観測した1つの不正アクセスから複数個の検知ルールが生成される。これらの検知ルールには、リクエストメッセージ中の不正な部分を適切に記述しF.P.を発生させない理想的なものから、逆にF.P.を多く発生させるものまで、その性能にはばらつきがある。そこで、「重要度」という概念を導入し、検知ルールに対して、この「重要度」で重み付け処理を行うことを考える。具体的には、F.P.の発生具合によって検知ルールの性能を評価し、検知ルールが持つ情報量の観点から、F.P.の発生が少ない検知ルールの重要度は高く、逆にF.P.を多く発生させる検知ルールの重要度は低くなるように、それぞれの重要度に傾きを付けるように処理する。
ここで、重要度は次式のように定義する。
重要度=1/(過去のトラヒックデータに対する反応数) ・・・(1)
なお、過去のトラフィックデータとして上記で定義した通常トラフィックデータを用いるのが好適である。なぜなら、通常トラフィックデータ中には不正なトラフィック(セッション)の含まれる可能性が低いので、重要度の適正性を確保することができるからである。ところで、式(1)において、過去のトラヒックデータに対する反応数が0のときは、重要度の値が∞になってしまうので、適度な値を設定する必要がある。同式によれば、過去のトラヒックデータに対する反応数=1のときに重要度=1となるので、過去のトラヒックデータに対する反応数が0のときは、例えば、重要度=2に設定することができる。なお、過去のトラヒックデータに反応する場合より反応しない場合の方が重要度を高く設定するという意味では、過去のトラヒックデータに対する反応数が0のときに、1を超える重要度が設定されていればよい。
重要度=1/(過去のトラヒックデータに対する反応数) ・・・(1)
なお、過去のトラフィックデータとして上記で定義した通常トラフィックデータを用いるのが好適である。なぜなら、通常トラフィックデータ中には不正なトラフィック(セッション)の含まれる可能性が低いので、重要度の適正性を確保することができるからである。ところで、式(1)において、過去のトラヒックデータに対する反応数が0のときは、重要度の値が∞になってしまうので、適度な値を設定する必要がある。同式によれば、過去のトラヒックデータに対する反応数=1のときに重要度=1となるので、過去のトラヒックデータに対する反応数が0のときは、例えば、重要度=2に設定することができる。なお、過去のトラヒックデータに反応する場合より反応しない場合の方が重要度を高く設定するという意味では、過去のトラヒックデータに対する反応数が0のときに、1を超える重要度が設定されていればよい。
具体的には、検知ルールの1つを通常トラヒックデータに対して適用し、通常トラヒックデータに反応した数をフォールスポジティブと見なす。このようにして算出された検知ルールごとの反応数に基づき、反応数が少ない検知ルールは重要度を高く、反応数が多いものは重要度を低く設定するように処理する。なお、この重要度の設定処理は、予め実施しておくことができる。例えば、図2に示した検知ルールの自動生成処理(ステップS102)時に、仮の検知ルールデータ21内に含ませた通常トラフィックデータに基づいて重要度を設定すればよい。また、図3に示した検知ルールの自動生成処理(ステップS116)時に、通常トラフィックデータに追加されたセッションに対する各検知ルールの重要度の更新処理を行うようにすればよい。
つぎに、判定しきい値について説明する。この実施の形態では各検知ルールに上述のような重要度を導入したことにより、アラートを発生させる基準を、従来の、検知ルールが1つでも反応したセッションに対してアラートを発生させるという処理から、判定しきい値と呼ばれる基準を設定し、この判定しきい値を基準とした判定処理を導入する。
判定しきい値の設定方法としては、例えば、以下の手順に示される。
(1) 許容F.P.数をNに設定
(2) 通常トラフィックデータの各セッションに検知ルールを適用
(3) 各セッションごとに反応した検知ルールの重要度の合計(以下「得点」と呼称)を算出
(4) 得点を降順でソート
(5) 上位N番目のセッションとN+1番目の間の所定の得点に判定しきい値を設定
(1) 許容F.P.数をNに設定
(2) 通常トラフィックデータの各セッションに検知ルールを適用
(3) 各セッションごとに反応した検知ルールの重要度の合計(以下「得点」と呼称)を算出
(4) 得点を降順でソート
(5) 上位N番目のセッションとN+1番目の間の所定の得点に判定しきい値を設定
図10は、判定しきい値の概念をさらに詳細に説明するための図である。同図の例では、1日以上(通常は、複数日分)の通常トラフィックデータに対して検知ルールを適用し、各セッションごとに反応した検知ルールの得点を算出し、得点の降順に整列させたものである。同図の例では、1日当たりの許容F.P.数が5に設定されるので、得点が209のセッションSと、得点が134のセッションLとの間に判定しきい値を設定するためのラインが引かれ、134以上で209以下の任意の値に判定しきい値が設定される。なお、判定しきい値を209に近い値に設定した場合と、134に近い値に設定した場合とでは、前者の方が、後者に比較して、F.P.数が減少する一方で、未検知数が増加する傾向になる。したがって、これらの判定しきい値や、許容F.P.数の設定については、管理者の判断に委ねられる部分となる。
つぎに、上述のような「重要度」および「判定しきい値」の概念が導入された実施の形態2の不正アクセス検出装置の動作について説明する。図11は、この発明の実施の形態2にかかる不正アクセス検出装置の判定モード時の処理手順を示すフローチャートである。なお、生成モード時および追加モード時の処理手順は、それぞれ図2および図4に示す実施の形態1の処理手順に上述の重要度の設定処理手順を含めたものと同一または同等であるので、説明を省略する。
図11において、IDS14は、ネットワーク1で行われたアクセスを検出し、検出したアクセスが自身に設定登録されている検知ルールに反応するか否かの判定処理を全ての検知ルールに対して行う(ステップS301)。つぎに、IDS14は、検出したアクセスが1以上の検知ルール反応したか否かを判定し(ステップS302)、全ての検知ルールに反応しない場合(ステップS302,No)にはアラートを出力せずにこの判定モードの処理から抜け出るが、1以上の検知ルールに反応した場合(ステップS302,Yes)には、通常トラフィックデータに基づいて予め算出されている重要度を参照して、各セッションごとの得点の算出処理を行う(ステップS304)。IDS14は、各セッションの得点と、上述した手順などにより予め設定された判定しきい値とをそれぞれ比較し(ステップS305)、全てのセッションが判定しきい値未満の場合(ステップS305,No)にはアラートを出力せずにこの判定モードの処理から抜け出るが、判定しきい値以上の得点を有する1以上のセッションが存在する場合(ステップS305,Yes)にはアラート(要すれば当該セッション番号や、当セッションの内容も含む)を出力する(ステップS306)。なお、アラートが出力された場合には、不正アクセスがトラフィックデータベース5に通知され(ステップS307)、爾後の判定処理に備えて通常トラフィックデータが更新される(ステップS308)。
なお、上記の処理手順の中で、重要度の重み付けを行わず(すなわち、重要度は全て同一)、判定しきい値のみで判定してもよい。この場合、ステップS304の処理をバイパスすることができる。
(実施の形態2の装置の評価)
図12は、実施の形態2の不正アクセス検出装置の評価実験を行った結果を示す図である。図12において、横軸を設定した1ルールセットあたりの許容F.P.数とし、縦軸を検出率およびF.P.数とした。また、実線部分は重要度と判定しきい値の両者を導入した場合の波形であり、破線部分は判定しきい値のみを導入した場合の波形である。
図12は、実施の形態2の不正アクセス検出装置の評価実験を行った結果を示す図である。図12において、横軸を設定した1ルールセットあたりの許容F.P.数とし、縦軸を検出率およびF.P.数とした。また、実線部分は重要度と判定しきい値の両者を導入した場合の波形であり、破線部分は判定しきい値のみを導入した場合の波形である。
ここで、評価実験の環境を簡単に説明する。まず、100台規模のホストが接続するLANを出入りする1日分のトラヒックデータにSnortに付属のルールセットを適用し、反応したセッションを、パッシブホストセンサ11で観測された新種の不正アクセス手法と想定し、反応しなかったトラヒックデータを通常トラヒックデータと想定してこれらをテストデータとした。つぎに、不正なリクエストデータの1つをパッシブホストセンサ11で観測された未知の不正と想定し、本発明の処理手順に基づいて検知ルールを生成した。また、生成した検知ルールセットを不正アクセスのトラヒックに適用し、同種の不正リクエストを検知できるかどうかを調べた。さらに、通常トラヒックデータに適用にしたときのF.P.数についてもカウントした。
図12の結果に示されるように、重要度および判定しきい値を導入した場合、ならびに判定しきい値のみを導入した場合の両者ともに殆どの領域において95%前後の良好な検出率が維持されている。また、許容F.P.数を50から10程度に軽減させた場合であっても、検出率の低下がほとんどなく、良好な検出性能が維持され、実運用に十分耐えうる検出性能が得られている。
図13は、実運用上のデータを用いて評価実験を行った結果を示す図表であり、より詳細には、ある年月の21日〜28日までの8日間に観測されたHTTPリクエストに対する検知結果を示す図表である。図12の実験結果はSnortに付属の標準ルールセットを未知の不正と想定し、人為的に生成したテストデータを用いて行ったものであるが、図13に示す実験結果は、この実施の形態の不正アクセス検出装置を実稼働のネットワーク上に実際に設置して評価したものである。このネットワークには100台程度のホストが接続され、常時約30のホストが外部のwebサーバにアクセスしている。また、ネットワーク内にはwebサーバが10台稼働し、ネットワークの入口では全てのトラヒックが観測されダンプデータとして保存されている。なお、ネットワーク入口を出入りするトラヒックは、1日あたり約30,000セッションである。
図13に示すように、8日間の全てにおいて検知率が100%であり、良好な結果が得られている。また、フォールスポジティブ数も平均して1日あたり9個に抑えられており、実運用に耐えられる値を示している。この結果により、この実施の形態の不正アクセス検出装置の有用性が十分に証明されているものと考える。
以上のように、この発明にかかる不正アクセス検出装置は、シグネチャマッチング型のIDSをベースとしているものの、検知ルールが明らかでない新種や未知の不正アクセスに対処することのできるIDSとして有用である。
1,2,3 ネットワーク
4 インターネット
5 トラフィックデータベース
10 不正アクセス検出装置
11 パッシブホストセンサ
12 検知ルール生成装置
13 検知ルールデータベース
21 仮の検知ルールデータ
4 インターネット
5 トラフィックデータベース
10 不正アクセス検出装置
11 パッシブホストセンサ
12 検知ルール生成装置
13 検知ルールデータベース
21 仮の検知ルールデータ
Claims (27)
- ネットワークに対して行われる不正アクセスを検出する不正アクセス検出装置であって、
自己の存在を知らせることなく自己宛の通信を検出するパッシブホストセンサと、
不正アクセスを特徴づける検知ルールを生成して出力する検知ルール生成装置と、
観測されたアクセスの不正性を判定するシグネチャマッチング型のIDSと、
を備え、
前記検知ルール生成装置は、
前記パッシブホストセンサから通知されたアクセスログに基づいて前記検知ルールを自動生成する自動生成手段を備えたことを特徴とする不正アクセス検出装置。 - 前記自動生成手段は、前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定手段を備えたことを特徴とする請求項1に記載の不正アクセス検出装置。
- 前記自動生成手段は、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成手段と、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出手段と、を具備する第2の剪定手段を備えたことを特徴とする請求項1または2に記載の不正アクセス検出装置。
- 前記仮の検知ルール生成手段は、
前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする請求項3に記載の不正アクセス検出装置。 - 前記仮の検知ルール生成手段は、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする請求項3または4に記載の不正アクセス検出装置。
- 前記所定の抽出処理では、不正アクセスを含まないトラフィックデータである通常トラフィックデータに基づいて頻出文字列リストが生成され、前記仮の検知ルールから、当該頻出文字列リストの所定の順位以上に位置する頻出文字列が除去されることを特徴とする請求項1〜5のいずれか一つに記載の不正アクセス検出装置。
- 前記アクセスログのプロトコルがアプリケーション層の通信プロトコルであることを特徴とする請求項1〜6のいずれか一つに記載の不正アクセス検出装置。
- 前記第1の剪定手段は、
前記アプリケーション層の通信プロトコルで通信されたリクエストに含まれるメッセージヘッダを構成するフィールド名のセッションごとの出現頻度と、該フィールドの種類ごとに算出された所定の第1のしきい値と、に基づいて前記検知ルールの自動生成処理を行わせるか否かを判定することを特徴とする請求項7に記載の不正アクセス検出装置。 - 前記第1の剪定手段は、
前記アプリケーション層の通信プロトコルで通信されたリクエストに含まれるメッセージヘッダのフィールド値を構成する文字列の任意の文字種間の遷移確率の平均値と、所定の第2のしきい値とに基づいて前記検知ルールの自動生成処理を行わせるか否かを判定することを特徴とする請求項7に記載の不正アクセス検出装置。 - 観測された不正アクセスから生成される複数の検知ルールに対し、当該検知ルールの性能を表す重要度で重み付け処理した合計値である得点が所定値以上の場合にアラートを発生させることを特徴とする請求項1〜9のいずれか一つに記載の不正アクセス検出装置。
- 前記重要度は、過去のトラヒックデータに対する反応数に基づいて算出されることを特徴とする請求項10に記載の不正アクセス検出装置。
- 所定の許容F.P.数および検知ルールに反応したセッションごとの得点の傾向に基づいて判定しきい値が設定され、当該判定しきい値以上の得点を有する1以上のセッションが存在する場合に、アラートを発生させることを特徴とする請求項1〜11のいずれか一つに記載の不正アクセス検出装置。
- 観測された不正アクセスが新種の不正アクセスの場合に、当該観測された不正アクセスに基づいて検知ルールを生成し、生成された検知ルールを所定のデータベースに追加する追加モードと、
登録済の検知ルールに基づいて観測されたアクセスが不正か否かを判定する判定モードと、
を有することを特徴とする請求項1〜12のいずれか一つに記載の不正アクセス検出装置。 - 前記検知ルールを新規に構築するための生成モードを有することを特徴とする請求項1〜13のいずれか一つに記載の不正アクセス検出装置。
- 検知ルールの追加および判定処理を同時に行う追加・判定モードを有することを特徴とする請求項13または14に記載の不正アクセス検出装置。
- ネットワークに対して行われる不正アクセスを検出するための検知ルールを生成する検知ルール生成装置であって、
入力されたアクセスログに基づいて不正アクセスを特徴づける検知ルールを自動生成する自動生成手段を備えたことを特徴とする検知ルール生成装置。 - 前記自動生成手段は、前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定手段を備えたことを特徴とする請求項16に記載の検知ルール生成装置。
- 前記自動生成手段は、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成手段と、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出手段と、を具備する第2の剪定手段を備えたことを特徴とする請求項16または17に記載の検知ルール生成装置。
- 前記仮の検知ルール生成手段は、
前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする請求項18に記載の検知ルール生成装置。 - 前記仮の検知ルール生成手段は、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする請求項18または19に記載の検知ルール生成装置。
- 前記検知ルールを新規に構築するための生成モードを有することを特徴とする請求項16〜20のいずれか一つに記載の検知ルール生成装置。
- 仮の検知ルールデータから前記検知ルールが一括生成されることを特徴とする請求項21に記載の検知ルール生成装置。
- ネットワークに対して行われる不正アクセスを検出するための検知ルールを生成する検知ルール生成方法であって、
入力されたアクセスログに基づいて不正アクセスを特徴づける検知ルールを自動生成する自動生成ステップと、
前記アクセスログのプロトコルまたは当該アクセスログを構成するフィールドの特性に応じて検知ルールの自動生成処理を行わせるか否かを判定する第1の剪定ステップと、
を含むことを特徴とする検知ルール生成方法。 - 前記自動生成ステップは、前記アクセスログに基づいて仮の検知ルールを生成する仮の検知ルール生成ステップと、該仮の検知ルールに対して所定の抽出処理を施して真の検知ルールを生成する抽出ステップと、を具備する第2の剪定ステップを備えたことを特徴とする請求項23に記載の検知ルール生成方法。
- 前記仮の検知ルール生成ステップは、
前記アクセスログのメッセージ部を段階的に分割し、分割途中の段階を含め各段階で生成された文字列の全てを仮の検知ルールとして残しておくことを特徴とする請求項24に記載の検知ルール生成方法。 - 前記仮の検知ルール生成ステップは、分割途中の各段階で検知ルールとして生成される文字列に対し、当該文字列の両端に分割時に付加されていた区切り文字を残しておくことを特徴とする請求項24または25に記載の検知ルール生成方法。
- 請求項23〜26のいずれか一つに記載の方法を電子計算機に実行させることを特徴とする検知ルール生成プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004134668A JP2005316779A (ja) | 2004-04-28 | 2004-04-28 | 不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004134668A JP2005316779A (ja) | 2004-04-28 | 2004-04-28 | 不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005316779A true JP2005316779A (ja) | 2005-11-10 |
Family
ID=35444127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004134668A Pending JP2005316779A (ja) | 2004-04-28 | 2004-04-28 | 不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005316779A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010525459A (ja) * | 2007-04-20 | 2010-07-22 | ニューラルアイキュー,インコーポレーテッド | コンピュータネットワークへの不正侵入を解析するシステムおよび方法 |
US8656493B2 (en) | 2006-05-22 | 2014-02-18 | Neuraliq, Inc. | Decoy network technology with automatic signature generation for intrusion detection and intrusion prevention systems |
WO2014103115A1 (ja) * | 2012-12-26 | 2014-07-03 | 三菱電機株式会社 | 不正侵入検知装置、不正侵入検知方法、不正侵入検知プログラム及び記録媒体 |
US8789189B2 (en) | 2010-06-24 | 2014-07-22 | NeurallQ, Inc. | System and method for sampling forensic data of unauthorized activities using executability states |
US9106697B2 (en) | 2010-06-24 | 2015-08-11 | NeurallQ, Inc. | System and method for identifying unauthorized activities on a computer system using a data structure model |
WO2015141640A1 (ja) * | 2014-03-19 | 2015-09-24 | 日本電信電話株式会社 | 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム |
JP2018093331A (ja) * | 2016-12-01 | 2018-06-14 | 住友電気工業株式会社 | 検知装置、検知方法および検知プログラム |
US10104099B2 (en) | 2015-01-07 | 2018-10-16 | CounterTack, Inc. | System and method for monitoring a computer system using machine interpretable code |
US10282542B2 (en) | 2013-10-24 | 2019-05-07 | Mitsubishi Electric Corporation | Information processing apparatus, information processing method, and computer readable medium |
CN113454623A (zh) * | 2019-02-21 | 2021-09-28 | 三菱电机株式会社 | 检测规则组调整装置和检测规则组调整程序 |
WO2022113895A1 (ja) * | 2020-11-30 | 2022-06-02 | 三菱電機株式会社 | 開発側セキュリティ分析支援装置、運用側セキュリティ分析支援装置、およびセキュリティ分析支援システム |
-
2004
- 2004-04-28 JP JP2004134668A patent/JP2005316779A/ja active Pending
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8656493B2 (en) | 2006-05-22 | 2014-02-18 | Neuraliq, Inc. | Decoy network technology with automatic signature generation for intrusion detection and intrusion prevention systems |
US9866584B2 (en) | 2006-05-22 | 2018-01-09 | CounterTack, Inc. | System and method for analyzing unauthorized intrusion into a computer network |
JP2010525459A (ja) * | 2007-04-20 | 2010-07-22 | ニューラルアイキュー,インコーポレーテッド | コンピュータネットワークへの不正侵入を解析するシステムおよび方法 |
JP2013240114A (ja) * | 2007-04-20 | 2013-11-28 | Neuraliq Inc | コンピュータネットワークへの不正侵入を解析するシステムおよび方法 |
US8789189B2 (en) | 2010-06-24 | 2014-07-22 | NeurallQ, Inc. | System and method for sampling forensic data of unauthorized activities using executability states |
US9954872B2 (en) | 2010-06-24 | 2018-04-24 | Countertack Inc. | System and method for identifying unauthorized activities on a computer system using a data structure model |
US9106697B2 (en) | 2010-06-24 | 2015-08-11 | NeurallQ, Inc. | System and method for identifying unauthorized activities on a computer system using a data structure model |
WO2014103115A1 (ja) * | 2012-12-26 | 2014-07-03 | 三菱電機株式会社 | 不正侵入検知装置、不正侵入検知方法、不正侵入検知プログラム及び記録媒体 |
US10282542B2 (en) | 2013-10-24 | 2019-05-07 | Mitsubishi Electric Corporation | Information processing apparatus, information processing method, and computer readable medium |
US10257213B2 (en) | 2014-03-19 | 2019-04-09 | Nippon Telegraph And Telephone Corporation | Extraction criterion determination method, communication monitoring system, extraction criterion determination apparatus and extraction criterion determination program |
WO2015141640A1 (ja) * | 2014-03-19 | 2015-09-24 | 日本電信電話株式会社 | 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム |
JPWO2015141640A1 (ja) * | 2014-03-19 | 2017-04-13 | 日本電信電話株式会社 | 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム |
US10104099B2 (en) | 2015-01-07 | 2018-10-16 | CounterTack, Inc. | System and method for monitoring a computer system using machine interpretable code |
JP2018093331A (ja) * | 2016-12-01 | 2018-06-14 | 住友電気工業株式会社 | 検知装置、検知方法および検知プログラム |
US11392683B2 (en) | 2016-12-01 | 2022-07-19 | Sumitomo Electric Industries, Ltd. | Detection device, detection method and recording medium |
CN113454623A (zh) * | 2019-02-21 | 2021-09-28 | 三菱电机株式会社 | 检测规则组调整装置和检测规则组调整程序 |
WO2022113895A1 (ja) * | 2020-11-30 | 2022-06-02 | 三菱電機株式会社 | 開発側セキュリティ分析支援装置、運用側セキュリティ分析支援装置、およびセキュリティ分析支援システム |
JP7403686B2 (ja) | 2020-11-30 | 2023-12-22 | 三菱電機株式会社 | 開発側セキュリティ分析支援装置およびセキュリティ分析支援システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109951500B (zh) | 网络攻击检测方法及装置 | |
US9369479B2 (en) | Detection of malware beaconing activities | |
US20200322362A1 (en) | Deep-learning-based intrusion detection method, system and computer program for web applications | |
US8805995B1 (en) | Capturing data relating to a threat | |
CN109194680B (zh) | 一种网络攻击识别方法、装置及设备 | |
RU2589310C2 (ru) | Система и способ расчета интервала повторного определения категорий сетевого ресурса | |
US20160226893A1 (en) | Methods for optimizing an automated determination in real-time of a risk rating of cyber-attack and devices thereof | |
US8561179B2 (en) | Method for identifying undesirable features among computing nodes | |
CN103918222A (zh) | 用于检测拒绝服务攻击的系统和方法 | |
JP2005136526A (ja) | 不正アクセス検知装置、不正アクセス検知方法および不正アクセス検知プログラム | |
JP6401424B2 (ja) | ログ分析装置、ログ分析方法およびログ分析プログラム | |
CN110598404A (zh) | 安全风险监控方法、监控装置、服务器和存储介质 | |
CN110677438A (zh) | 一种攻击链构建方法、装置、设备、介质 | |
CN111786966A (zh) | 浏览网页的方法和装置 | |
JP6174520B2 (ja) | 悪性通信パターン検知装置、悪性通信パターン検知方法、および、悪性通信パターン検知プログラム | |
KR102280845B1 (ko) | 네트워크 내의 비정상 행위 탐지 방법 및 그 장치 | |
US20170155683A1 (en) | Remedial action for release of threat data | |
CN112532631A (zh) | 一种设备安全风险评估方法、装置、设备及介质 | |
JP2005316779A (ja) | 不正アクセス検出装置ならびに検知ルール生成装置、検知ルール生成方法および検知ルール生成プログラム | |
JP2008052637A (ja) | 異常検知装置、異常検知プログラム、および記録媒体 | |
EP3331210B1 (en) | Apparatus, method, and non-transitory computer-readable storage medium for network attack pattern determination | |
JPWO2018143097A1 (ja) | 判定装置、判定方法、および、判定プログラム | |
RU2481633C2 (ru) | Система и способ автоматического расследования инцидентов безопасности | |
CN112671736B (zh) | 一种攻击流量确定方法、装置、设备及存储介质 | |
KR102347525B1 (ko) | 악성 트래픽 탐지 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20060915 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060915 |