WO2022219819A1 - 判定装置、判定方法、および、判定プログラム - Google Patents

判定装置、判定方法、および、判定プログラム Download PDF

Info

Publication number
WO2022219819A1
WO2022219819A1 PCT/JP2021/015759 JP2021015759W WO2022219819A1 WO 2022219819 A1 WO2022219819 A1 WO 2022219819A1 JP 2021015759 W JP2021015759 W JP 2021015759W WO 2022219819 A1 WO2022219819 A1 WO 2022219819A1
Authority
WO
WIPO (PCT)
Prior art keywords
attack
communication
blind
communication log
logs
Prior art date
Application number
PCT/JP2021/015759
Other languages
English (en)
French (fr)
Inventor
楊 鐘本
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2021/015759 priority Critical patent/WO2022219819A1/ja
Priority to US18/281,761 priority patent/US20240154976A1/en
Priority to JP2023514312A priority patent/JP7505642B2/ja
Publication of WO2022219819A1 publication Critical patent/WO2022219819A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks

Definitions

  • the present invention relates to a determination device, a determination method, and a determination program for determining whether or not a blind attack has succeeded.
  • Example 1 Blind SQL injection
  • an object of the present invention is to solve the above-described problem and determine whether or not a blind attack has succeeded.
  • the present invention uses a session extracting unit that extracts a series of communication logs of the same session from the communication log that is the target of attack detection, and a URL of the request destination of the communication log to perform a blind attack.
  • an attack detection unit that identifies the location of the target of the blind attack and the content of the attack, and the extracted series of communication logs of the same session, Extracting a communication log that matches the location of the attack target, and if it is determined that the extracted communication log has multiple types of attack content and multiple response status codes and response sizes, the series of communications It is characterized by comprising a success/failure determining unit for determining that a blind attack has succeeded based on communication indicated by a log, and a determination result output unit for outputting the result of the determination.
  • FIG. 1 is a diagram for explaining an outline of the operation of the determination device.
  • FIG. 2 is a diagram illustrating a configuration example of a determination device.
  • FIG. 3 is a diagram showing an example of the communication log in FIG. 2;
  • FIG. 4 is a diagram showing an example of detection data in FIG.
  • FIG. 5 is a diagram for explaining success/failure determination by the success/failure determination unit in FIG. 2 .
  • FIG. 6 is a flowchart illustrating an example of a processing procedure of the determination device;
  • FIG. 7 is a diagram showing a configuration example of a system including a determination device.
  • FIG. 8 is a diagram showing a configuration example of a computer that executes the determination program.
  • a blind attack is an attack in which requests with different parameters are sent to an attack target, and information is sought from differences in responses to the requests.
  • the determination device 10 obtains a request to the web server ((1)) from the communication log of the communication with the web server, and the status code and response size of the response to the request ((2) ) and get Then, based on the acquired data, the determination device 10 identifies blind attacks between the same sessions, and determines success or failure of the attacks from status codes and response sizes ((3)).
  • the determination device 10 extracts a series of communication logs of the same session (see reference numeral 101 in FIG. 1) from among the acquired communication logs. Then, the determination device 10 determines whether or not the series of communications is a blind attack from the URL of the request destination of the extracted series of communication logs.
  • the determination device 10 determines that the series of communications is a blind attack, the attack target part is the same (for example, the parameter id of the URL), and the contents of the attack (for example, the parameters set in the request) are different, In addition, when the response status code and response size are different, the determination device 10 determines that the blind attack by a series of communications indicated by reference numeral 101 has succeeded.
  • the determination device 10 can detect a blind attack and determine whether or not the blind attack was successful.
  • the determination device 10 includes a storage section 11 and a control section 12 .
  • the storage unit 11 stores data referred to when the control unit 12 executes various processes and data generated by executing various processes.
  • the storage unit 11 stores a communication log that is a target of attack detection, session data (details will be described later) extracted by the control unit 12, detection data (details will be described later), and whether or not the attack was successful. It stores determination result data and the like.
  • the communication log includes, for each identification information (No.) of the communication log targeted for attack detection, the time of occurrence of communication, the source and destination of the request, the URL of the request destination, and the response. status code, response size, etc.
  • the communication log is input via an input/output unit (not shown) of the determination device 10, for example.
  • the control unit 12 controls the entire determination device 10 .
  • the control unit 12 includes a session extraction unit 121 , a blind attack detection unit 122 , a success/failure determination unit 123 , and a determination result output unit 124 .
  • the session extraction unit 121 extracts communication logs of the same session from the communication logs. For example, the session extraction unit 121 extracts, from the communication log, a series of communications with the same source and destination and within a predetermined period of time as the communication log of the same session.
  • the session extraction unit 121 detects [1,2,5], [3,4], [ 6] are extracted as communication logs of the same session. Then, the session extraction unit 121 assigns session identification information (for example, S1, S2, S3) to each of the extracted communication logs.
  • session identification information for example, S1, S2, S3
  • the blind attack detection unit 122 uses existing signature detection, for example, to determine whether or not the request indicated by the communication log is a blind attack.
  • the blind attack detection unit 122 detects [2, 3, 4, 5] having the above detection signature from the communication log shown in FIG. 3 as the communication log of the blind attack (see FIG. 4).
  • the blind attack detection unit 122 also identifies the target location of the blind attack and the content of the blind attack from the communication log of the blind attack, for example, as shown in FIG. Then, the blind attack detection unit 122 stores the identification information (No.) of the communication log in which the blind attack was detected, the target location of the blind attack, the information indicating the details of the blind attack (see FIG. 4), etc. as detection data. 11.
  • the success/failure determination unit 123 extracts, from among the communication logs of the same session, communication logs with the same attack target location. Then, if the success/failure determination unit 123 determines that there are multiple types of attack contents in the extracted communication log and multiple response status codes and response sizes, it determines that the blind attack was successful. On the other hand, the success/failure determination unit 123 determines that the blind attack has failed when it determines that the contents of the attack in the extracted communication log are not multiple types, the response status code is not multiple, or the response size is not multiple. .
  • the success/failure determination unit 123 refers to the session data and extracts the communication log of the same session from the communication log. Then, the success/failure determination unit 123 refers to the detection data, and identifies, from the extracted communication logs, a communication log in which a blind attack is detected and the location of the attack target matches.
  • the blind attacks in communication logs Nos. 2 and 5 belong to session S1, and the attack target locations match with the parameter id. Further, since the contents of the blind attacks in the communication logs of Nos. 2 and 5 are different, and the status codes and response sizes are different, the success/failure determination unit 123 determines that the attacks have succeeded.
  • the blind attacks in the communication logs Nos. 3 and 4 belong to session S2, and the attack target locations match with the parameter pw.
  • the details of the blind attacks in communication logs Nos. 3 and 4 are different, the status code and response size are the same, so the success/failure determination unit 123 determines that the attack has failed.
  • the determination result output unit 124 outputs the determination result by the success/failure determination unit 123 .
  • the judgment result output unit 124 outputs the judgment result that the communication logs Nos. 2 and 5 indicate the blind attacks against the parameter id and that the attacks are successful.
  • the determination device 10 detects a blind attack without modifying an existing system, and determines whether or not the blind attack has succeeded from the behavior of communication between sessions in which the attack is being performed. can do.
  • the session extraction unit 121 determines whether the communication log is a new session or a part of an existing session based on the session data. Accordingly, the session data is updated (S12).
  • the process ends. If the blind attack detection unit 122 detects the new communication log as a blind attack (Yes in S13), the success/failure determination unit 123 determines whether the blind attack succeeded or failed based on the session data (S14). Then, the judgment result output unit 124 outputs the judgment result of S14 (S15). On the other hand, if the new communication log is not detected as a blind attack by the blind attack detection unit 122 (No in S13), the process ends.
  • the determination device 10 detects a blind attack without modifying the existing system, and determines whether or not the blind attack was successful from the behavior of communication between sessions in which the attack is being performed. can do. As a result, maintenance personnel and administrators can distinguish between priority alerts and non-prioritized alerts regarding the above-described attacks, so security operations can be performed efficiently.
  • the blind attack detection unit 122 in the determination device 10 may be installed outside the determination device 10 .
  • the blind attack detection unit 122 may be realized by an attack detection device such as a WAF (Web Application Firewall) installed outside the determination device 10, as shown in (1) and (2) of FIG. .
  • the determination device 10 may have a configuration (in-line configuration) that is directly connected to a web server to be used for determination of success or failure of an attack, as shown in FIG. 7(1), or as shown in FIG. 7(2).
  • a configuration (tap configuration) that connects to a web server via an attack detection device such as a WAF may be used.
  • each constituent element of each part shown in the figure is functionally conceptual, and does not necessarily need to be physically configured as shown in the figure.
  • the specific form of distribution and integration of each device is not limited to the illustrated one, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Can be integrated and configured.
  • all or any part of each processing function performed by each device can be implemented by a CPU and a program executed by the CPU, or implemented as hardware based on wired logic.
  • the determination device 10 described above can be implemented by installing a program as package software or online software on a desired computer.
  • the information processing device can function as the determination device 10 by causing the information processing device to execute the above program.
  • the information processing apparatus referred to here includes a desktop or notebook personal computer.
  • information processing devices include mobile communication terminals such as smartphones, mobile phones and PHS (Personal Handyphone Systems), and terminals such as PDAs (Personal Digital Assistants).
  • the determination device 10 can also be implemented as a server device that uses a terminal device used by a user as a client and provides the client with services related to the above processing.
  • the server device may be implemented as a web server, or may be implemented as a cloud that provides services related to the above processing by outsourcing.
  • FIG. 8 is a diagram showing an example of a computer that executes a determination program.
  • the computer 1000 has a memory 1010 and a CPU 1020, for example.
  • Computer 1000 also has hard disk drive interface 1030 , disk drive interface 1040 , serial port interface 1050 , video adapter 1060 and network interface 1070 . These units are connected by a bus 1080 .
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012 .
  • the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • Hard disk drive interface 1030 is connected to hard disk drive 1090 .
  • a disk drive interface 1040 is connected to the disk drive 1100 .
  • a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100 .
  • Serial port interface 1050 is connected to mouse 1110 and keyboard 1120, for example.
  • Video adapter 1060 is connected to display 1130, for example.
  • the hard disk drive 1090 stores, for example, an OS 1091, application programs 1092, program modules 1093, and program data 1094. That is, a program that defines each process executed by the determination device 10 is implemented as a program module 1093 in which computer-executable code is described. Program modules 1093 are stored, for example, on hard disk drive 1090 .
  • the hard disk drive 1090 stores a program module 1093 for executing processing similar to the functional configuration of the determination device 10 .
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the data used in the processes of the above-described embodiments are stored as program data 1094 in the memory 1010 or the hard disk drive 1090, for example. Then, the CPU 1020 reads out the program modules 1093 and program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary and executes them.
  • the program modules 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program modules 1093 and program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Program modules 1093 and program data 1094 may then be read by CPU 1020 through network interface 1070 from other computers.
  • LAN Local Area Network
  • WAN Wide Area Network
  • determination device 11 storage unit 12 control unit 121 session extraction unit 122 blind attack detection unit 123 success/failure determination unit 124 determination result output unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

判定装置(10)は、攻撃の検知対象の通信ログから、同じセッションの一連の通信ログを抽出し、攻撃検知シグネチャにより、ブラインド攻撃を検知する。また、判定装置(10)は、ブラインド攻撃を検知した通信ログから、ブラインド攻撃の攻撃対象の箇所および攻撃の内容を特定する。次に、判定装置(10)は、同じセッションの一連の通信ログのうち、ブラインド攻撃を検知した通信ログについて、攻撃対象の箇所が一致する通信ログを抽出する。次に、判定装置(10)は、抽出した通信ログに、攻撃の内容が複数種類あり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、一連の通信ログの示す通信によるブラインド攻撃が成功したと判定する。

Description

判定装置、判定方法、および、判定プログラム
 本発明は、ブラインド攻撃が成功したか否かを判定するための、判定装置、判定方法、および、判定プログラムに関する。
 従来、ウェブサーバ等への攻撃を検知する技術が提案されている。しかし、すべての攻撃を検知してアラートを発すると、保守者や監視者がアラートを見逃してしまう場合がある。したがって、攻撃が成功した場合のみ、アラートを発することが好ましい。ここで、従来、攻撃が成功したか否かを、ウェブサーバ等へ攻撃を行った際のレスポンスを検査することにより判定する技術がある(特許文献1参照)。
特許第6708794号公報
 しかし、従来技術は、攻撃による痕跡がウェブサーバ等へ攻撃を行った際のレスポンスに出現することを前提としている。例えば、ブラインドSQLインジェクション、ブラインドOSコマンドインジェクション等、攻撃対象に対し、それぞれ異なるパラメタを設定したリクエストを送信し、そのレスポンスの違いから、情報を探る攻撃(ブラインド攻撃)の場合、攻撃の痕跡が明示的にレスポンスに出現しない。このため、従来技術では、攻撃が成功したか否かが判定できなかった。
[例1:ブラインドSQLインジェクションの場合]
 例えば、ウェブアプリケーション/index.phpにSQLインジェクションの脆弱性が存在し、以下のようなブラインド攻撃を受けた場合を考える。
GET /index.php?id=“1 AND user() = ‘admin’ #”
GET /index.php?id=“1 AND user() != ‘admin’#”
 このブラインド攻撃が成功すると、DB(データベース)に接続しているユーザがadminであるという情報が漏洩する。この攻撃は成功しても、レスポンスの内容に攻撃の痕跡(例えば、adminという文字列)が出現しない。
[例2:ブラインドOSコマンドインジェクション]
 また、以下のようなブラインド攻撃を受けた場合を考える。
GET /index.php?name=x; X=$(cat /etc/passwd|tail -n 1|cut -f 1 -d":");test $X = ”admin”
GET /index.php?name=x; X=$(cat /etc/passwd|tail -n 1|cut -f 1 -d":");test $X != ”admin”
 このブラインド攻撃が成功すると、最近作成されたユーザ名がadminであるという情報が漏洩する。例1と同様に、この攻撃も成功しても、レスポンスの内容に攻撃の痕跡(例えば、adminという文字列)が出現しない。
 そこで、本発明は、前記した問題を解決し、ブラインド攻撃が成功したか否かを判定することを課題とする。
 前記した課題を解決するため、本発明は、攻撃の検知対象の通信ログから、同じセッションの一連の通信ログを抽出するセッション抽出部と、前記通信ログのリクエスト先のURLを用いて、ブラインド攻撃の通信ログを検知し、ブラインド攻撃を検知した前記通信ログから、ブラインド攻撃の攻撃対象の箇所および攻撃の内容を特定する攻撃検知部と、抽出された前記同じセッションの一連の通信ログのうち、前記攻撃対象の箇所が一致する通信ログを抽出し、抽出した前記通信ログに、攻撃の内容が複数種類あり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、前記一連の通信ログの示す通信によりブラインド攻撃が成功したと判定する成否判定部と、前記判定の結果を出力する判定結果出力部とを備えることを特徴とする。
 本発明によれば、ブラインド攻撃が成功したか否かを判定することができる。
図1は、判定装置の動作概要を説明するための図である。 図2は、判定装置の構成例を示す図である。 図3は、図2の通信ログの例を示す図である。 図4は、図2の検知データの例を示す図である。 図5は、図2の成否判定部による成否判定を説明するための図である。 図6は、判定装置の処理手順の例を示すフローチャートである。 図7は、判定装置を含むシステムの構成例を示す図である。 図8は、判定プログラムを実行するコンピュータの構成例を示す図である。
 以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、以下に説明する実施形態に限定されない。
[概要]
 本実施形態の判定装置10の概要を説明する。なお、以下の説明において、ブラインド攻撃とは、攻撃対象に対し、異なるパラメタを設定したリクエストを送信し、そのリクエストに対するレスポンスの違いから、情報を探る攻撃である。
 例えば、図1に示すように、判定装置10は、ウェブサーバとの通信の通信ログから、ウェブサーバへのリクエスト((1))と、そのリクエストに対するレスポンスのステータスコードおよびレスポンスサイズ((2))とを取得する。そして、判定装置10は、取得したデータに基づき、同じセッション間でブラインド攻撃を特定し、ステータスコードやレスポンスサイズから攻撃の成否を判定する((3))。
 例えば、判定装置10は、取得した通信ログの中から、同じセッションの一連の通信ログ(図1の符号101参照)を抽出する。そして、判定装置10は、抽出した一連の通信ログのリクエスト先のURL等から、一連の通信がブラインド攻撃であるか否かを判定する。
 ここで判定装置10が、一連の通信をブラインド攻撃と判定し、攻撃対象箇所が同じ(例えば、URLのパラメタid)であり、攻撃の内容(例えば、リクエストに設定されたパラメタ等)が異なり、かつ、レスポンスのステータスコードおよびレスポンスサイズが異なる場合、判定装置10は、符号101に示す一連の通信によるブラインド攻撃は成功したと判定する。
 このようにすることで、判定装置10は、ブラインド攻撃を検知し、そのブラインド攻撃が成功したか否かを判定することができる。
[構成例]
 次に、図2を用いて、判定装置10の構成例を説明する。判定装置10は、記憶部11と、制御部12とを備える。記憶部11は、制御部12が各種処理を実行する際に参照するデータや、各種処理の実行により生成されたデータを記憶する。
 例えば、記憶部11は、攻撃の検知対象の通信ログである通信ログ、制御部12により抽出されたセッションデータ(詳細は後記)、検知データ(詳細は後記)、攻撃が成功したか否かの判定結果データ等を記憶する。
 通信ログは、例えば、図3に示すように、攻撃の検知対象の通信ログの識別情報(No.)ごとに、通信の発生時刻、リクエストの送信元および送信先、リクエスト先のURLと、レスポンスのステータスコード、レスポンスサイズ等を含む。なお、通信ログは、例えば、判定装置10の入出力部(図示省略)経由で入力される。
 制御部12は、判定装置10全体の制御を司る。制御部12は、セッション抽出部121と、ブラインド攻撃検知部122と、成否判定部123と、判定結果出力部124とを備える。
 セッション抽出部121は、通信ログから同じセッションの通信ログを抽出する。例えば、セッション抽出部121は、通信ログから、送信元および送信先が同じで所定時間以内に行われた一連の通信の通信ログを、同じセッションの通信ログとして抽出する。
 例えば、セッション抽出部121は、図3に示す通信ログから、送信元および送信先が同じで、T=5以内に通信が行われた[1,2,5]、[3,4]、[6]の通信ログを、それぞれ同じセッションの通信の通信ログとして抽出する。そして、セッション抽出部121は、抽出した通信ログそれぞれにセッションの識別情報(例えば、S1,S2,S3)を付与する。
 その後、セッション抽出部121は、セッションの識別情報と当該セッションに対応する通信ログの識別情報とを示した情報(例えば、S1=[1,2,5]、S2=[3,4]、S3=[6])をセッションデータとして記憶部11に格納する。
 図2の説明に戻る。ブラインド攻撃検知部122は、例えば、既存のシグネチャ検知を利用して、通信ログの示すリクエストがブラインド攻撃か否かを判定する。
 例えば、検知シグネチャを、正規表現“AND .* [!=<>]+ .* #”とした場合を考える。この場合、ブラインド攻撃検知部122は、図3に示す通信ログから、上記の検知シグネチャを持つ[2,3,4,5]を、ブラインド攻撃の通信ログとして検知する(図4参照)。
 なお、ブラインド攻撃検知部122は、例えば、図4に示すように、ブラインド攻撃の通信ログから、ブラインド攻撃の対象箇所およびブラインド攻撃の内容の特定も行う。そして、ブラインド攻撃検知部122は、ブラインド攻撃を検知した通信ログの識別情報(No.)、ブラインド攻撃の対象箇所、ブラインド攻撃の内容等を示した情報(図4参照)を検知データとして記憶部11に格納する。
 なお、ブラインド攻撃検知部122がブラインド攻撃の検知に用いるシグネチャは、上記の正規表現“AND .* [!=<>]+ .* #”の他、正規表現“test \$.+ !?= ”、正規表現“test \$.+ -(z|n|eq|ne|gt|ge|lt|le)”等であってもよい。ブラインド攻撃検知部122が、ブラインド攻撃シグネチャとして、正規表現“test \$.+ !?= ”、正規表現“test \$.+ -(z|n|eq|ne|gt|ge|lt|le)”を用いることで、ブラインドOSコマンドインジェクションによる攻撃を検知することができる。
 図2の説明に戻る。成否判定部123は、同じセッションの通信ログのうち、攻撃対象の箇所が一致する通信ログを抽出する。そして、成否判定部123は、抽出した通信ログの攻撃の内容が複数種類であり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、ブラインド攻撃に成功したと判定する。一方、成否判定部123は、抽出した通信ログの攻撃の内容が複数種類ではない、レスポンスのステータスコードが複数ない、または、レスポンスサイズが複数ないと判定した場合、ブラインド攻撃に失敗したと判定する。
 例えば、成否判定部123は、セッションデータを参照して、通信ログから同じセッションの通信ログを抽出する。そして、成否判定部123は、検知データを参照して、抽出した通信ログから、ブラインド攻撃が検知され、かつ、攻撃対象の箇所が一致する通信ログを特定する。
 例えば、図5に示す通信ログにおいて、No.2,5の通信ログのブラインド攻撃は、セッションS1に属し、攻撃対象箇所がパラメタidで一致する。また、No.2,5の通信ログのブラインド攻撃の内容がそれぞれ異なり、かつ、ステータスコードおよびレスポンスサイズがそれぞれ異なることから、成否判定部123は攻撃に成功したと判定する。
 一方、図5に示す通信ログにおいて、No.3,4の通信ログのブラインド攻撃は、セッションS2に属し、攻撃対象箇所がパラメタpwで一致する。また、No.3,4の通信ログのブラインド攻撃の内容はそれぞれ異なるが、ステータスコードおよびレスポンスサイズがそれぞれ同じであるので、成否判定部123は攻撃に失敗した判定する。
 図2の説明に戻る。判定結果出力部124は、成否判定部123による判定結果を出力する。判定結果出力部124は、通信ログのうち、No.2,5の通信ログは、パラメタidに対するブラインド攻撃を示し、攻撃に成功したという判定結果を出力する。
 このようにすることで、判定装置10は、既存のシステムを改変することなく、ブラインド攻撃を検知し、攻撃が行われているセッション間の通信の挙動からブラインド攻撃が成功したか否かを判定することができる。
 [処理手順の例]
 次に、図6を用いて判定装置10の処理手順の例を説明する。まず、判定装置10が新たな通信ログを取得すると(S11)、セッション抽出部121でセッションデータをもとに通信ログが新たなセッションか既存のセッションの一部かを判定し、判定の結果に応じて、セッションデータを更新する(S12)。
 S12の後、S11で取得した新たな通信ログが、ブラインド攻撃検知部122でブラインド攻撃として検知されたか否かを判定する(S13)。ブラインド攻撃検知部122で当該新たな通信ログがブラインド攻撃として検知された場合(S13でYes)、成否判定部123でセッションデータをもとにブラインド攻撃の成否を判定する(S14)。そして、判定結果出力部124で、S14の判定の結果を出力する(S15)。一方、ブラインド攻撃検知部122で当該新たな通信ログがブラインド攻撃として検知されなかった場合(S13でNo)、処理を終了する。
 判定装置10が上記の処理を行うことで、既存のシステムを改変することなく、ブラインド攻撃を検知し、攻撃が行われているセッション間の通信の挙動からブラインド攻撃が成功したか否かを判定することができる。その結果、保守者や管理者は、上記の攻撃に関し、優先すべきアラートとそうでないアラートを分別できるので、セキュリティオペレーションを効率的に行うことができる。
[その他の実施形態]
 なお、判定装置10におけるブラインド攻撃検知部122は、判定装置10の外部に設置されていてもよい。例えば、ブラインド攻撃検知部122は、図7の(1)および(2)に示すように、判定装置10の外部に設置されるWAF(Web Application Firewall)等の攻撃検知機器により実現されてもよい。また、判定装置10は、図7の(1)に示すように、攻撃の成否の判定対象となるウェブサーバと直接接続する構成(インライン構成)としてもよいし、図7の(2)に示すように、ウェブサーバとWAF等の攻撃検知機器経由で接続する構成(タップ構成)としてもよい。
[システム構成等]
 また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、前記した実施形態において説明した処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 前記した判定装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を判定装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
 また、判定装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の処理に関するサービスを提供するサーバ装置として実装することもできる。この場合、サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図8は、判定プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の判定装置10が実行する各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、判定装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続される他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 判定装置
11 記憶部
12 制御部
121 セッション抽出部
122 ブラインド攻撃検知部
123 成否判定部
124 判定結果出力部

Claims (5)

  1.  攻撃の検知対象の通信ログから、同じセッションの一連の通信ログを抽出するセッション抽出部と、
     前記通信ログのリクエスト先のURLを用いて、ブラインド攻撃の通信ログを検知し、ブラインド攻撃を検知した前記通信ログから、ブラインド攻撃の攻撃対象の箇所および攻撃の内容を特定する攻撃検知部と、
     抽出された前記同じセッションの一連の通信ログのうち、前記ブラインド攻撃の攻撃対象の箇所が一致する通信ログを抽出し、抽出した前記通信ログに、攻撃の内容が複数種類あり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、前記一連の通信ログの示す通信によりブラインド攻撃が成功したと判定する成否判定部と、
     前記判定の結果を出力する判定結果出力部と
     を備えることを特徴とする判定装置。
  2.  前記攻撃検知部は、
     前記通信ログのリクエスト先のURLに対し、攻撃検知シグネチャを適用することにより、ブラインド攻撃の通信ログを検知する
     ことを特徴とする請求項1に記載の判定装置。
  3.  前記攻撃検知部は、
     正規表現“AND.*[!=<>]+.*#”、“test \$.+ !?=”、および、正規表現“test \$.+ -(z|n|eq|ne|gt|ge|lt|le)”のうち、少なくともいずれか1つを攻撃検知シグネチャとして用いて、ブラインド攻撃の通信ログを検知する
     ことを特徴とする請求項1に記載の判定装置。
  4.  判定装置により実行される判定方法であって、
     攻撃の検知対象の通信ログから、同じセッションの一連の通信ログを抽出する工程と、
     前記通信ログのリクエスト先のURLを用いて、ブラインド攻撃の通信ログを検知し、ブラインド攻撃を検知した前記通信ログから、ブラインド攻撃の攻撃対象の箇所および攻撃の内容を特定する工程と、
     抽出された前記同じセッションの一連の通信ログのうち、前記ブラインド攻撃の攻撃対象の箇所が一致する通信ログを抽出し、抽出した前記通信ログに、攻撃の内容が複数種類あり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、前記一連の通信ログの示す通信によりブラインド攻撃が成功したと判定する工程と、
     前記判定の結果を出力する工程と
    を含むことを特徴とする判定方法。
  5.  攻撃の検知対象の通信ログから、同じセッションの一連の通信ログを抽出する工程と、
     前記通信ログのリクエスト先のURLを用いて、ブラインド攻撃の通信ログを検知し、ブラインド攻撃を検知した前記通信ログから、ブラインド攻撃の攻撃対象の箇所および攻撃の内容を特定する工程と、
     抽出された前記同じセッションの一連の通信ログのうち、前記ブラインド攻撃の攻撃対象の箇所が一致する通信ログを抽出し、抽出した前記通信ログに、攻撃の内容が複数種類あり、かつ、レスポンスのステータスコードおよびレスポンスサイズが複数あると判定した場合、前記一連の通信ログの示す通信によりブラインド攻撃が成功したと判定する工程と、
     前記判定の結果を出力する工程と
     をコンピュータに実行させるための判定プログラム。
PCT/JP2021/015759 2021-04-16 2021-04-16 判定装置、判定方法、および、判定プログラム WO2022219819A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2021/015759 WO2022219819A1 (ja) 2021-04-16 2021-04-16 判定装置、判定方法、および、判定プログラム
US18/281,761 US20240154976A1 (en) 2021-04-16 2021-04-16 Determination device, determination method, and determination program
JP2023514312A JP7505642B2 (ja) 2021-04-16 2021-04-16 判定装置、判定方法、および、判定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/015759 WO2022219819A1 (ja) 2021-04-16 2021-04-16 判定装置、判定方法、および、判定プログラム

Publications (1)

Publication Number Publication Date
WO2022219819A1 true WO2022219819A1 (ja) 2022-10-20

Family

ID=83640320

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/015759 WO2022219819A1 (ja) 2021-04-16 2021-04-16 判定装置、判定方法、および、判定プログラム

Country Status (3)

Country Link
US (1) US20240154976A1 (ja)
JP (1) JP7505642B2 (ja)
WO (1) WO2022219819A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318734A (ja) * 2001-04-18 2002-10-31 Teamgia:Kk 通信ログ処理方法及びシステム
US20180349602A1 (en) * 2017-06-06 2018-12-06 Sap Se Security testing framework including virtualized server-side platform

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318734A (ja) * 2001-04-18 2002-10-31 Teamgia:Kk 通信ログ処理方法及びシステム
US20180349602A1 (en) * 2017-06-06 2018-12-06 Sap Se Security testing framework including virtualized server-side platform

Also Published As

Publication number Publication date
US20240154976A1 (en) 2024-05-09
JP7505642B2 (ja) 2024-06-25
JPWO2022219819A1 (ja) 2022-10-20

Similar Documents

Publication Publication Date Title
EP3552098B1 (en) Operating system update management for enrolled devices
CN105721461B (zh) 利用专用计算机安全服务的***和方法
US8635700B2 (en) Detecting malware using stored patterns
US8677481B1 (en) Verification of web page integrity
EP2790122B1 (en) System and method for correcting antivirus records to minimize false malware detections
CN109586282B (zh) 一种电网未知威胁检测***及方法
US8776236B2 (en) System and method for providing storage device-based advanced persistent threat (APT) protection
US20070033586A1 (en) Method for blocking the installation of a patch
US8561180B1 (en) Systems and methods for aiding in the elimination of false-positive malware detections within enterprises
CN108924139B (zh) 基于云端提升文件检测效率的方法、装置及执行服务器
EP2417551B1 (en) Providing information to a security application
US11216554B2 (en) Determining apparatus, determining method, and determining program
JP6282217B2 (ja) 不正プログラム対策システムおよび不正プログラム対策方法
EP2417552B1 (en) Malware determination
US8935778B2 (en) Maintaining data integrity
US11550920B2 (en) Determination apparatus, determination method, and determination program
WO2022219819A1 (ja) 判定装置、判定方法、および、判定プログラム
CN115495740A (zh) 一种病毒检测方法和装置
US8918873B1 (en) Systems and methods for exonerating untrusted software components
WO2022219806A1 (ja) 判定装置、判定方法、および、判定プログラム
US9667649B1 (en) Detecting man-in-the-middle and denial-of-service attacks
CN112948831A (zh) 应用程序风险识别的方法和装置
CN113992447B (zh) 一种sql注入告警处理方法及装置
US20230088671A1 (en) Inspection apparatus, inspection method and program
WO2022249416A1 (ja) 分析装置、分析方法、および、分析システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21937013

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023514312

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18281761

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21937013

Country of ref document: EP

Kind code of ref document: A1