JP4371981B2 - Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program - Google Patents

Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program Download PDF

Info

Publication number
JP4371981B2
JP4371981B2 JP2004321078A JP2004321078A JP4371981B2 JP 4371981 B2 JP4371981 B2 JP 4371981B2 JP 2004321078 A JP2004321078 A JP 2004321078A JP 2004321078 A JP2004321078 A JP 2004321078A JP 4371981 B2 JP4371981 B2 JP 4371981B2
Authority
JP
Japan
Prior art keywords
statistical information
data
access
cgi
abnormal
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.)
Expired - Fee Related
Application number
JP2004321078A
Other languages
Japanese (ja)
Other versions
JP2006133992A (en
Inventor
徹 今野
友也 田中
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2004321078A priority Critical patent/JP4371981B2/en
Publication of JP2006133992A publication Critical patent/JP2006133992A/en
Application granted granted Critical
Publication of JP4371981B2 publication Critical patent/JP4371981B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信ネットワークから入力するアクセスデータにおいて、異常データを検知する異常データ検出装置、異常データ検出方法及び異常データ検出プログラムに関する。   The present invention relates to an abnormal data detection device, an abnormal data detection method, and an abnormal data detection program for detecting abnormal data in access data input from a communication network.

一般的に、インターネット等の通信ネットワークにおける異常データの検出として、ファイアウォール等を介して所定のIPアドレス及びポート番号から受信したパケットについては通過させない方法が一般的である。しかし、このファイアウォールで防ぐことのできない攻撃は多様であるが、その中で、ウェブサーバ上のセキュリティーホール、即ちオペレーティングシステムやブラウザなどのソフトウェアのバグや脆弱性を狙った攻撃も多い。例えば、HTTPリクエストに特定の文字列が含まれていると、そのHTTPリクエストが解読され実行されることにより、ウェブサーバ上で稼働しているCGI(Common gateway Interface)等のソフトウェアが、バッファオーバーフローなどにより予期せぬ動作を引き起こすといったことが挙げられる。この様なウェブサーバ上のソフトウェアの脆弱性を狙った攻撃に対応するために、クライアントからウェブサーバに送信されるHTTPリクエストをアプリケーション層で中継及び解析し、予め既知の攻撃の特徴を格納した攻撃パターンファイルと比較し、マッチした場合にセッション中継を遮断することにより、ウェブサーバを防御する方法がある(例えば、特許文献1)。   In general, as a method for detecting abnormal data in a communication network such as the Internet, a method in which a packet received from a predetermined IP address and port number through a firewall or the like is not allowed to pass. However, there are a variety of attacks that cannot be prevented by this firewall. Among them, there are many attacks aimed at security holes on web servers, that is, bugs and vulnerabilities in software such as operating systems and browsers. For example, if a specific character string is included in an HTTP request, the HTTP request is decrypted and executed, so that software such as CGI (Common Gateway Interface) running on the web server may cause a buffer overflow, etc. Cause unexpected behavior. In order to respond to such attacks that target software vulnerabilities on the web server, an HTTP request sent from the client to the web server is relayed and analyzed in the application layer, and the known attack characteristics are stored in advance. There is a method of defending a web server by blocking session relay when compared with a pattern file and matching (for example, Patent Document 1).

しかし上述した方法においては、攻撃パターンファイルに格納されていない未知の攻撃からはウェブサーバを防御することができない問題点があった。   However, the above-described method has a problem that the web server cannot be protected from an unknown attack that is not stored in the attack pattern file.

そこで、ウェブサーバなどインターネットに接続された装置送信されたアクセスデータにおいて、異常データを検知する技術分野において、アクセスデータに含まれる値の範囲や文字種別などを分析し、その平均値や分散を求め、統計的に異常とされる閾値を計算する。更にその閾値に基づいて、あるアクセスデータが統計的に正常であるか異常であるかを判断することにより、そのアクセスデータが異常データに関わるものであるか否かを検出する技術を確立することが求められている。この技術は、予め与えられた既知の異常パターン或いは正常パターンからだけでは検出できない、未知の異常データを検出できることが期待されている(例えば、非特許文献1)。   Therefore, in the technical field for detecting abnormal data in access data sent to devices connected to the Internet, such as web servers, the range of values and character types included in the access data are analyzed, and the average value and variance are obtained. Calculate a threshold that is statistically abnormal. Furthermore, based on the threshold value, by establishing whether a certain access data is statistically normal or abnormal, thereby establishing a technique for detecting whether the access data is related to abnormal data. Is required. This technique is expected to be able to detect unknown abnormality data that cannot be detected only from a known abnormality pattern or a normal pattern given in advance (for example, Non-Patent Document 1).

しかし上述した技術においては、単純に統計的に計算された閾値のみに依存する場合、未知の異常データが真に異常データであるか否かの判断能力が必ずしも十分ではない。例えば、特に閾値の近傍に評価されるアクセスデータについては、判断の正確性が弱くなる傾向があり、その閾値の設定が適切でないと、具体的には、正常であるものを異常として検出してしまう後検出、又は異常なものを検出できない不検出を引き起こす一員となる。   However, in the above-described technique, when only relying on a statistically calculated threshold value, the ability to determine whether unknown abnormal data is truly abnormal data is not always sufficient. For example, especially for access data evaluated in the vicinity of a threshold value, the accuracy of the judgment tends to be weak. If the threshold value is not set appropriately, specifically, normal data is detected as abnormal. It becomes a member that causes non-detection after detection or abnormal detection that cannot detect abnormal things.

未知の異常データの誤検出と不検出を削除するためには、管理者や専門家の知識に基づく判断によって、管理端末において正常であるか異常であるかの閾値を補正することが考えられ得る。しかしこの方法においては、インターネットに接続された機器に対するアクセスは膨大かつ多様であり、管理端末へ出力される警報ログの量が多すぎると、管理者の手に負えず、結局放置されてしまう問題が生じる。   In order to delete false detection and non-detection of unknown abnormal data, it can be considered to correct the threshold value of whether it is normal or abnormal in the management terminal by judgment based on the knowledge of the administrator or expert . However, in this method, access to devices connected to the Internet is enormous and diverse, and if the amount of alarm log output to the management terminal is too large, it will not be handled by the administrator and will eventually be left unattended. Occurs.

これを解決するため、発明者らは管理端末において運用中に閾値を適切に補正する方法を発明した(例えば、特許文献2)。特許文献2に記載の方法においては、閾値よりわずかに異常と評価される、閾値外の予め定められた閾値近傍に属するアクセスデータについては誤検出の可能性があるものとして、誤検出補正管理部へ受け渡し、閾値よりわずかに正常とされる、閾値内の予め定めた閾値近傍に属するアクセスデータについては不検出の可能性があるものとして、不検出補正管理部へ受け渡す。
特開2002−063084号公報 特願2003−318796号公報 ISSN 0919−6072 情報処理学会研究報告 情処研報 Vol.2003,No.74 2003年7月17日〜18日発行 発行人 社団法人 情報処理学会 p.91〜96 「HTTPリクエスト解析による未知攻撃防御システム」 今野 徹、楯岡 正道
In order to solve this, the inventors have invented a method of appropriately correcting the threshold during operation in the management terminal (for example, Patent Document 2). In the method described in Patent Document 2, it is assumed that there is a possibility of erroneous detection of access data belonging to a predetermined threshold value outside the threshold value that is evaluated as slightly abnormal than the threshold value. The access data belonging to the vicinity of the predetermined threshold value within the threshold value, which is slightly normal than the threshold value, is transferred to the non-detection correction management unit on the assumption that there is a possibility of non-detection.
JP 2002-063084 A Japanese Patent Application No. 2003-318796 ISSN 0919-6072 Information Processing Society of Japan Research Report 2003, No. 74 July 17-18, 2003 Issued by Information Processing Society of Japan p. 91-96 "Unknown attack defense system based on HTTP request analysis" Toru Konno, Masamichi Sasaoka

しかし、特許文献2に記載の方法においては、管理者の存在を前提として、管理端末により補正されるので、管理者に負担が強いられる問題がある。更に、運用中にデータの異常性の判断基準、例えば閾値を変更するための手段がなかった。従って、運用時間が長期に及ぶ場合、アクセスデータの傾向の変化に対し、適切に追随するためには管理端末に置いて常に監視をするなどの対策を採る必要があり、負担やコストがかかる問題があった。   However, in the method described in Patent Document 2, since the correction is performed by the management terminal on the premise of the presence of the manager, there is a problem that a burden is imposed on the manager. Furthermore, there has been no means for changing the criteria for judging data anomalies during operation, such as a threshold value. Therefore, when the operation time is long, it is necessary to take measures such as always monitoring on the management terminal in order to appropriately follow the change in the trend of access data, which is a burden and cost. was there.

従って本発明の目的は、予め記憶されていないアクセスデータに対しても、正常なアクセスデータであるか否かを判断することができる異常データ検出装置及び異常データ検出プログラムを提供することである。   Accordingly, an object of the present invention is to provide an abnormal data detection apparatus and an abnormal data detection program that can determine whether or not access data that is not stored in advance is normal access data.

上記課題を解決するために、本発明の第1の特徴は、接続されるネットワークセグメントから入力されるアクセスデータに含まれるパラメータ値に基づいて異常データの特徴を示す特徴量を算出するデータ解析手段と、データ解析手段で算出された特徴量を蓄積して記憶する特徴量蓄積手段と、特徴量の平均値、標準偏差、アクセス回数を含む統計情報を記憶する統計情報記憶手段と、特徴量蓄積手段に記憶された特徴量の平均値と標準偏差とアクセス回数とを含む統計情報を生成し、統計情報記憶手段に記憶された統計情報を更新する統計処理実行手段と、統計情報記憶手段を参照して前記入力されたアクセスデータに関する過去のアクセス回数を判定するアクセス判定手段と、アクセス判定手段で判定された結果に基づいて、データ解析手段とで算出された特徴量と統計情報記憶手段に記憶される統計情報とを比較して、入力されたアクセスデータが正常であるか否かを判定する統計的異常判定手段とを備える異常データ検出装置である。 In order to solve the above-described problem, a first feature of the present invention is a data analysis unit that calculates a feature amount indicating a feature of abnormal data based on a parameter value included in access data input from a connected network segment. A feature amount storage unit that stores and stores the feature amount calculated by the data analysis unit, a statistical information storage unit that stores statistical information including the average value, standard deviation, and number of accesses of the feature amount, and a feature amount storage Statistical processing execution means for generating statistical information including the average value, standard deviation, and number of accesses stored in the means, and updating the statistical information stored in the statistical information storage means, and refer to the statistical information storage means An access determination means for determining the number of past accesses related to the input access data, and data analysis based on the result determined by the access determination means The abnormal data comprises statistical anomaly determining means for comparing the feature amount calculated in the step and the statistical information stored in the statistical information storage means to determine whether the input access data is normal or not. It is a detection device.

この様な本発明によれば、予め記憶されていないアクセスデータに対しても、正常なアクセスデータであるか否かを判断することができる。   According to the present invention as described above, it is possible to determine whether access data that is not stored in advance is normal access data.

本発明によれば、予め記憶されていないアクセスデータに対しても、正常なアクセスデータであるか否かを判断する異常データ検出装置及び異常データ検出プログラムを提供することができる。   According to the present invention, it is possible to provide an abnormal data detection apparatus and an abnormal data detection program for determining whether or not access data that is not stored in advance is normal access data.

次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。   Next, embodiments of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals.

[第1の実施の形態]
[異常データ検出装置]
図1を参照して、本発明の第1の実施の形態に係る異常データ検出装置1を説明する。
[First Embodiment]
[Abnormal data detection device]
With reference to FIG. 1, an abnormal data detection apparatus 1 according to a first embodiment of the present invention will be described.

本発明の第1の実施の形態に係る異常データ検出装置1は、接続されるネットワークを介して入力される既知の異常データを検出するとともに、未知の異常データを検出する。異常データ検出装置1は、図1に示すように、データ解析部11、アクセス判定部12、統計的異常判定部13、統計処理実行部14、統計情報テーブル15および特徴量蓄積テーブル16を有している。   The abnormal data detection apparatus 1 according to the first embodiment of the present invention detects known abnormal data input via a connected network and detects unknown abnormal data. As shown in FIG. 1, the abnormal data detection apparatus 1 includes a data analysis unit 11, an access determination unit 12, a statistical abnormality determination unit 13, a statistical processing execution unit 14, a statistical information table 15, and a feature amount accumulation table 16. ing.

具体的には、異常データ検出装置1は、インターネットやイントラネットなどの第1のネットワークセグメント2から入力した図示しない第1のネットワークセグメント2に接続されたクライアントコンピュータから出力された第2のネットワークセグメント3に接続された図示しないサーバ(Webサーバ)に対するアクセスデータが正常なアクセスデータである場合、入力したアクセスデータを第2のネットワークセグメント3に通過させる。一方、異常データ検出装置1は、入力したアクセスデータが異常なアクセスデータである場合、アクセスデータを第2のネットワークセグメント3に通過させることなく破棄するか、アクセスデータに異常なアクセスデータである可能性がある旨の付加情報を添付し、第2のネットワークセグメント3へ通過させる。   Specifically, the abnormal data detection apparatus 1 includes a second network segment 3 output from a client computer connected to the first network segment 2 (not shown) input from the first network segment 2 such as the Internet or an intranet. When the access data for a server (Web server) (not shown) connected to is normal access data, the input access data is passed through the second network segment 3. On the other hand, if the input access data is abnormal access data, the abnormal data detection device 1 discards the access data without passing it through the second network segment 3, or the access data is abnormal access data. Additional information indicating that there is a property is attached and passed to the second network segment 3.

ここで、アクセスデータは、例えばHTTPリクエスト、SMTPリクエストなどの通信プロトコルに基づく情報である。異常データ検出装置1は、例えば一般的なコンピュータに異常データ検出プログラムなどのソフトウェアプログラムがインストールされ、そのソフトウェアプログラムが中央処理制御装置において実行されることにより実現される。   Here, the access data is information based on a communication protocol such as an HTTP request or an SMTP request. The abnormal data detection apparatus 1 is realized, for example, by installing a software program such as an abnormal data detection program in a general computer and executing the software program in the central processing control apparatus.

図2に示すように、本発明の第1の実施の形態に係る異常データ検出装置1は、中央処理制御装置101、ROM(Read Only Memory)102、RAM(Random Access Memory)103及び入出力インタフェース109が、バス110を介して接続されている。入出力インタフェース109には、入力装置104、表示装置105、通信制御装置106、記憶装置107及びリムーバブルディスク108が接続されている。   As shown in FIG. 2, the abnormal data detection apparatus 1 according to the first embodiment of the present invention includes a central processing control device 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and an input / output interface. 109 are connected via the bus 110. An input device 104, a display device 105, a communication control device 106, a storage device 107, and a removable disk 108 are connected to the input / output interface 109.

中央処理制御装置101は、入力装置104からの入力信号に基づいてROM102から異常データ検出装置1を起動するためのブートプログラムを読み出して実行し、更に記憶装置107に記憶されたオペレーティングシステムを読み出す。更に中央処理制御装置101は、入力装置104や通信制御装置106などの入力信号に基づいて、各種装置の制御を行ったり、RAM103や記憶装置107などに記憶されたプログラム及びデータを読み出してRAM103にロードするとともに、RAM103から読み出されたプログラムのコマンドに基づいて、データの計算又は加工など、後述する一連の処理を実現する処理装置である。   The central processing control device 101 reads out and executes a boot program for starting up the abnormal data detection device 1 from the ROM 102 based on an input signal from the input device 104, and further reads out an operating system stored in the storage device 107. Further, the central processing control device 101 controls various devices based on input signals from the input device 104, the communication control device 106, etc., and reads programs and data stored in the RAM 103, the storage device 107, etc. into the RAM 103. A processing device that loads and implements a series of processes to be described later, such as data calculation or processing, based on a program command read from the RAM 103.

入力装置104は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、入出力インタフェース109及びバス110を介して中央処理制御装置101に送信される。表示装置105は、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどであり、中央処理制御装置101からバス110及び入出力インタフェース109を介して表示装置105において表示させる出力信号を受信し、例えば中央処理制御装置101の処理結果などを表示する装置である。通信制御装置106は、LANカードやモデムなどの装置であり、異常データ検出装置1をインターネットやLANなどの通信ネットワークに接続する装置である。通信制御装置106を介して通信ネットワークと送受信したデータは入力信号又は出力信号として、入出力インタフェース及びバス110を介して中央処理制御装置101に送受信される。   The input device 104 includes input devices such as a keyboard and a mouse through which an operator inputs various operations. The input device 104 generates an input signal based on the operation of the operator, and inputs via the input / output interface 109 and the bus 110. It is transmitted to the central processing control apparatus 101. The display device 105 is a CRT (Cathode Ray Tube) display, a liquid crystal display, or the like. The display device 105 receives an output signal to be displayed on the display device 105 from the central processing control device 101 via the bus 110 and the input / output interface 109. It is a device that displays the processing result of the control device 101 and the like. The communication control device 106 is a device such as a LAN card or a modem, and is a device that connects the abnormal data detection device 1 to a communication network such as the Internet or a LAN. Data transmitted / received to / from the communication network via the communication control device 106 is transmitted / received to / from the central processing control device 101 via the input / output interface and bus 110 as an input signal or an output signal.

記憶装置107は磁気ディスク装置であって、中央処理制御装置101で実行されるプログラムやデータが記憶されている。リムーバブルディスク108は、光ディスクやフレキシブルディスクのことであり、ディスクドライブによって読み書きされた信号は、入出力インタフェース109及びバス110を介して中央処理制御装置101に送受信される。   The storage device 107 is a magnetic disk device, and stores programs and data executed by the central processing control device 101. The removable disk 108 is an optical disk or a flexible disk, and signals read / written by the disk drive are transmitted / received to / from the central processing control apparatus 101 via the input / output interface 109 and the bus 110.

本発明の第1の実施の形態に係る異常データ検出装置1の記憶装置107には、異常データ検出プログラムが記憶されるとともに、統計情報テーブル15および特徴量蓄積テーブル16が記憶される。また、異常データ検出プログラムが異常データ検出装置1の中央処理制御装置101に読み込まれ実行されることによって、データ解析部11、アクセス判定部12、統計的異常判定部13および統計処理実行部14が異常データ検出装置1に実装される。   In the storage device 107 of the abnormal data detection apparatus 1 according to the first embodiment of the present invention, an abnormal data detection program is stored, and a statistical information table 15 and a feature amount accumulation table 16 are stored. Further, when the abnormal data detection program is read and executed by the central processing control device 101 of the abnormal data detection device 1, the data analysis unit 11, the access determination unit 12, the statistical abnormality determination unit 13, and the statistical processing execution unit 14 are executed. It is mounted on the abnormal data detection device 1.

データ解析部11は、接続される第1のネットワークセグメント2からアクセスデータが入力されると、入力されたアクセスデータに含まれるパラメータ値に基づいて、パラメータの識別子毎に、異常データの特徴を示す特徴量を算出する。また、データ解析部11は算出した特徴量をアクセスデータとともに出力する。   When the access data is input from the connected first network segment 2, the data analysis unit 11 indicates the characteristics of the abnormal data for each parameter identifier based on the parameter value included in the input access data. The feature amount is calculated. Further, the data analysis unit 11 outputs the calculated feature value together with the access data.

例えばデータ解析部11は、図3に示すようなHTTPリクエストのアクセスデータを解析してパラメータ値の特徴量を算出する。図3に示すアクセスデータを入力して解析する場合、データ解析部11は、CGI変数名1である変数「P」のパラメータ値として数値である「123」を切り出す。また、CGI変数名2である変数「Q」のパラメータ値としてASCII文字である「user」、CGI変数名3である変数「R」のパラメータ値として数値である「456」を切り出す。   For example, the data analysis unit 11 analyzes the access data of the HTTP request as shown in FIG. 3 and calculates the feature value of the parameter value. When the access data illustrated in FIG. 3 is input and analyzed, the data analysis unit 11 cuts out a numerical value “123” as the parameter value of the variable “P” that is the CGI variable name 1. Further, “user” that is an ASCII character is extracted as the parameter value of the variable “Q” that is the CGI variable name 2, and “456” that is a numerical value is extracted as the parameter value of the variable “R” that is the CGI variable name 3.

各CGI変数名の値を切り出すと、データ解析部11は、切り出した値に基づいて特徴量を算出する。   When the value of each CGI variable name is cut out, the data analysis unit 11 calculates a feature amount based on the cut out value.

アクセス判定部12は、統計情報テーブル15を読み出して、入力されたアクセスデータに含まれるパラメータの識別子と関連付けられる過去のアクセス回数を判定する。   The access determination unit 12 reads the statistical information table 15 and determines the number of past accesses associated with the parameter identifier included in the input access data.

ここでは、CGI名とCGI変数名との組み合わせをパラメータの識別子とする。アクセス判定部12は、具体的には、データ解析部11から出力されたアクセスデータ及び特徴量を入力すると、統計情報テーブル15に判定の対象とするアクセスデータに含まれるパラメータの識別子であるCGI変数及びCGI名の組み合わせに関連付けられる統計情報のアクセス回数を参照し、過去にこのパラメータ識別子に対してアクセスが存在するか否かを判定する。また、アクセス判定部12は、アクセスが存在するか否かの判定結果をアクセスデータ及び特徴量とともに出力する。   Here, a combination of a CGI name and a CGI variable name is used as a parameter identifier. Specifically, when the access determination unit 12 inputs the access data and the feature amount output from the data analysis unit 11, the CGI variable that is an identifier of a parameter included in the access data to be determined in the statistical information table 15 And the access count of the statistical information associated with the combination of the CGI name is referred to, and it is determined whether or not the parameter identifier has been accessed in the past. In addition, the access determination unit 12 outputs a determination result as to whether or not there is an access together with access data and a feature amount.

統計的異常判定部13は、アクセス判定部12で判定された結果に基づいて、データ解析部11で算出された特徴量と統計情報テーブル15に記憶される統計情報とを比較して、入力されたアクセスデータが正常であるか否かを判定する。   The statistical abnormality determination unit 13 compares the feature amount calculated by the data analysis unit 11 with the statistical information stored in the statistical information table 15 based on the result determined by the access determination unit 12 and is input. It is determined whether or not the access data is normal.

まず、統計異常判定部13は、アクセス判定部12からアクセスデータ、特徴量及び判定結果を入力すると、アクセス判定部12で過去にこのパラメータ識別子に対してアクセスが存在しないと判定されたとき、データ解析部11で算出された特徴量が「0」である場合にこのパラメータ値を正常と判断し、特徴量が「0」でない場合にこのパラメータ値を異常と判断する。 First, statistical abnormality determination unit 13, the access data from the access determination unit 12, entering the characteristic amount and the determination result, when it is determined that the access is not present for this parameter identifier in the past by the access judging unit 12, the data When the feature amount calculated by the analysis unit 11 is “0”, the parameter value is determined to be normal, and when the feature amount is not “0”, the parameter value is determined to be abnormal.

また、アクセス判定部12で過去にこのパラメータの識別子に対してアクセスが存在すると判定されたとき、アクセスデータの特徴量に基づいた統計分布が算出された統計的に異常とみなしうる閾値を利用してアクセスデータが正常であるか否かを判定する。たとえば、パラメータ値について求められた特徴量が式1のf(x)の範囲内の場合、このパラメータ値を正常であると判定し、範囲外のときにパラメータ値であると判定する。 Further, when it is determined that access exists for past identifier for this parameter in the access judging unit 12, utilizing a statistically abnormal threshold can be considered the statistical distribution based on the feature amount of the access data is calculated It is then determined whether the access data is normal. For example, when the feature amount obtained for the parameter value is within the range of f (x) in Expression 1, it is determined that the parameter value is normal, and when it is out of the range, the parameter value is determined.

式1における平均値μと標準偏差σは、アクセスデータの特徴量の統計を取ることにより、図7に示すように決定される。閾値係数Aは、統計処理実行部14によって設定される値である。この閾値係数Aは、本発明の実施例1に係る異常データ検出装置1では、「数値」、「メタキャラクタ」及び「バイナリコード」に対して、それぞれのパラメータ値に応じて定められる値である。具体的には、2〜11程度の値とするのが実用上好ましいが、これに限られず、最良の値が設定される。   The average value μ and the standard deviation σ in Equation 1 are determined as shown in FIG. 7 by taking statistics of the feature amount of the access data. The threshold coefficient A is a value set by the statistical processing execution unit 14. The threshold coefficient A is a value determined according to each parameter value for “numerical value”, “metacharacter”, and “binary code” in the abnormal data detection apparatus 1 according to the first embodiment of the present invention. . Specifically, a value of about 2 to 11 is practically preferable, but is not limited to this, and the best value is set.

アクセスデータに含まれる全てのパラメータ値について正常と判定されると、統計的異常判定部13は、アクセスデータを正常なアクセスデータであると判定する。また、異常なパラメータ値が含まれるアクセスデータは異常なアクセスデータであると判定する。   When it is determined that all parameter values included in the access data are normal, the statistical abnormality determination unit 13 determines that the access data is normal access data. Further, it is determined that access data including an abnormal parameter value is abnormal access data.

統計処理実行部14は、データ解析部11において算出された特徴量が特徴量蓄積テーブル16に記憶されると、特徴量蓄積テーブル16に記憶された特徴量の平均値と標準偏差とアクセス回数とを含む統計情報を生成する。また、統計処理実行部14は、生成された統計情報を 用いてパラメータの識別子毎に統計情報テーブル15に記憶されている統計情報を再計算して更新する。   When the feature amount calculated by the data analysis unit 11 is stored in the feature amount accumulation table 16, the statistical processing execution unit 14 stores the average value, standard deviation, and number of accesses of the feature amount stored in the feature amount accumulation table 16. Generate statistical information including The statistical processing execution unit 14 recalculates and updates the statistical information stored in the statistical information table 15 for each parameter identifier using the generated statistical information.

統計情報テーブル15は、パラメータの識別子をキーとして、特徴量の平均値、標準偏差及びアクセス回数を含む統計情報を記憶している。また、統計情報テーブル15は、新しいアクセスが特徴量蓄積テーブル16に追加される度に統計処理実行部14の制御により更新される。   The statistical information table 15 stores statistical information including the average value of the feature amount, the standard deviation, and the number of accesses using the parameter identifier as a key. The statistical information table 15 is updated under the control of the statistical processing execution unit 14 every time a new access is added to the feature amount accumulation table 16.

統計情報テーブル15は、例えば図4に示すように、各CGI名とCGI変数名の組み合わせであるパラメータの識別子について統計情報を記憶する。図4(a)に示す例では、統計情報テーブル15は、CGI名とCGI変数名の組み合わせについて統計情報に対応するポインタ変数が記述されている。   For example, as shown in FIG. 4, the statistical information table 15 stores statistical information for parameter identifiers that are combinations of CGI names and CGI variable names. In the example shown in FIG. 4A, the statistical information table 15 describes pointer variables corresponding to statistical information for combinations of CGI names and CGI variable names.

たとえば、CGI名b及びCGI変数名2と関連付けられる統計情報2bとして記憶されるポインタ変数は、図4(b)に示す統計情報2bと関連付けられている。図4(b)に示す統計情報2bは、「数値」、「メタキャラクタ」及び「バイナリコード」に対して、特徴量に基づいて求められた「平均値」及び「標準偏差」を記憶している。また、統計情報2bは、このCGI名とCGI変数名の組み合わせであるパラメータの識別子に対する「アクセス回数」を記憶している。なお、統計情報は、特徴量蓄積テーブル16に新たに特徴量が蓄積される度に、統計処理実行部14により、更新される。   For example, a pointer variable stored as statistical information 2b associated with CGI name b and CGI variable name 2 is associated with statistical information 2b shown in FIG. The statistical information 2b shown in FIG. 4B stores “average value” and “standard deviation” obtained based on the feature amount for “numerical value”, “metacharacter”, and “binary code”. Yes. Further, the statistical information 2 b stores “access count” for the identifier of the parameter which is a combination of the CGI name and the CGI variable name. The statistical information is updated by the statistical processing execution unit 14 every time a new feature amount is accumulated in the feature amount accumulation table 16.

特徴量蓄積テーブル16は、パラメータの識別子をキーとして、データ解析部11で算出された特徴量を蓄積して記憶している。   The feature amount accumulation table 16 accumulates and stores feature amounts calculated by the data analysis unit 11 using parameter identifiers as keys.

具体的には図5にその一例を示すように特徴量蓄積テーブル16はWebサーバに対するアクセスデータとして入力されたパケットデータに含まれているCGI変数名の値(パラメータ)から求められた特徴量をCGI変数名に対する特徴量として記憶している。図5は、アクセスデータとして、図6に示す第1〜第4のパケットデータが入力された場合に、CGI変数の「数値」、「メタキャラクタ」及び「バイナリコード」について求められた特徴量である。「メタキャラクタ」とは、HTTP等の通信プロトコルにおいて特殊な意味を持つ文字のことである。   Specifically, as shown in FIG. 5 as an example, the feature amount accumulation table 16 shows the feature amount obtained from the value (parameter) of the CGI variable name included in the packet data input as access data to the Web server. It is stored as a feature value for the CGI variable name. FIG. 5 shows the feature values obtained for the “numerical value”, “metacharacter”, and “binary code” of the CGI variables when the first to fourth packet data shown in FIG. 6 are input as the access data. is there. The “metacharacter” is a character having a special meaning in a communication protocol such as HTTP.

図6(a)は、第1のパケットデータであり、CGI変数名2の「Q」の値は数値「12345」である。また、図6(b)は、第2のパケットデータであり、CGI変数名2の「Q」の値はASCII文字「abcde」である。さらに、図6(c)は、第3のパケットデータであり、CGI変数名2の「Q」の値はメタキャラクタ「”‘;」である。さらに、図6(d)は、第4のパケットデータであり、CGI変数名2の「Q」値はバイナリコード「△△△△」である。なお、この「△」はバイナリコードを仮想的に図示している。また、ここで「cgi−bin/phf」は「CGI名b」である。   FIG. 6A shows the first packet data, and the value of “Q” in the CGI variable name 2 is the numerical value “12345”. FIG. 6B shows the second packet data, and the value of “Q” in the CGI variable name 2 is the ASCII character “abcde”. Further, FIG. 6C shows the third packet data, and the value of “Q” in the CGI variable name 2 is the metacharacter “” ′; ”. Further, FIG. 6D shows the fourth packet data, and the “Q” value of the CGI variable name 2 is the binary code “ΔΔΔΔ”. Note that this “Δ” virtually illustrates the binary code. Here, “cgi-bin / phf” is “CGI name b”.

このように、第1〜第4のパケットデータに含まれるCGI変数名2である「Q」の値を利用して、パラメータ値における「数値」、「メタキャラクタ」及び「バイナリコード」の総数を特徴量として特徴量蓄積テーブル16に記憶する。   Thus, using the value of “Q” that is CGI variable name 2 included in the first to fourth packet data, the total number of “numerical value”, “metacharacter”, and “binary code” in the parameter value is calculated. The feature value is stored in the feature value accumulation table 16 as a feature value.

例えば、第1のパケットデータの「Q」のパラメータ値に「数値」が含まれる数は「5」であり、「メタキャラクタ」及び「バイナリコード」は含まれていない。そのため、第1のパケットデータの特徴量は、それぞれ「5、0、0」となる。また、第2のパケットデータの「Q」のパラメータ値には「数値」、「メタキャラクタ」及び「バイナリコード」のいずれも含まれていないため、第2のパケットデータの特徴量は、それぞれ「0、0、0」となる。同様に第3のパケットデータでは「メタキャラクタ」が3つ含まれているから特徴量は「0、3、0」となり、第4のパケットデータでは「バイナリコード」が4つ含まれているから特徴量は「0、0、4」となり、図5に示すように特徴量蓄積テーブル16に蓄積されている。   For example, the number including “numerical value” in the parameter value “Q” of the first packet data is “5”, and does not include “metacharacter” and “binary code”. Therefore, the feature amounts of the first packet data are “5, 0, 0”, respectively. Since the parameter value of “Q” of the second packet data does not include any of “numerical value”, “metacharacter”, and “binary code”, the feature amount of the second packet data is “ 0, 0, 0 ". Similarly, since the third packet data includes three “metacharacters”, the feature amount is “0, 3, 0”, and the fourth packet data includes four “binary codes”. The feature amounts are “0, 0, 4” and are stored in the feature amount storage table 16 as shown in FIG.

なお、図4(b)に示した統計情報2bは、この図5に示した特徴量蓄積テーブル16に蓄積されている特徴量に基づいて生成されたものである。例えば、「数値」の「平均値」は、第1〜第4のパケットデータの「数値」の特徴量の合計である「5」をアクセス回数「4」で割ることにより求めている。また、「メタキャラクタ」と「バイナリコード」に対する「平均値」も第1から第4のパケットデータの「メタキャラクタ」と「バイナリコード」の特徴量の合計をアクセス回数「4」で割ることにより求めている。また、「標準偏差」は、第1から第4のパケットデータの特徴量および平均値を利用して求める。   Note that the statistical information 2b shown in FIG. 4B is generated based on the feature amount stored in the feature amount storage table 16 shown in FIG. For example, the “average value” of “numerical values” is obtained by dividing “5”, which is the sum of the “numerical value” feature amounts of the first to fourth packet data, by the access count “4”. Also, the “average value” for “metacharacter” and “binary code” is also obtained by dividing the total of the feature quantities of “metacharacter” and “binary code” of the first to fourth packet data by the number of accesses “4”. Looking for. The “standard deviation” is obtained by using the feature values and average values of the first to fourth packet data.

[異常データ検出処理]
次に、図8に示すフローチャートを参照して、本発明の第1の実施の形態に係る異常データ検出装置1における異常データ検出処理を説明する。
[Abnormal data detection processing]
Next, the abnormal data detection process in the abnormal data detection apparatus 1 according to the first embodiment of the present invention will be described with reference to the flowchart shown in FIG.

異常データ検出装置1のデータ解析部11に、異常データ検出装置1と接続されるネットワークセグメント2を介してアクセスデータが入力されると(S001)、データ解析部11は、アクセスデータを解析して特徴量を算出し、入力したアクセスデータと共に出力する(S002)。   When access data is input to the data analysis unit 11 of the abnormal data detection device 1 via the network segment 2 connected to the abnormal data detection device 1 (S001), the data analysis unit 11 analyzes the access data. The feature amount is calculated and output together with the input access data (S002).

アクセスデータは図3に示したようなHTTPリクエストのアクセスデータである。特徴量の算出は、図6に示したようにデータの「数値」、「メタキャラクタ」及び「バイナリコード」の各文字種類についての数を求めることにより、算出される。   The access data is HTTP request access data as shown in FIG. The feature amount is calculated by obtaining the number of each character type of “numerical value”, “metacharacter”, and “binary code” of the data as shown in FIG.

アクセス判定部12は、データ解析部11からアクセスデータとともにアクセスデータに基づいて算出された特徴量を入力すると(S003)、アクセス判定部12は、データ解析部11から特徴量とともに入力したアクセスデータについて、アクセスデータに含まれるCGI名及びCGI変数名について、統計情報テーブル15のアクセス回数を参照して過去にアクセスされたか否か判定し、判定結果としてアクセスの有無をアクセスデータ及び特徴量とともに出力する(S004)。このステップS004における判定処理については後に詳述する。   When the access determination unit 12 inputs the feature amount calculated based on the access data together with the access data from the data analysis unit 11 (S003), the access determination unit 12 regards the access data input together with the feature amount from the data analysis unit 11. For the CGI name and the CGI variable name included in the access data, it is determined whether or not it has been accessed in the past by referring to the access count of the statistical information table 15, and the presence / absence of access is output together with the access data and the feature amount as a determination result (S004). The determination process in step S004 will be described in detail later.

統計的異常判定部13は、アクセス判定部12からアクセスの有無の判定結果及びアクセスデータを入力すると、アクセスデータに含まれている全てのCGI変数のパラメータ値が正常であるか否かを判断する(S005)。例えば、図3に示したアクセスデータの場合、CGI名変数1〜3のパラメータ値の全てが「正常」であるか否かを判断する。   When the statistical abnormality determination unit 13 receives the access determination result and the access data from the access determination unit 12, the statistical abnormality determination unit 13 determines whether the parameter values of all the CGI variables included in the access data are normal. (S005). For example, in the case of the access data shown in FIG. 3, it is determined whether or not all the parameter values of the CGI name variables 1 to 3 are “normal”.

アクセスデータに含まれていた全てのCGI変数が「正常」である場合、統計的異常判定部13は、アクセスデータを「正常」であると判定する(S006)。一方、アクセスデータに「異常」と判定されたCGI変数が一つでも含まれていた場合、統計的異常判定部13は、アクセスデータを「異常」と判断する(S007)。   When all the CGI variables included in the access data are “normal”, the statistical abnormality determination unit 13 determines that the access data is “normal” (S006). On the other hand, if at least one CGI variable determined to be “abnormal” is included in the access data, the statistical abnormality determination unit 13 determines that the access data is “abnormal” (S007).

ステップS006において、統計的異常判定部13が入力されたアクセスデータを「正常」であると判断すると、統計的異常判定部13は、ステップS002で算出された特徴量を記憶させて特徴量蓄積テーブル16を更新する。(S008)。   In step S006, when the statistical abnormality determination unit 13 determines that the input access data is “normal”, the statistical abnormality determination unit 13 stores the feature amount calculated in step S002 and stores the feature amount accumulation table. 16 is updated. (S008).

ステップS008において特徴量蓄積テーブル16が更新されると、統計処理実行部14は特徴量蓄積テーブル16を読み出して統計情報を再計算するとともに、算出した統計情報を統計情報テーブル15に記憶させる(S109)。   When the feature amount accumulation table 16 is updated in step S008, the statistical processing execution unit 14 reads the feature amount accumulation table 16, recalculates the statistical information, and stores the calculated statistical information in the statistical information table 15 (S109). ).

[判定処理]
次に、図9に示すフローチャートを用いて、ステップS004における判定処理について説明する。
[Determination process]
Next, the determination process in step S004 will be described using the flowchart shown in FIG.

アクセス判定部12は、データ解析部11からアクセスデータおよび特徴量を入力すると、アクセスデータに含まれる1つのCGI変数名を選択する(S101)。   When the access data and the feature quantity are input from the data analysis unit 11, the access determination unit 12 selects one CGI variable name included in the access data (S101).

続いて、アクセス判定部12は、選択されたCGI名とCGI変数名との組み合わせであるパラメータの識別子で識別される統計情報について統計情報テーブル15のアクセス回数を参照し、過去にアクセスがされたか否かを判定する(S102)。   Subsequently, the access determination unit 12 refers to the access count of the statistical information table 15 for the statistical information identified by the parameter identifier that is a combination of the selected CGI name and the CGI variable name, and whether the access has been made in the past. It is determined whether or not (S102).

ステップS102で、選択されたCGI名とCGI変数名との組み合わせについて過去にアクセスがされていない場合(S102でNO、統計的異常判定部13は、図8に示したステップS002で算出された特徴量が「0」であるか否かを判定する(S103)。上述した例では、「数値」、「メタキャラクタ」及び「バイナリコード」について特徴量を算出しているが、このように複数の文字種類について特徴量を算出した場合、その全ての特徴量が「0」の場合、その特徴量を「0」とする。 If the combination of the selected CGI name and CGI variable name has not been accessed in the past in step S102 (NO in S102 ) , the statistical abnormality determination unit 13 is calculated in step S002 shown in FIG. It is determined whether or not the feature amount is “0” (S103). In the above-described example, feature quantities are calculated for “numerical values”, “metacharacters”, and “binary codes”. When feature quantities are calculated for a plurality of character types in this way, all feature quantities are “ In the case of “0”, the feature amount is set to “0”.

ステップS002で算出された特徴量が「0」である場合、統計的異常判定部13は、対象としているCGI変数名のパラメータ値について「正常」であると判定する(S104)。一方、特徴量が「0」でない場合、統計的異常判定部13は、CGI変数名のパラメータ値について「異常」であると判定する(S105)。   When the feature amount calculated in step S002 is “0”, the statistical abnormality determination unit 13 determines that the parameter value of the target CGI variable name is “normal” (S104). On the other hand, when the feature amount is not “0”, the statistical abnormality determination unit 13 determines that the parameter value of the CGI variable name is “abnormal” (S105).

具体的には、図5では、第1のパケットデータは「数値」のパラメータ値の特徴量が「0」でないため、パラメータ値は「異常」と判定される。また、第2のパケットデータについては「数値」、「メタキャラクタ」及び「バイナリコード」のパラメータ値についての特徴量が全て「0」であるため、パラメータ値は「正常」と判定される。さらに、第3及び第4のパケットデータのパラメータ値は「異常」と判定される。   Specifically, in FIG. 5, since the feature value of the parameter value “numerical value” of the first packet data is not “0”, the parameter value is determined to be “abnormal”. For the second packet data, since the feature values for the parameter values of “numerical value”, “metacharacter”, and “binary code” are all “0”, the parameter value is determined to be “normal”. Further, the parameter values of the third and fourth packet data are determined as “abnormal”.

また、ステップS102で選択されたCGI名とCGI変数名との組み合わせについて過去にアクセスがされてい場合(S102でYES)、統計的異常判定部13は、ステップS002で算出された特徴量が規定の範囲内であるか否かを判定する(S106)。具体的にはステップS002で算出された特徴量について求められた標準偏差が、図7で示す閾値の範囲内である場合、統計的異常判定部13は、規定の範囲内であると判定する。 Also, if it was the past access (YES in S102), statistical abnormality determination unit 13, the feature amount calculated in the step S002 defined for the combination of the CGI name and CGI variable name selected at step S102 It is determined whether it is within the range (S106). Specifically, when the standard deviation calculated for the feature amount calculated in step S002 is within the threshold range shown in FIG. 7, the statistical abnormality determination unit 13 determines that it is within the specified range.

統計的異常判定部13は、算出された特徴量が規定の範囲内であると判定された場合、CGI変数名の値について「正常」と判定し(S107)、規定の範囲内でないと判定された場合、CGI変数名の値について「異常」と判定する(S108)。   When it is determined that the calculated feature value is within the specified range, the statistical abnormality determination unit 13 determines that the value of the CGI variable name is “normal” (S107), and is determined not to be within the specified range. If it is determined that the value of the CGI variable name is “abnormal” (S108).

全てのCGI変数について「正常」または「異常」の判定がされていない場合、ステップS101に戻り(S109でNO)、全てのCGI変数名の値について判定処理がされた場合(S109でYES)、判定処理を終了する(S110)。   When “normal” or “abnormal” is not determined for all CGI variables, the process returns to step S101 (NO in S109), and when determination processing is performed for all CGI variable name values (YES in S109), The determination process is terminated (S110).

上述した第1の実施の形態に係る異常データ検出装置1は、初めて現れたCGI名及びCGI変数名を含むアクセスデータについて、このCGI名及びCGI変数名を識別子とする値に基づいて特徴量を算出し、算出された特徴量に基づいて正常または異常の判定をする。このように予め記憶されないアクセスデータを検出することにより、未知の攻撃を検知することができる。   The abnormal data detection apparatus 1 according to the first embodiment described above, for the access data including the CGI name and the CGI variable name that appears for the first time, calculates the feature amount based on the value using the CGI name and the CGI variable name as an identifier. Calculation is performed, and normality or abnormality is determined based on the calculated feature amount. Thus, by detecting access data that is not stored in advance, an unknown attack can be detected.

[第2の実施の形態]
次に、本発明の第2の実施の形態に係る異常データ検出装置1aについて説明する。
[Second Embodiment]
Next, an abnormal data detection apparatus 1a according to the second embodiment of the present invention will be described.

図10に示すように、第2の実施の形態に係る異常データ検出装置1aは、第1の実施の形態に係る異常データ検出装置1と比較して、アクセス判定部12に替えてアクセス判定部17を有している点で異なる。なお、第1の実施の形態に係る異常データ検出装置1と同一の構成については同一の番号を付して説明を省略する。   As shown in FIG. 10, the abnormal data detection device 1a according to the second embodiment is different from the abnormal data detection device 1 according to the first embodiment in that an access determination unit is used instead of the access determination unit 12. 17 is different. In addition, about the same structure as the abnormal data detection apparatus 1 which concerns on 1st Embodiment, the same number is attached | subjected and description is abbreviate | omitted.

アクセス判定部17は、CGI判定部17a及びCGI変数判定部17bを有している。   The access determination unit 17 includes a CGI determination unit 17a and a CGI variable determination unit 17b.

CGI判定部17aは、入力されたアクセスデータに含まれるCGI名及びCGI変数と対応する統計情報が統計情報テーブル15に存在しているか否かを判定する。   The CGI determination unit 17a determines whether or not statistical information corresponding to the CGI name and the CGI variable included in the input access data exists in the statistical information table 15.

CGI変数判定部17bは、CGI判定部17aで統計情報が存在していることを判定した場合、統計情報テーブル15を読み出して入力されたアクセスデータに含まれるCGI名及びCGI変数と関連付けられる過去のアクセス回数を判定する。   When the CGI variable determination unit 17b determines that the statistical information is present in the CGI determination unit 17a, the CGI variable determination unit 17b reads the statistical information table 15 and stores past CGI names and CGI variables associated with the input access data. Determine the number of accesses.

なお、CGI判定部17aで該当するパラメータ識別子の統計情報が存在していないと判定された場合、統計的異常判定部13は、このパラメータ値を含むアクセスデータを異常と判定する。   If the CGI determination unit 17a determines that the statistical information of the corresponding parameter identifier does not exist, the statistical abnormality determination unit 13 determines that the access data including the parameter value is abnormal.

なお、異常データ検出装置1aは、実際の運用が開始されるまで、学習モードとして、統計情報テーブル15に統計情報を蓄積する。そのため、たとえば、異常データ検出装置1aは運用初期には異常データの検出は実行せず、学習モードにおいて一定のアクセス回数があり統計情報テーブル15に一定の統計情報が蓄積されるまで、あるいは、所定の時間が経過して学習モードにおいて統計情報テーブル15に統計情報が蓄積されるまでは、企業内等の限られた範囲で使用され、異常データ検出は行わずに統計情報の蓄積のみを行うのが好ましい。これは、運用初期においては、統計情報テーブル15が構成されておらず、入力されるアクセスデータの異常を適切に検出することができず、誤検出がされる可能性が高いためである。異常データ検出装置1aは、たとえば、一定の数のアクセスデータが入力されることにより、あるいは、所定時間が経過することにより、統計情報テーブル15にアクセスデータの異常を検出するために十分な統計情報を蓄積したと判断すると、学習モードを終了する。また、異常データ検出装置1aは学習モードを終了すると、入力されるアクセスデータの異常の検出の実行を開始する。   The abnormal data detection device 1a accumulates statistical information in the statistical information table 15 as a learning mode until actual operation is started. Therefore, for example, the abnormal data detection device 1a does not detect abnormal data in the initial stage of operation, and there is a certain number of accesses in the learning mode until certain statistical information is accumulated in the statistical information table 15, or predetermined Until the statistical information is accumulated in the statistical information table 15 in the learning mode after the elapse of time, it is used within a limited range such as in the company, and only the statistical information is accumulated without detecting abnormal data. Is preferred. This is because at the initial stage of operation, the statistical information table 15 is not configured, and it is not possible to properly detect an abnormality in the input access data, and there is a high possibility of erroneous detection. The abnormal data detection device 1a has sufficient statistical information to detect an abnormality in the access data in the statistical information table 15 when, for example, a certain number of access data is input or when a predetermined time has elapsed. If it is determined that has been accumulated, the learning mode is terminated. Further, when the abnormal data detection device 1a finishes the learning mode, the abnormal data detection device 1a starts detecting an abnormality in the input access data.

図11に示すのは、第2の実施の形態に係る異常データ検出装置1aにおける異常データ検出処理を説明するフローチャートである。なお、図8に示したフローチャートと同一の処理をするステップについては同一の番号を付して説明を省略する。   FIG. 11 is a flowchart for explaining abnormal data detection processing in the abnormal data detection apparatus 1a according to the second embodiment. In addition, the same number is attached | subjected about the step which performs the same process as the flowchart shown in FIG.

図11において、図8に示したフローチャートと異なる点は、ステップS002においてデータ解析部11で算出された特徴量を、CGI判定部17aがアクセスデータとともに入力すると(S201)、CGI判定部17aがアクセスデータに含まれているパラメータの識別子であるCGI名とCGI変数名との組み合わせが統計情報テーブル15に含まれているか否かを判定する(S202)点である。   11 differs from the flowchart shown in FIG. 8 in that when the CGI determination unit 17a inputs the feature amount calculated by the data analysis unit 11 in step S002 together with the access data (S201), the CGI determination unit 17a accesses the feature amount. It is determined whether or not the statistical information table 15 includes a combination of a CGI name and a CGI variable name, which are parameter identifiers included in the data (S202).

CGI判定部17aが、データ解析部11から入力されたアクセスデータに含まれるパラメータの識別子が統計情報テーブル15に存在すると判定した場合(S202でYES)、ステップS004の処理に進み、このパラメータの識別子に対するパラメータ値が「正常」であるか又は「異常」であるかの判定処理がされる。このステップS004における処理は図9に示す処理である。   When the CGI determination unit 17a determines that the parameter identifier included in the access data input from the data analysis unit 11 exists in the statistical information table 15 (YES in S202), the process proceeds to step S004, and the identifier of this parameter Whether the parameter value for is “normal” or “abnormal” is determined. The processing in step S004 is the processing shown in FIG.

一方、CGI判定部17aが、データ解析部11から入力されたアクセスデータに含まれるパラメータの識別子が統計情報テーブル15に存在しないと判定された場合(S202でYES)、ステップS007の処理に進み、統計的異常判定部13は、入力されたアクセスデータを「異常」と判定する。   On the other hand, when the CGI determination unit 17a determines that the identifier of the parameter included in the access data input from the data analysis unit 11 does not exist in the statistical information table 15 (YES in S202), the process proceeds to step S007. The statistical abnormality determination unit 13 determines that the input access data is “abnormal”.

上述した第2の実施の形態に係る異常データ検出装置1aは、統計情報テーブルの内容を追加して更新することで、WebサーバにおけるCGI名の追加に追従することができる。また、統計情報テーブルに予め記憶されているCGI名を含むアクセスデータのみを判断の対象とすることで、処理速度を向上させることが可能となる。さらに、誤検知率の増大を抑制し、異常なアクセスデータの検知率を向上させることができる。   The abnormal data detection apparatus 1a according to the second embodiment described above can follow the addition of the CGI name in the Web server by adding and updating the contents of the statistical information table. In addition, the processing speed can be improved by setting only the access data including the CGI name stored in advance in the statistical information table as the object of determination. Furthermore, an increase in the false detection rate can be suppressed, and the detection rate of abnormal access data can be improved.

なお、上記各実施形態において、CGI変数名のパラメータとして「数値」、「メタキャラクタ」、「バイナリコード」の3つについて統計情報を作成したが、「ASCII文字」を追加しても良い。   In each of the above-described embodiments, statistical information is created for three parameters “numerical value”, “metacharacter”, and “binary code” as parameters of the CGI variable name, but “ASCII characters” may be added.

上記のように、本発明の第1および第2の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなる。   As described above, the first and second embodiments of the present invention have been described. However, it should not be understood that the description and drawings constituting a part of this disclosure limit the present invention. From this disclosure, various alternative embodiments, examples, and operational techniques will be apparent to those skilled in the art.

本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。   It goes without saying that the present invention includes various embodiments not described herein. Therefore, the technical scope of the present invention is defined only by the invention specifying matters according to the scope of claims reasonable from the above description.

本発明の第1の実施の形態に係る異常データ検出装置のブロック構成図である。It is a block block diagram of the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置の構成図である。It is a block diagram of the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置が入力するアクセスデータの一例である。It is an example of the access data which the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention inputs. 本発明の第1の実施の形態に係る異常データ検出装置で記憶される統計情報テーブルの一例である。It is an example of the statistical information table memorize | stored with the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置で記憶される特徴量蓄積データの一例である。It is an example of the feature-value accumulation data memorize | stored with the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置が入力するアクセスデータの一例である。It is an example of the access data which the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention inputs. 本発明の第1の実施の形態に係る異常データで異常の判定に用いられる特徴量の一例である。It is an example of the feature-value used for abnormality determination with the abnormality data which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置における異常データ検出処理を説明するフローチャートである。It is a flowchart explaining the abnormal data detection process in the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係る異常データ検出装置における判定処理を説明するフローチャートである。It is a flowchart explaining the determination process in the abnormal data detection apparatus which concerns on the 1st Embodiment of this invention. 本発明の第2の実施の形態に係る異常データ検出装置のブロック構成図である。It is a block block diagram of the abnormal data detection apparatus which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施の形態に係る異常データ検出装置における異常データ検出処理を説明するフローチャートである。It is a flowchart explaining the abnormal data detection process in the abnormal data detection apparatus which concerns on the 2nd Embodiment of this invention.

符号の説明Explanation of symbols

1,1a…異常データ検出装置
2…第1のネットワークセグメント
3…第2のネットワークセグメント
11…データ解析部
12…アクセス判定部
13…統計的異常判定部
14…統計処理実行部
15…統計情報テーブル
16…特徴量蓄積テーブル
101…中央処理制御装置
102…ROM
103…RAM
104…入力装置
105…表示装置
106…通信制御装置
107…記憶装置
108…リムーバブルディスク
109…入出力インタフェース
110…バス
DESCRIPTION OF SYMBOLS 1, 1a ... Abnormal data detection apparatus 2 ... 1st network segment 3 ... 2nd network segment 11 ... Data analysis part 12 ... Access determination part 13 ... Statistical abnormality determination part 14 ... Statistical process execution part 15 ... Statistical information table 16 ... Feature value accumulation table 101 ... Central processing control device 102 ... ROM
103 ... RAM
104 ... Input device 105 ... Display device 106 ... Communication control device 107 ... Storage device 108 ... Removable disk 109 ... Input / output interface 110 ... Bus

Claims (3)

接続されるネットワークセグメントからアクセスデータが入力されると、前記アクセスデータに含まれるパラメータ値に基づいて、CGI変数名毎に異常データの特徴を示す特徴量を算出するデータ解析手段と、
前記データ解析手段で算出された特徴量を蓄積して記憶する特徴量蓄積手段と、
前記特徴量の平均値、標準偏差およびCGI変数のアクセス回数を含む統計情報を記憶する統計情報記憶手段と、
前記特徴量蓄積手段に記憶された前記特徴量の平均値と標準偏差およびCGI変数のアクセス回数とを含む統計情報を生成し、前記統計情報記憶手段に記憶された前記統計情報を更新する統計処理実行手段と、
前記統計情報記憶手段を参照して前記入力されたアクセスデータに関するCGI変数の過去のアクセス回数を判定するアクセス判定手段と、
前記アクセス判定手段でCGI変数が過去にアクセスされていたことを判定した場合、前記データ解析手段で算出された特徴量と前記統計情報記憶手段に記憶される統計情報に基づく規定の範囲とを比較して、アクセスデータが正常であるか否かを判定し、前記アクセス判定手段でCGI変数が過去にアクセスされていないと判断した場合、前記データ解析手段で算出された特徴量が0であるか否かを判定し、0であるときは前記パラメータ値について正常と判定し、0でないときは前記パラメータ値について異常と判定する統計的異常判定手段と、
を備えることを特徴とする異常データ検出装置。
When access data is input from a connected network segment, based on a parameter value included in the access data, a data analysis unit that calculates a feature amount indicating a feature of abnormal data for each CGI variable name;
Feature quantity storage means for storing and storing feature quantities calculated by the data analysis means;
Statistical information storage means for storing statistical information including the average value of the feature amount, the standard deviation, and the number of accesses of the CGI variable ;
Statistical processing for generating statistical information including an average value and standard deviation of the feature amount stored in the feature amount storage unit and the number of accesses to the CGI variable, and updating the statistical information stored in the statistical information storage unit Execution means;
Access determining means for determining a past access count of a CGI variable related to the input access data with reference to the statistical information storage means ;
When the access determination means determines that the CGI variable has been accessed in the past, the feature amount calculated by the data analysis means is compared with a specified range based on the statistical information stored in the statistical information storage means Then, it is determined whether or not the access data is normal, and if the access determination unit determines that the CGI variable has not been accessed in the past, is the feature amount calculated by the data analysis unit zero? Statistical abnormality determination means for determining whether or not the parameter value is normal when it is 0, and determining that the parameter value is abnormal when it is not 0;
An abnormal data detection device comprising:
接続されるネットワークセグメントからアクセスデータが入力されると、前記アクセスデータに含まれるパラメータ値に基づいて、CGI変数名毎に異常データの特徴を示す特徴量を算出し、
前記データ解析手段で算出された特徴量を蓄積して記憶する特徴量蓄積手段に記憶された前記特徴量の平均値と標準偏差およびCGI変数のアクセス回数とを含む統計情報を生成し、前記特徴量の平均値、標準偏差およびCGI変数のアクセス回数を含む統計情報を記憶する統計情報記憶手段に記憶された前記統計情報を更新し、
前記統計情報記憶手段を参照して前記入力されたアクセスデータに関するCGI変数の過去のアクセス回数を判定し、
CGI変数が過去にアクセスされていたことを判定した場合、算出された特徴量と前記統計情報記憶手段に記憶される統計情報に基づく規定の範囲とを比較して、アクセスデータが正常であるか否かを判定し、
CGI変数が過去にアクセスされていないと判断した場合、算出された特徴量が0であるか否かを判定し、0であるときは前記パラメータ値について正常と判定し、0でないときは前記パラメータ値について異常と判定する、
ことを特徴とする異常データ検出方法。
When access data is input from the connected network segment, based on the parameter value included in the access data, a feature amount indicating the characteristic of abnormal data is calculated for each CGI variable name,
Generating statistical information including an average value of the feature quantity stored in the feature quantity storage means for storing and storing the feature quantity calculated by the data analysis means, a standard deviation, and the number of accesses of the CGI variable; Updating the statistical information stored in the statistical information storage means for storing statistical information including the average value of the quantity, the standard deviation, and the number of accesses of the CGI variable ;
Determining the number of past accesses of the CGI variable related to the input access data with reference to the statistical information storage means ;
If it is determined that the CGI variable has been accessed in the past, whether the access data is normal by comparing the calculated feature amount with a specified range based on the statistical information stored in the statistical information storage means Determine whether or not
When it is determined that the CGI variable has not been accessed in the past, it is determined whether or not the calculated feature value is 0. If it is 0, it is determined that the parameter value is normal, and if it is not 0, the parameter Determining that the value is abnormal
An abnormal data detection method characterized by the above.
接続されるネットワークセグメントからアクセスデータが入力されると、前記アクセスデータに含まれるパラメータ値に基づいて、CGI変数名毎に異常データの特徴を示す特徴量を算出するステップと、
前記データ解析手段で算出された特徴量を蓄積して記憶する特徴量蓄積手段に記憶された前記特徴量の平均値と標準偏差およびCGI変数のアクセス回数とを含む統計情報を生成し、前記特徴量の平均値、標準偏差およびCGI変数のアクセス回数を含む統計情報を記憶する統計情報記憶手段に記憶された前記統計情報を更新するステップと、
前記統計情報記憶手段を参照して前記入力されたアクセスデータに関するCGI変数の過去のアクセス回数を判定するステップと、
CGI変数が過去にアクセスされていたことを判定した場合、算出された特徴量と前記統計情報記憶手段に記憶される統計情報に基づく規定の範囲とを比較して、アクセスデータが正常であるか否かを判定するステップと、
CGI変数が過去にアクセスされていないと判断した場合、算出された特徴量が0であるか否かを判定し、0であるときは前記パラメータ値について正常と判定し、0でないときは前記パラメータ値について異常と判定するステップと、
をコンピュータに実行させることを特徴とする異常データ検出プログラム。
When access data is input from a connected network segment, a feature amount indicating a feature of abnormal data for each CGI variable name is calculated based on a parameter value included in the access data;
Generating statistical information including an average value of the feature quantity stored in the feature quantity storage means for storing and storing the feature quantity calculated by the data analysis means, a standard deviation, and the number of accesses of the CGI variable; Updating the statistical information stored in the statistical information storage means for storing statistical information including the average value of the quantity, the standard deviation, and the number of accesses of the CGI variable ;
Determining a past access count of a CGI variable related to the input access data with reference to the statistical information storage means ;
If it is determined that the CGI variable has been accessed in the past, whether the access data is normal by comparing the calculated feature quantity with a specified range based on the statistical information stored in the statistical information storage means Determining whether or not,
When it is determined that the CGI variable has not been accessed in the past, it is determined whether or not the calculated feature value is 0. If it is 0, it is determined that the parameter value is normal, and if it is not 0, the parameter Determining that the value is abnormal;
An abnormal data detection program for causing a computer to execute.
JP2004321078A 2004-11-04 2004-11-04 Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program Expired - Fee Related JP4371981B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004321078A JP4371981B2 (en) 2004-11-04 2004-11-04 Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004321078A JP4371981B2 (en) 2004-11-04 2004-11-04 Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009145499A Division JP4852124B2 (en) 2009-06-18 2009-06-18 Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program

Publications (2)

Publication Number Publication Date
JP2006133992A JP2006133992A (en) 2006-05-25
JP4371981B2 true JP4371981B2 (en) 2009-11-25

Family

ID=36727498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004321078A Expired - Fee Related JP4371981B2 (en) 2004-11-04 2004-11-04 Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program

Country Status (1)

Country Link
JP (1) JP4371981B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129714A (en) * 2006-11-17 2008-06-05 Univ Of Tsukuba Abnormality detection method, abnormality detection device, abnormality detection program, and learning model generation method
JP5298293B2 (en) * 2007-03-30 2013-09-25 国立大学法人九州大学 Detection apparatus, detection method, communication control method, history space data production method, and program capable of causing a computer to execute these methods
JP5655191B2 (en) * 2011-06-28 2015-01-21 日本電信電話株式会社 Feature information extraction apparatus, feature information extraction method, and feature information extraction program
JP7114228B2 (en) * 2017-06-30 2022-08-08 川崎重工業株式会社 Ship performance analysis system

Also Published As

Publication number Publication date
JP2006133992A (en) 2006-05-25

Similar Documents

Publication Publication Date Title
US8627458B2 (en) Detecting malicious computer program activity using external program calls with dynamic rule sets
US8949987B2 (en) Computer security process monitor
US20130167236A1 (en) Method and system for automatically generating virus descriptions
WO2014112185A1 (en) Attack analysis system, coordination device, attack analysis coordination method, and program
US20070072661A1 (en) Windows message protection
US8561179B2 (en) Method for identifying undesirable features among computing nodes
US10868823B2 (en) Systems and methods for discriminating between human and non-human interactions with computing devices on a computer network
WO2020004315A1 (en) Abnormality sensing device and abnormality sensing method
US11647029B2 (en) Probing and responding to computer network security breaches
CN110959158A (en) Information processing apparatus, information processing method, and information processing program
CN113079151B (en) Abnormality processing method and device, electronic equipment and readable storage medium
JP4261389B2 (en) Unauthorized access detection device and unauthorized access detection program
Hughes et al. Dynamic countermeasure knowledge for intrusion response systems
JP4371981B2 (en) Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program
JP7019533B2 (en) Attack detection device, attack detection system, attack detection method and attack detection program
JP4852124B2 (en) Abnormal data detection apparatus, abnormal data detection method, and abnormal data detection program
CN113709129A (en) White list generation method, device and system based on traffic learning
JP4130445B2 (en) Abnormal data detection apparatus, abnormal data detection program, and abnormal data detection method
US20060031463A1 (en) Metric driven holistic network management system
JP6314036B2 (en) Malware feature extraction device, malware feature extraction system, malware feature method and countermeasure instruction device
CN112929365B (en) Remote command detection method and device and electronic equipment
JP3822588B2 (en) Unauthorized access detection device, unauthorized access detection method, and management terminal
JP3811162B2 (en) Abnormal data detection apparatus and abnormal data detection program
WO2020161780A1 (en) Action plan estimation device, action plan estimation method, and computer-readable recording medium
JP2005234849A (en) Monitoring device, monitoring method and program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090618

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090804

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090901

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120911

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4371981

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120911

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130911

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees