JP6142702B2 - 監視装置、監視方法及びプログラム - Google Patents

監視装置、監視方法及びプログラム Download PDF

Info

Publication number
JP6142702B2
JP6142702B2 JP2013140765A JP2013140765A JP6142702B2 JP 6142702 B2 JP6142702 B2 JP 6142702B2 JP 2013140765 A JP2013140765 A JP 2013140765A JP 2013140765 A JP2013140765 A JP 2013140765A JP 6142702 B2 JP6142702 B2 JP 6142702B2
Authority
JP
Japan
Prior art keywords
data
communication
communication data
condition
acquired
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.)
Active
Application number
JP2013140765A
Other languages
English (en)
Other versions
JP2015015581A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013140765A priority Critical patent/JP6142702B2/ja
Priority to US14/291,168 priority patent/US9055096B2/en
Publication of JP2015015581A publication Critical patent/JP2015015581A/ja
Application granted granted Critical
Publication of JP6142702B2 publication Critical patent/JP6142702B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Description

本発明は、ネットワークに接続されたシステムのセキュリティ対策技術に関する。
現在、独自に開発したり、カスタマイズしたマルウェアを利用した攻撃が頻繁に行われるようになってきている。特に、特定の企業を標的とする標的型攻撃の被害事例が増加している。このような被害事例の多くでは、企業内のユーザ端末が遠隔操作型のマルウェアに感染し、感染した端末を踏み台として、他の企業内のユーザ端末に侵入して、遠隔操作型のマルウェアに感染させる攻撃手法が利用されている。
従来のネットワーク監視技術として、マルウェア毎に遠隔操作における通信の通信データのパターンを定義し、ネットワークを流れる通信データとパターンを比較してマルウェアを検知するシグネチャ方式がある。しかし、シグネチャ方式では、既に通信データのパターンが用意されているマルウェアしか検知することができず、カスタマイズされたマルウェアや、独自に開発されたマルウェアは検知できない。
特開2004−179999号公報 特開2006−157144号公報 特開2006−11683号公報
従って、本発明の目的は、一側面によれば、遠隔操作型のマルウェアに感染した端末を踏み台とする、他の端末への攻撃を検知する技術を提供することである。
本発明に係る検知装置は、(A)通信データを取得する取得部と、(B)取得された通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレスとを含む外部通信データをデータ格納部に格納する外部通信特定部と、(C)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された通信データの送信元アドレスを送信先アドレスとする外部通信データをデータ格納部において抽出し、当該外部通信データに対応付けて通信データの送信先アドレスを含むサービス開始データをデータ格納部に格納するサービス開始抽出部と、(D)取得された通信データが、予め規定された範囲外への通信である場合、取得された通信データの送信元アドレスを送信先アドレスとするサービス開始データがデータ格納部に格納されており、取得された通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスとが一致するという条件を含む第3の条件を満たすか判断し、満たしている場合には攻撃検知を通知する検知部とを有する。
一側面によれば、遠隔操作型のマルウェアに感染した端末を踏み台とする、他の端末への攻撃を検知できるようになる。
図1は、システムの一例を示す図である。 図2は、攻撃の一例を示す図である。 図3は、攻撃を検知するための観点を模式的に示す図である。 図4は、第1の実施の形態に係る検知装置の構成例を示す図である。 図5は、第1の実施の形態に係る処理フローを示す図である。 図6は、第1の実施の形態に係る関連付けデータ格納部に格納されるデータの第1の状態例を示す図である。 図7は、第1の実施の形態に係る関連付けデータ格納部に格納されるデータの第2の状態例を示す図である。 図8は、第1の実施の形態に係る処理フローを示す図である。 図9は、第1の実施の形態に係る関連付けデータ格納部に格納されるデータの第3の状態例を示す図である。 図10は、第2の実施の形態に係る検知装置の構成例を示す図である。 図11は、第2の実施の形態に係る処理フローを示す図である。 図12は、外部通信データ格納部に格納されるデータの一例を示す図である。 図13は、第2の実施の形態に係る処理フローを示す図である。 図14は、第3の実施の形態の概要を説明するための図である。 図15は、第3の実施の形態に係る検知装置の構成例を示す図である。 図16は、想定シーケンス格納部に格納されるデータの一例を示す図である。 図17は、第3の実施の形態に係る処理フローを示す図である。 図18は、第3の実施の形態に係る関連付けデータ格納部に格納されるデータの第1の状態例を示す図である。 図19は、第3の実施の形態に係る通信データバッファに格納されるデータの一例を示す図である。 図20は、第3の実施の形態に係る処理フローを示す図である。 図21は、第3の実施の形態に係る関連付けデータ格納部に格納されるデータの第2の状態例を示す図である。 図22は、第4の実施の形態に係る検知装置の構成例を示す図である。 図23は、第4の実施の形態に係る処理フローを示す図である。 図24は、第4の実施の形態に係る通信データバッファに格納されるデータの一例を示す図である。 図25は、第4の実施の形態に係る処理フローを示す図である。 図26は、コンピュータの機能ブロック図である。
[実施の形態1]
本実施の形態に係るシステムの概要を図1を用いて説明する。図1に示すように、インターネット1000には、様々なサーバ2000や攻撃者が操作する攻撃者端末2100と、例えば企業におけるルータなどの通信装置1100も接続されている。通信装置1100には、検知装置1200と、ユーザ端末A、ユーザ端末B及び管理者端末1300を含む複数のユーザ端末や、サーバ等が接続されている。なお、通信装置1100は、当該通信装置1100を介して流れる通信データ(具体的にはパケット)をミラーリングで検知装置1200に出力する。
踏み台を経由して標的のユーザ端末を遠隔操作型マルウェアに感染させる場合、攻撃者端末2100と、踏み台となるユーザ端末Aと、攻撃を受けるユーザ端末Bとの間で、図2に示すような通信が発生する。まず、攻撃者端末2100からユーザ端末Aに対して指令となるデータを載せた通信(すなわち外部通信(1))が発生する。これは例えばHTTP(Hyper Text Transfer Protocol)やHTTPS(Hypertext Transfer Protocol Secure)での通信である。次に、ユーザ端末Aからユーザ端末Bへ実行コードやプログラムを送り込み、実行する通信(サービス開始(2))が発生する。これは例えばSMB(Server Message Block)による通信である。そして、最後に、ユーザ端末Bから攻撃者端末Aに対して、新たなコネクションを構築する通信(外部接続(3))が発生する。コネクションを構築する手順は、例えば3 way handshakeである。外部通信、サービス開始及び外部接続はそれぞれ独立に判断すれば正常な通信であり、攻撃であるとは判定できない。
そこで、本実施の形態では、図3に示すように、攻撃者端末2100からユーザ端末Aへの外部通信と、ユーザ端末Aからユーザ端末Bへのサービス開始の通信と、ユーザ端末Bから攻撃者端末2100への外部接続とで、閉ループが形成される点に着目し、この閉ループを検出するものである。
このため、本実施の形態における検知装置1200は、図4に示すような構成を有する。すなわち、検知装置1200は、通信データ取得部1201と、外部通信抽出部1202と、サービス開始抽出部1204と、外部接続抽出部1205と、IPアドレスリスト格納部1203と、関連付けデータ格納部1206と、判定条件格納部1207と、判定部1208と、出力部1209とを有する。
通信データ取得部1201は、通信装置1100から通信データを受信する。IPアドレスリスト格納部1203は、システム内部に属するIPアドレスのリストを格納する。外部通信抽出部1202は、IPアドレスリスト格納部1203に格納されているIPアドレスのリストに基づき、通信データ取得部1201からの通信データが外部通信に該当するか否かなどの判断を行い、外部通信に該当する場合には、関連付けデータ格納部1206に、外部通信データを格納する。
サービス開始抽出部1204は、通信データ取得部1201からの通信データがサービス開始に該当するか否かなどの判断を行い、さらに関連する外部通信データを関連付けデータ格納部1206において抽出して、当該外部通信データに対応付けてサービス開始データを関連付けデータ格納部1206に格納する。
外部接続抽出部1205は、通信データ取得部1201からの通信データが外部接続に該当するか否かなどの判断を行い、通信データが外部接続に該当する場合には、当該外部接続に関連するサービス開始データ及び外部通信データを関連付けデータ格納部1206において抽出する。判定部1208は、抽出されたデータが判定条件格納部1207に格納されている判定条件を満たしているか否かを判定する。判定条件を満たしている場合、判定部1208は、攻撃検出の通知を出力部1209に管理者端末1300へ送信させる。
次に、検知装置1200の処理内容について、図5乃至図9を用いて説明する。通信データ取得部1201は、通信装置1100から通信データを取得すると(図5:ステップS1)、通信データを、外部通信抽出部1202、サービス開始抽出部1204及び外部接続抽出部1205に出力する。
これに対して、外部通信抽出部1202は、通信データを受け取ると、当該通信データに係る通信が外部通信に該当するのか否かを判断するため、通信データの送信元IPアドレス(SrcIPアドレス)が、IPアドレスリスト格納部1203に格納されるIPアドレスのリストに含まれない、すなわちシステム外部の装置のIPアドレスであるか否かを判断する(ステップS3)。この条件を満たさない場合には、サービス開始抽出部1204に処理を指示する。通信データには、パケットのデータと例えば通信装置1100又は検知装置1200が当該パケットを受信した時刻(通信時刻と呼ぶ)とが含まれる。
一方、通信データの送信元IPアドレスがシステム外部の装置のIPアドレスである場合には、外部通信抽出部1202は、受け取った通信データがHTTP又はHTTPSについての通信データであるか否かを判断する(ステップS5)。TCP送信元ポート番号が80や8080、443であるか否かを判定する。この条件を満たさない場合にも、サービス開始抽出部1204に処理を指示する。
受け取った通信データがHTTP又はHTTPSについての通信データであれば、着目すべき外部通信であるので、外部通信抽出部1202は、当該通信データの送信元IPアドレス(SrcIPアドレス)と送信先IPアドレス(DstIPアドレス)と通信時刻とを、関連付けデータ格納部1206に格納する(ステップS7)。なお、着目すべき外部通信が検出された場合には、外部通信抽出部1202は、サービス開始抽出部1204及び外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
例えば、図6に示すようなデータが関連付けデータ格納部1206に格納される。図6の例では、送信元IPアドレスと送信先IPアドレスと通信時刻とを含む外部通信データと、送信先IPアドレスと通信時刻とを含むサービス開始データと、通信時刻を含む外部接続データとが対応付けて格納されるようになっている。この例では、攻撃者端末2100のIPアドレスが「100.100.1.1」であり、ユーザ端末AのIPアドレスが「192.168.0.2」であり、通信時刻が「8:50:0.000」であるものとする。
その後、例えば通信データ取得部1201は、処理終了が指示されているか判断し(ステップS9)、処理終了が指示されていなければ、処理はステップS1に戻る。一方、処理終了が指示されていれば、処理を終了する。
一方、サービス開始抽出部1204は、外部通信抽出部1202から処理を指示されると(ステップS3又はS5:Noルート)、受け取った通信データが、SMBの通信に係る通信データであり且つ当該通信データに含まれるSMBのコマンドがTrans Request等のサービス開始に係る所定のコマンドであるか否かを判断する(ステップS11)。この条件を満たさない場合には、外部接続抽出部1205に処理を指示する。処理は端子Aを介して図8の処理に移行する。
受け取った通信データが、SMBの通信に係る通信データであり且つ当該通信データに含まれるSMBのコマンドがTrans Request等のサービス開始に係る所定のコマンドである場合には、サービス開始抽出部1204は、通信データのSMBの上位プロトコルがDCERPC(Distributed Computing Environment / Remote Procedure Calls)であり且つDCERPCヘッダ内のオプションがStartServiceWであるか否かを判断する(ステップS13)。すなわち、具体的にサービス開始を指示するものであるか否かを判断する。この条件を満たさない場合にも、外部接続抽出部1205に処理を指示する。処理は端子Aを介して図8の処理に移行する。
通信データのSMBの上位プロトコルがDCERPCであり且つDCERPCヘッダ内のオプションがStartServiceWである場合には、サービス開始抽出部1204は、この通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データが、関連付けデータ格納部1206に格納されているか否かを判断する(ステップS15)。なお、サービス開始が検出された場合には、サービス開始抽出部1204は外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
この通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データを、この通信データの通信時刻より前に遡って特定する。
この通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データが関連付けデータ格納部1206において抽出できない場合には、処理はステップS9に移行する。
一方、この通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データが抽出されると、サービス開始抽出部1204は、抽出された外部通信データの通信時刻と、受け取った通信データの通信時刻との時間差が一定以内(例えば100ms以内)であるか否かを判断する(ステップS17)。外部通信データについてのレコードが複数抽出された場合には、それぞれについて本ステップで判断する。
抽出された外部通信データの通信時刻と、受け取った通信データの通信時刻との時間差が一定以内ではない場合、抽出された外部通信データと受け取った通信データとは関連がないものとして、処理はステップS9に移行する。
一方、抽出された外部通信データの通信時刻と、受け取った通信データの通信時刻との時間差が一定以内である場合には、関連する外部通信データが抽出されたことになるので、サービス開始抽出部1204は、受け取った通信データの送信先IPアドレス(DstIPアドレス)と通信時刻とを含むサービス開始データを、抽出された外部通信データに対応付けて関連付けデータ格納部1206に格納する(ステップS19)。その後処理はステップS9に移行する。
例えば、図7に示すようなデータが、関連付けデータ格納部1206に格納されることになる。図7の例では、受け取った通信データの送信先IPアドレスが、「192.168.0.3」であったので、受け取った通信データの送信先IPアドレス「192.168.0.3」と通信時刻「8:50:0.050」を、サービス開始データとして格納する。
外部接続抽出部1205は、サービス開始抽出部1204から指示を受けると、受け取った通信データの送信先IPアドレス(DstIPアドレス)が、IPアドレスリスト格納部1203に格納されているシステム内のIPアドレスのリストに含まれていない、すなわち外部の装置のIPアドレスであるか否かを判断する(ステップS21)。この条件を満たさない場合には、処理は端子Bを介して図5のステップS9に戻る。
一方、受け取った通信データの送信先IPアドレス(DstIPアドレス)が、外部の装置のIPアドレスである場合には、外部接続抽出部1205は、関連付けデータ格納部1206において、受け取った通信データの送信元IPアドレス(SrcIPアドレス)を宛先とするサービス開始データが存在するか判断する(ステップS23)。例えば、受け取った通信データの送信元IPアドレスが「192.168.0.3」を送信先IPアドレスとして含むサービス開始データを検索する。このようなサービス開始データが存在していない場合には、処理は端子Bを介して図5のステップS9に戻る。
一方、関連付けデータ格納部1206において、受け取った通信データの送信元IPアドレス(SrcIPアドレス)を宛先とするサービス開始データが存在する場合には、外部接続抽出部1205は、受け取った通信データの送信先IPアドレスと、抽出されたサービス開始データに関連付けられている外部通信データにおける送信元IPアドレスとが一致するか判断する(ステップS25)。なお、サービス開始データのレコードが複数抽出された場合には、それぞれについて判断する。受け取った通信データの送信先IPアドレスが「100.100.1.1」であれば、図7で示されているレコードは、本ステップの条件を満たしている。このような条件を満たしていない場合には、処理は端子Bを介して図5のステップS9に戻る。
一方、受け取った通信データの送信先IPアドレスと、抽出されたサービス開始データに関連付けられている外部通信データにおける送信元IPアドレスとが一致する場合には、外部接続抽出部1205は、この通信データの通信時刻を、上で述べた処理で抽出されたサービス開始データ及び外部通信データに対応付けて関連付けデータ格納部1206に格納する(ステップS27)。
例えば図9に示すようなデータが関連付けデータ格納部1206に格納されることになる。図9の例では、外部接続データについてその通信データの通信時刻「8:50:0.100」が追加で登録される。
そうすると、外部接続抽出部1205は、判定部1208に対して、関連付けデータ格納部1206に通信時刻を格納したレコードを指定した判定処理を指示する。
判定部1208は、判定条件格納部1207に格納されている判定条件である閾値時間(例えば50ms)を基に、外部接続データの通信時刻とサービス開始データの通信時刻との差が閾値時間以内であるという条件を含む判定条件を満たすか否かを判断する(ステップS29)。なお、外部接続データの通信時刻に代わって又は追加して、外部通信データの通信時刻との時間差を判定するようにしても良い。さらに、外部通信の送信元又は送信先IPアドレス、サービス開始の送信先IPアドレスが、判定条件格納部1207に予め規定されたホワイトリスト(例えば安全な外部サーバ(例えばサーバ2000)や、管理者端末1300のIPアドレス)に一致するか否かを判定するようにしても良い。ホワイトリストに一致する場合には条件を満たさないと判断される。このような条件を満たしていない場合、処理は端子Bを介して図5のステップS9に戻る。
一方、外部接続データの通信時刻とサービス開始データの通信時刻との差が閾値時間以内であるという条件を含む判定条件を満たしている場合には、判定部1208は、出力部1209に対して、判定条件を満たすような外部通信データ、サービス開始データ及び外部接続データを含む攻撃検知メッセージを管理者端末1300へ送信させる(ステップS31)。そして処理は端子Bを介して図5のステップS9に戻る。
このように、踏み台(ユーザ端末A)を経由して標的のユーザ端末(ユーザ端末B)を遠隔操作型のマルウェアに感染させる攻撃に対して、外部通信とサービス開始、サービス開始と外部接続といった関連する通信を抽出して対応付けることで、一連の通信を攻撃として検知することが可能となる。特に、通信データのパターンが用意されていないマルウェアであっても対応可能となる。
[実施の形態2]
通常業務の通信において、外部通信とサービス開始の組み合わせ候補は多数存在することが想定されるので、処理負荷や精度の観点から絞り込みを行うことが好ましい。本実施の形態では、遠隔操作型のマルウェアは、コネクションを構築し且つ維持することで、リアルタイムな遠隔操作を実現する特徴があるため、この特徴に着目して第1の実施の形態を変形する。
本実施の形態に係る検知装置1200bの構成を図10に示す。本実施の形態に係る検知装置1200bは、通信データ取得部1201と、外部通信抽出部1202bと、IPアドレスリスト格納部1203と、サービス開始抽出部1204と、外部接続抽出部1205と、関連付けデータ格納部1206と、判定条件格納部1207と、判定部1208と、出力部1209と、外部通信データ格納部1210とを有する。第1の実施の形態と同じ機能を有する構成要素については、同じ参照符号が付されている。
外部通信抽出部1202bは、外部通信データ格納部1210にコネクションの継続時間を判定するためのデータを保持して、コネクションの継続時間が閾値を超えているか否かを判断した上で、関連付けデータ格納部1206に外部通信データを格納する。
次に、図11乃至図13を用いて、第2の実施の形態に係る処理内容を説明する。
まず、通信データ取得部1201は、通信装置1100から通信データを取得すると(図11:ステップS41)、通信データを、外部通信抽出部1202b、サービス開始抽出部1204及び外部接続抽出部1205に出力する。
これに対して、外部通信抽出部1202bは、通信データを受け取ると、当該通信データに係る通信が外部通信に該当するのか否かを判断する(ステップS43)。本ステップは、ステップS3及びS5と同様である。この条件を満たさない場合には、サービス開始抽出部1204に処理を指示する。すなわち、処理はステップS57に移行する。
一方、受け取った通信データが外部通信に該当する場合には、外部通信抽出部1202bは、受け取った通信データと同一コネクションのデータを、外部通信データ格納部1210において検索する(ステップS45)。初期的には外部通信データ格納部1210には何も格納されていないので、何も検出されない。なお、外部通信が検出された場合には、外部通信抽出部1202bは、サービス開始抽出部1204及び外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
そして、外部通信抽出部1202bは、受け取った通信データと同一コネクションのデータを検出できたか判断する(ステップS47)。初回の場合には検出できないので、外部通信抽出部1202bは、受け取った通信データ、すなわち外部通信の送信元IPアドレス(SrcIPアドレス)及び送信先IPアドレス(DstIPアドレス)、送信元TCPポート番号及び送信先TCPポート番号、開始時刻(受け取った通信データの通信時刻)とを、外部通信データ格納部1210に格納する(ステップS49)。そうすると、例えば図12に示すようなデータが格納される。図12の例では、送信元IPアドレスと、送信元TCPポート番号と、送信先IPアドレスと、送信先TCPポート番号と、開始時刻とがコネクションデータとして格納されるようになっている。処理はステップS55に移行する。
一方、受け取った通信データと同一コネクションのデータを検出できた場合には、外部通信抽出部1202bは、受け取った通信データの通信時刻と、外部通信データ格納部1210に格納されているコネクションデータにおける開始時刻との差であるコネクション継続時間が一定値以上であるか否かを判断する(ステップS51)。コネクション継続時間が一定値未満であれば、本実施の形態では外部通信データを関連付けデータ格納部1206に格納しないので、処理はステップS55に移行する。
一方、コネクション継続時間が一定値以上であれば、着目すべき外部通信であるので、外部通信抽出部1202bは、当該通信データの送信元IPアドレス(SrcIPアドレス)と送信先IPアドレス(DstIPアドレス)と通信時刻とを、関連付けデータ格納部1206に格納する(ステップS53)。例えば、図6に示すようなデータが関連付けデータ格納部1206に格納される。
その後、例えば通信データ取得部1201は、処理終了が指示されているか判断し(ステップS55)、処理終了が指示されていなければ、処理はステップS41に戻る。一方、処理終了が指示されていれば、処理を終了する。
一方、サービス開始抽出部1204は、外部通信抽出部1202bから処理を指示されると(ステップS43:Noルート)、受け取った通信データが、サービス開始に係る通信データであるか否かを判断する(ステップS57)。本ステップは、第1の実施の形態におけるステップS11及びS13と同様である。この条件を満たさない場合には、外部接続抽出部1205に処理を指示する。処理は端子Cを介して図13の処理に移行する。
一方、受け取った通信データがサービス開始に係る通信データであれば、サービス開始抽出部1204は、この通信データに関連する外部通信データ、すなわち、この通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データを、関連付けデータ格納部1206において検索する(ステップS59)。なお、関連する外部通信データの検索条件については、受け取った通信データの通信時刻との時間差が一定以内(例えば100ms以内)であるという条件を付加しても良い。また、サービス開始が検出された場合には、サービス開始抽出部1204は外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
そして、サービス開始抽出部1204は、この通信データに関連する外部通信データが抽出できたか判断する(ステップS61)。この通信データに関連する外部通信データが抽出できなかった場合には、処理はステップS55に移行する。
一方、この通信データに関連する外部通信データが抽出できた場合には、サービス開始抽出部1204は、受け取った通信データの送信先IPアドレス(DstIPアドレス)と通信時刻とを含むサービス開始データを、抽出された外部通信データに対応付けて関連付けデータ格納部1206に格納する(ステップS63)。その後処理はステップS55に移行する。例えば、図7に示すようなデータが、関連付けデータ格納部1206に格納されることになる。
処理は図13の端子C以降の処理に移行して、外部接続抽出部1205は、サービス開始抽出部1204から指示を受けると、受け取った通信データの送信先IPアドレス(DstIPアドレス)が、IPアドレスリスト格納部1203に格納されているシステム内のIPアドレスのリストに含まれていない、すなわち受け取った通信データが外部接続に該当するか否かを判断する(ステップS65)。この条件を満たさない場合には、処理は端子Dを介して図11のステップS55に戻る。なお、本ステップはステップS21と同様である。
一方、受け取った通信データが外部接続に該当する場合には、外部接続抽出部1205は、関連付けデータ格納部1206において、受け取った通信データに関連する、サービス開始データと外部通信データとの組み合わせを検索する(ステップS67)。
より具体的には、受け取った通信データの送信元IPアドレス(SrcIPアドレス)を宛先とするサービス開始データ、及び当該サービス開始データに対応付けられ且つ受け取った通信データの送信先IPアドレスを送信元IPアドレスとする外部通信データを抽出する。本ステップは、ステップS23及びS25と同様である。
ステップS67の条件を満たす、サービス開始データ及び外部通信データの組み合わせを抽出できない場合には(ステップS69:Noルート)、処理は端子Dを介して図11のステップS55に戻る。
受け取った通信データに関連する、サービス開始データと外部通信データとの組み合わせが抽出された場合には(ステップS69:Yesルート)、外部接続抽出部1205は、この通信データの通信時刻を、上で述べた処理で抽出されたサービス開始データ及び外部通信データに対応付けて関連付けデータ格納部1206に格納する(ステップS71)。例えば図9に示すようなデータが関連付けデータ格納部1206に格納されることになる。本ステップは、ステップS27と同様である。
そうすると、外部接続抽出部1205は、判定部1208に対して、関連付けデータ格納部1206に通信時刻を格納したレコードを指定した判定処理を指示する。
判定部1208は、判定条件格納部1207に格納されている判定条件である閾値時間(例えば50ms)を基に、外部接続データの通信時刻とサービス開始データの通信時刻との差が閾値時間以内であるという条件を含む判定条件を満たすか否かを判断する(ステップS73)。なお、外部接続データの通信時刻ではなく、外部通信データの通信時刻との時間差を判定するようにしても良い。さらに、外部通信の送信元又は送信先IPアドレス、サービス開始の送信先IPアドレスが、判定条件格納部1207に予め規定されたホワイトリスト(例えば安全な外部サーバ(例えばサーバ2000)や、管理者端末1300のIPアドレス)に一致するか否かを判定するようにしても良い。ホワイトリストに一致する場合には条件を満たさないと判断される。本ステップは、ステップS29と同様である。このような条件を満たしていない場合、処理は端子Dを介して図11のステップS55に戻る。
一方、外部接続データの通信時刻とサービス開始データの通信時刻との差が閾値時間以内であるという条件を含む判定条件を満たしている場合には、判定部1208は、出力部1209に対して、判定条件を満たすような外部通信データ、サービス開始データ及び外部接続データを含む攻撃検知メッセージを管理者端末1300へ送信させる(ステップS75)。本ステップは、ステップS31と同様である。そして処理は端子Dを介して図11のステップS55に戻る。
このように、踏み台(ユーザ端末A)を経由して標的のユーザ端末(ユーザ端末B)を遠隔操作型のマルウェアに感染させる攻撃に対して、外部通信とサービス開始、サービス開始と外部接続といった関連する通信を抽出して対応付けることで、一連の通信を攻撃として検知することが可能となる。
さらに、外部通信を抽出する際に、コネクション型の通信でコネクションの継続時間が一定値以上のものに限定することで、短時間のWebアクセスなどを外部通信の候補から除外することができる。これによって、攻撃の抽出精度を上げることができるようになる。
[実施の形態3]
一般的な業務の通信において、外部通信及びサービス開始の候補は多数存在することが想定され、問題のない外部通信及びサービス開始の候補を組み合わせてしまう可能性がある。
攻撃において、外部通信の直後に踏み台となるユーザ端末Aから、標的のユーザ端末Bに向けて、サービス開始シーケンスが開始され、その後にシーケンス上で実際のサービス開始が発生する。本実施の形態では、外部通信とサービス開始の組み合わせを見つける際に、外部通信とサービス開始との時間差ではなく、外部通信とサービス開始シーケンスの先頭との時間差を判定条件とする。これによって、本来は関係のない外部通信の候補を除外することができる。
より具体的には、図14に示すように、サービス開始を抽出した際に、サービス開始と同一のコネクションの過去の通信データと、予め分かっている想定シーケンスと比較しながら遡ることで(矢印A)、最後に一致した通信時刻をサービス開始シーケンスの先頭時刻として捉える。これにより、本来は関係のない外部通信の候補を、サービス開始と組み合わせてしまう可能性を低下させることが可能となる。
このため本実施の形態では、図15に示すような検知装置1200cを採用する。
本実施の形態に係る検知装置1200cは、通信データ取得部1201と、外部通信抽出部1202と、IPアドレスリスト格納部1203と、サービス開始抽出部1204cと、外部接続抽出部1205と、関連付けデータ格納部1206cと、判定条件格納部1207と、判定部1208と、出力部1209と、通信データバッファ1211と、想定シーケンス格納部1212とを有する。第1の実施の形態と同じ機能を有する構成要素については、同じ参照符号が付されている。
サービス開始抽出部1204cは、通信データバッファ1211に、以下で示す条件を満たす通信データを格納し、さらに想定シーケンス格納部1212に格納されているデータを用いてサービス開始シーケンスの先頭時刻を特定する。
想定シーケンス格納部1212に格納されるデータは、例えば図16に示すようなデータである。図16の例では、アクセス先のユーザ端末Bに管理ツールをサービスとして送り込み、開始する際のシーケンス例を示している。一般的には、この後、このサービスが任意のプログラムを受け取って実行する。具体的には、順番に、「3 way handshake」(TCPコネクション構築)、「Negotiate Protocol」(認証方法の確認)、「Session Setup AndX」(認証手続き)、「Tree Connect AndX」(利用したリソース(権限とほぼ同義)を要求)、「NT Create AndX」(特定のファイルにアクセス(サービスを送り込む準備)、「NT Create AndX」(特定のファイルにアクセス(サービスを管理するWindows(登録商標)のプロセス)、「SVCCTL:CreateServiceW」(新規サービスの生成)、「SVCCTL:OpenServiceW」(生成したサービスにアクセス)、そして「SVCCT:StartServiceW」(サービスを開始)となる。なお、図16における属性は第4の実施の形態に関係するデータであるので、ここでは説明を省略する。
関連付けデータ格納部1206cに格納されるデータは、サービス開始シーケンスの先頭時刻がサービス開始データに追加される点が異なる。
次に、図17乃至図21を用いて、第3の実施の形態に係る処理内容を説明する。
まず、通信データ取得部1201は、通信装置1100から通信データを取得すると(図17:ステップS81)、通信データを、外部通信抽出部1202、サービス開始抽出部1204c及び外部接続抽出部1205に出力する。
これに対して、外部通信抽出部1202は、通信データを受け取ると、当該通信データに係る通信が外部通信に該当するのか否かを判断する(ステップS83)。本ステップは、ステップS3及びS5と同様である。この条件を満たさない場合には、サービス開始抽出部1204cに処理を指示する。すなわち、処理はステップS87に移行する。
一方、受け取った通信データが外部通信に該当する場合には、外部通信抽出部1202は、この通信データの送信元IPアドレス(SrcIPアドレス)と送信先IPアドレス(DstIPアドレス)と通信時刻とを、関連付けデータ格納部1206cに格納する(ステップS85)。なお、外部通信と判断された場合には、外部通信抽出部1202は、サービス開始抽出部1204c及び外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。例えば図18に示すようなデータが関連付けデータ格納部1206cに格納される。この段階では、図6と同様であるが、サービス開始データについて、サービス開始シーケンスの先頭時刻(シーケンス先頭時刻と記す)が追加格納される点が異なる。 その後、例えば通信データ取得部1201は、処理終了が指示されているか判断し(ステップS95)、処理終了が指示されていなければ、処理はステップS81に戻る。一方、処理終了が指示されていれば、処理を終了する。
一方、サービス開始抽出部1204cは、外部通信抽出部1202から処理を指示されると(ステップS83:Noルート)、受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データであるか否かを判断する(ステップS87)。例えば、送信元又は送信先ポート番号が139又は445であるTCP通信であるか否かを判断する。
受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データではない場合には、処理は端子Cを介して図13の処理に移行する。すなわち、外部接続抽出部1205に処理を指示する。図13は、第2の実施の形態と同様であるので、説明は省略する。
一方、受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データであれば、サービス開始抽出部1204cは、サービス開始に係る通信データであるか否かを判断する(ステップS89)。本ステップは、第1の実施の形態におけるステップS11及びS13と同様である。この条件を満たす場合には、処理は端子Eを介して図20の処理に移行する。なお、サービス開始が検出された場合には、サービス開始抽出部1204cは外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
一方、受け取った通信データがサービス開始に係る通信データでなければ、後にサービス開始シーケンスを後ろから辿る処理を行うため、サービス開始抽出部1204cは、通信データを通信時刻と共に、通信データバッファ1211に格納する(ステップS91)。また、サービス開始抽出部1204cは、通信データバッファ1211において、通信時刻に基づき、一定時間(例えば10分など)経過した通信データを削除する(ステップS93)。そして処理はステップS95に移行する。なお、通信データバッファ1211には、図19に示すように、通信データであるパケットデータと通信時刻との組み合わせが蓄積されて行く。
図20の処理の説明に移行して、サービス開始抽出部1204cは、通信データバッファ1211において、同一コネクションの通信データを新しい順に検索する(ステップS97)。具体的には、最初はサービス開始の時刻、その後は特定された最も古い先頭時刻より前の通信時刻を有する通信データのうち、送信元IPアドレス及び送信先IPアドレス並びに送信元TCPポート番号及び送信先TCPポート番号が一致する通信データを時間を遡るように検索し、条件を満たす最も新しい1パケット分を抽出する。
ここで、サービス開始抽出部1204cは、該当する通信データが抽出でき且つ当該通信データが想定シーケンス格納部1212に格納されている想定シーケンスと一致するか否かを判断する(ステップS99)。想定シーケンスについては、ステップ97を実行する毎にサービス開始より前のパケットを1つずつ繰り上げて判断対象パケットを特定し、比較する。
該当する通信データが抽出でき且つ当該通信データが想定シーケンスと一致する場合には、サービス開始抽出部1204cは、該当する通信データの通信時刻を、サービス開始シーケンスの先頭時刻として保持する(ステップS101)。そして処理はステップS97に戻る。
このような処理を繰り返し実施すれば、想定シーケンスを遡ってサービス開始シーケンスの先頭時刻が巻き戻ることになる。
一方、該当する通信データが抽出できなくなるか、又は抽出できた場合でもその通信データが想定シーケンスと一致しなくなった場合には、サービス開始抽出部1204cは、受け取った通信データに関連する外部通信データ、すなわち、受け取った通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データであって、サービス開始シーケンスの先頭時刻との時間差が一定以内(例えば100ms以内)である外部通信データを、関連付けデータ格納部1206cにおいて検索する(ステップS103)。
そして、サービス開始抽出部1204cは、受け取った通信データに関連する外部通信データが抽出できたか判断する(ステップS105)。この通信データに関連する外部通信データが抽出できなかった場合には、処理は端子Dを介してステップS95に移行する。
一方、この通信データに関連する外部通信データが抽出できた場合には、サービス開始抽出部1204cは、受け取った通信データの送信先IPアドレス(DstIPアドレス)と通信時刻とシーケンス先頭時刻とを含むサービス開始データを、抽出された外部通信データに対応付けて関連付けデータ格納部1206cに格納する(ステップS107)。その後処理は端子Dを介してステップS95に移行する。
例えば、図21に示すようなデータが、関連付けデータ格納部1206cに格納されることになる。図21の例では、サービス開始シーケンスの先頭時刻についても登録するようになっている。
上でも述べたように、外部接続抽出部1205の処理については第2の実施の形態と同様であるから説明を省略する。
このような処理を行うことで、外部通信データとサービス開始データとの対応付けの精度向上によって、精度良く攻撃を検知できるようになる。
[実施の形態4]
第3の実施の形態では、サービス開始と同一のプロトコルという条件で通信データを蓄積しているので、通信データバッファ1211に大量の通信データが蓄積されることになる。これによって記憶容量の問題や検索速度の問題が生ずる可能性がある。本実施の形態では、蓄積すべき通信データを限定することで、効率的にサービス開始シーケンスの先頭時刻を特定できるようにする。
このため本実施の形態では、図22に示すような検知装置1200dを採用する。
本実施の形態に係る検知装置1200dは、通信データ取得部1201と、外部通信抽出部1202と、IPアドレスリスト格納部1203と、サービス開始抽出部1204dと、外部接続抽出部1205と、関連付けデータ格納部1206cと、判定条件格納部1207と、判定部1208と、出力部1209と、通信データバッファ1213と、候補リスト格納部1214とを有する。第1又は第3の実施の形態と同じ機能を有する構成要素については、同じ参照符号が付されている。
サービス開始抽出部1204dは、サービス開始シーケンスの先頭候補パケットのデータを格納する候補リスト格納部1214を参照して、先頭候補パケットに該当する通信データを、通信データバッファ1213に格納する。また、サービス開始抽出部1204dは、サービス開始に係る通信データを受信すると、同一コネクションに係る通信データを通信データバッファ1213において検索して、最も古い通信データの通信時刻を特定する。
候補リスト格納部1214は、例えば、図16において属性が「先頭候補」となっているパケットのデータを格納しておく。サービス開始シーケンスの先頭として抽出すべきパケットとして適切なパケットを予め特定して、候補リスト格納部1214に格納しておく。
次に、図23乃至図25を用いて、第4の実施の形態に係る処理内容を説明する。
まず、通信データ取得部1201は、通信装置1100から通信データを取得すると(図23:ステップS111)、通信データを、外部通信抽出部1202、サービス開始抽出部1204d及び外部接続抽出部1205に出力する。
これに対して、外部通信抽出部1202は、通信データを受け取ると、当該通信データに係る通信が外部通信に該当するのか否かを判断する(ステップS113)。本ステップは、ステップS3及びS5と同様である。この条件を満たさない場合には、サービス開始抽出部1204dに処理を指示する。すなわち、処理はステップS117に移行する。
一方、受け取った通信データが外部通信に該当する場合には、外部通信抽出部1202は、この通信データの送信元IPアドレス(SrcIPアドレス)と送信先IPアドレス(DstIPアドレス)と通信時刻とを、関連付けデータ格納部1206cに格納する(ステップS115)。なお、外部通信と判断された場合には、外部通信抽出部1202は、サービス開始抽出部1204d及び外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。例えば図18に示すようなデータが関連付けデータ格納部1206cに格納される。
その後、例えば通信データ取得部1201は、処理終了が指示されているか判断し(ステップS125)、処理終了が指示されていなければ、処理はステップS111に戻る。一方、処理終了が指示されていれば、処理を終了する。
一方、サービス開始抽出部1204dは、外部通信抽出部1202から処理を指示されると(ステップS113:Noルート)、受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データであるか否かを判断する(ステップS117)。例えば、送信元又は送信先ポート番号が139又は445であるTCP通信であるか否かを判断する。
受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データではない場合には、処理は端子Cを介して図13の処理に移行する。すなわち、外部接続抽出部1205に処理を指示する。図13は、第2の実施の形態と同様であるので、説明は省略する。
一方、受け取った通信データが、サービス開始と同じ通信プロトコルについての通信データであれば、サービス開始抽出部1204dは、候補リスト格納部1214に格納されている候補リストとを照合して、受け取った通信データがサービス開始シーケンスの先頭候補に該当するか否かを判断する(ステップS119)。この条件を満たさない場合には、処理は端子Fを介して図25の処理に移行する。なお、サービス開始と同じ通信プロトコルについての通信データであると判断された場合には、サービス開始抽出部1204dは外部接続抽出部1205に対して、今回受け取った通信データを破棄させる。
一方、受け取った通信データがサービス開始シーケンスの先頭候補に該当する場合には、後に検索を行って最も古い先頭候補を特定するために、サービス開始抽出部1204dは、通信データを通信時刻と共に、通信データバッファ1213に格納する(ステップS21)。また、サービス開始抽出部1204dは、通信データバッファ1213において、通信時刻に基づき、一定時間(例えば10分など)経過した通信データを削除する(ステップS123)。そして処理はステップS125に移行する。なお、通信データバッファ1213には、図24に示すように、先頭候補の通信データであるパケットデータと通信時刻との組み合わせが蓄積されて行く。
図25の処理の説明に移行して、サービス開始抽出部1204dは、通信データバッファ1213において、同一コネクションの通信データ、すなわちサービス開始シーケンスの先頭候補の通信データを検索する(ステップS127)。
そして、サービス開始抽出部1204dは、抽出された通信データのうち、最も古いものの通信時刻をシーケンス先頭時刻として特定する(ステップS129)。
このような処理を実施すれば、想定シーケンスを遡って、サービス開始シーケンスの最も古い先頭時刻を特定できる。
その後、サービス開始抽出部1204dは、受け取った通信データに関連する外部通信データ、すなわち、受け取った通信データの送信元IPアドレス(SrcIPアドレス)を宛先とする外部通信データであって、シーケンス先頭時刻との時間差が一定以内(例えば100ms以内)である外部通信データを、関連付けデータ格納部1206cにおいて検索する(ステップS131)。
そして、サービス開始抽出部1204dは、受け取った通信データに関連する外部通信データが抽出できたか判断する(ステップS133)。この通信データに関連する外部通信データが抽出できなかった場合には、処理は端子Dを介してステップS125に移行する。
一方、この通信データに関連する外部通信データが抽出できた場合には、サービス開始抽出部1204dは、受け取った通信データの送信先IPアドレス(DstIPアドレス)と通信時刻とシーケンス先頭時刻とを含むサービス開始データを、抽出された外部通信データに対応付けて関連付けデータ格納部1206cに格納する(ステップS135)。その後処理は端子Dを介してステップS125に移行する。例えば、図21に示すようなデータが、関連付けデータ格納部1206cに格納されることになる。
上でも述べたように、外部接続抽出部1205の処理については第2の実施の形態と同様であるから説明を省略する。
このような処理を行うことで、外部通信データとサービス開始データとの対応付けの精度向上によって、精度良く攻撃を検知できるようになる。
さらに、効率的にサービス開始シーケンスの先頭時刻を抽出できるようになる。
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、検知装置1200及び1200b乃至1200dの機能ブロック図は一例であって、プログラムモジュール構成とは一致しない場合もある。また、処理フローについても、処理結果が変わらない限り、複数ステップを並列に実行したり、ステップの順番を入れ替えたりしても良い。上で述べた説明では、外部通信抽出部、サービス開始抽出部及び外部接続抽出部が、シリアルに動作する例を示したが、動作開始の判定条件を整えて並列に動作するようにしても良い。
また、上で述べた実施の形態の一部分を組み合わせても良い。さらに、通信装置1100は、スイッチ、ファイアウォールその他の装置であっても良い。また、検知装置1200及び1200b乃至1200dと通信装置1100が一体化される場合もある。
なお、上で述べた想定シーケンス等については特定のプロトコルについて一例を示したが、他のプロトコルについても想定シーケンスを用意して対処できるようにしても良い。さらに、複数種類の想定シーケンスを前提にデータを用意するようにしても良い。
さらに、検知装置1200等は、1台のコンピュータではなく、複数のコンピュータで構成される場合もある。
なお、上で述べた検知装置1200等は、コンピュータ装置であって、図24に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると、以下のようになる。
本実施の形態に係る検知装置は、(A)通信データを取得する取得部と、(B)取得された通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレスとを含む外部通信データをデータ格納部に格納する外部通信特定部と、(C)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された通信データの送信元アドレスを送信先アドレスとする外部通信データをデータ格納部において抽出し、当該外部通信データに対応付けて通信データの送信先アドレスを含むサービス開始データをデータ格納部に格納するサービス開始抽出部と、(D)取得された通信データが、予め規定された範囲外への通信である場合、取得された通信データの送信元アドレスを送信先アドレスとするサービス開始データがデータ格納部に格納されており、取得された通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスとが一致するという条件を含む第3の条件を満たすか判断し、満たしている場合には攻撃検知を通知する検知部とを有する。
このようにデータの関連付けを辿ることで、遠隔操作型のマルウェアに感染した端末を踏み台とする、他の端末への攻撃を検知できるようになる。
なお、上で述べた外部通信データが、取得された通信データの通信時刻をさらに含むようにしても良い。この場合、サービス開始抽出部が、取得された通信データの送信元アドレスを送信先アドレスとし且つ取得された通信データの通信時刻との通信時間差が第1の所定時間内である外部通信データをデータ格納部において抽出するようにしても良い。これによって、攻撃検知の精度が向上する。
また、上で述べたサービス開始データが、取得された通信データの通信時刻をさらに含むようにしても良い。この場合、上で述べた第3の条件が、取得された通信データの通信時刻とサービス開始データに含まれる通信時刻との差が第2の所定時間内であるという条件をさらに含むようにしても良い。これによって、攻撃検知の精度が向上する。
さらに、上で述べた第1の条件が、取得された通信データの送信元アドレスと送信先アドレスとの間のコネクションの継続時間が第3の所定時間以上であるという条件をさらに含むようにしても良い。上で述べた攻撃の特性を利用して攻撃検知を向上させることができる。
さらに、上で述べたサービス開始抽出部が、(c1)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当しない場合、バッファに当該通信データ及び当該通信データの通信時刻とを格納し、(c2)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を満たす場合には、上記バッファにおいて、取得された通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つサービス開始までに行われ且つ予め規定された通信シーケンスのうち最も古い通信データの通信時刻を特定し、(c3)取得された通信データの送信元アドレスを送信先アドレスとし且つ特定された通信時刻との通信時間差が第4の所定時間内である外部通信データをデータ格納部において抽出するようにしても良い。
このようにすれば、外部通信データとサービス開始データとの対応付けの精度を向上させることができるようになる。
また、上で述べたサービス開始抽出部が、(c4)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当しない場合であって、予め規定された通信シーケンスの開始候補に該当する場合には、バッファに当該通信データ及び当該通信データの通信時刻とを格納し、(c5)取得された通信データが、予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を満たす場合には、上記バッファにおいて、取得された通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つ最も古い通信データの通信時刻を特定し、(c6)取得された通信データの送信元アドレスを送信先アドレスとし且つ特定された通信時刻との通信時間差が第5の所定時間内である外部通信データをデータ格納部において抽出するようにしても良い。
このようにすれば、外部通信データとサービス開始データとの対応付けの精度が向上し、効率的な処理が行われるようになる。
なお、上で述べたような処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROMなどの光ディスク、光磁気ディスク、半導体メモリ(例えばROM)、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、RAM等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
通信データを取得する取得部と、
取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレスとを含む外部通信データをデータ格納部に格納する外部通信特定部と、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納するサービス開始抽出部と、
取得された前記通信データが、前記予め規定された範囲外への通信である場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスとが一致するという条件を含む第3の条件を満たすか判断し、満たしている場合には攻撃検知を通知する検知部と、
を有する検知装置。
(付記2)
前記外部通信データが、取得された前記通信データの通信時刻をさらに含み、
前記サービス開始抽出部が、
取得された前記通信データの送信元アドレスを送信先アドレスとし且つ取得された前記通信データの通信時刻との通信時間差が第1の所定時間内である外部通信データを前記データ格納部において抽出する
付記1記載の検知装置。
(付記3)
前記サービス開始データが、取得された前記通信データの通信時刻をさらに含み、
前記第3の条件が、取得された前記通信データの通信時刻と前記サービス開始データに含まれる通信時刻との差が第2の所定時間内であるという条件をさらに含む
付記1又は2記載の検知装置。
(付記4)
前記第1の条件が、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションの継続時間が第3の所定時間以上であるという条件をさらに含む
付記1乃至3のいずれか1つ記載の検知装置。
(付記5)
前記サービス開始抽出部が、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当しない場合、バッファに当該通信データ及び当該通信データの通信時刻とを格納し、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を満たす場合には、前記バッファにおいて、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つ前記サービス開始までに行われ且つ予め規定された通信シーケンスのうち最も古い通信データの通信時刻を特定し、
取得された前記通信データの送信元アドレスを送信先アドレスとし且つ特定された前記通信時刻との通信時間差が第4の所定時間内である外部通信データを前記データ格納部において抽出する
付記1記載の検知装置。
(付記6)
前記サービス開始抽出部が、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当しない場合であって、予め規定された通信シーケンスの開始候補に該当する場合には、バッファに当該通信データ及び当該通信データの通信時刻とを格納し、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を満たす場合には、前記バッファにおいて、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つ最も古い通信データの通信時刻を特定し、
取得された前記通信データの送信元アドレスを送信先アドレスとし且つ特定された前記通信時刻との通信時間差が第5の所定時間内である外部通信データを前記データ格納部において抽出する
付記1記載の検知装置。
(付記7)
通信データを取得し、
取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレスとを含む外部通信データをデータ格納部に格納し、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納し、
取得された前記通信データが、前記予め規定された範囲外への通信である場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスとが一致するという条件を含む第3の条件を満たすか判断し、満たしている場合には攻撃検知を通知する
処理を、コンピュータに実行させるためのプログラム。
(付記8)
通信データを取得し、
取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレスとを含む外部通信データをデータ格納部に格納し、
取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納し、
取得された前記通信データが、前記予め規定された範囲外への通信である場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスとが一致するという条件を含む第3の条件を満たすか判断し、満たしている場合には攻撃検知を通知する
処理を含み、コンピュータにより実行される検知方法。
1201 通信データ取得部
1202,1202b 外部通信抽出部
1203 IPアドレスリスト格納部
1204,1204c,1204d サービス開始抽出部
1205 外部接続抽出部
1206,1206c 関連付けデータ格納部
1207 判定条件格納部
1208 判定部
1209 出力部
1210 外部通信データ格納部
1211,1213 通信データバッファ
1212 想定シーケンス格納部
1214 候補リスト格納部

Claims (8)

  1. 通信データを取得する取得部と、
    取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレス含む外部通信データをデータ格納部に格納する外部通信特定部と、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納するサービス開始抽出部と、
    取得された前記通信データが、前記予め規定された範囲外への通信であるという条件を含む第3の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスと致するという条件を含む第の条件を満たすか判断し、満たしている場合には攻撃検知を通知する検知部と、
    を有する検知装置。
  2. 前記外部通信データが、取得された前記通信データの通信時刻をさらに含み、
    前記サービス開始抽出部が、
    取得された前記通信データの送信元アドレスを送信先アドレスとし且つ取得された前記通信データの通信時刻との通信時間差が第1の所定時間内である外部通信データを前記データ格納部において抽出する
    請求項1記載の検知装置。
  3. 前記サービス開始データが、取得された前記通信データの通信時刻をさらに含み、
    前記第の条件が、取得された前記通信データの通信時刻と前記サービス開始データに含まれる通信時刻との差が第2の所定時間内であるという条件をさらに含む
    請求項1又は2記載の検知装置。
  4. 前記第1の条件が、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションの継続時間が第3の所定時間以上であるという条件をさらに含む
    請求項1乃至3のいずれか1つ記載の検知装置。
  5. 前記サービス開始抽出部が、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ前記予め定められたサービスの開始に該当しない場合、バッファに当該通信データ及び当該通信データの通信時刻格納し、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ前記予め定められたサービスの開始に該当するという条件を満たす場合には、前記バッファにおいて、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つ前記予め定められたサービス開始までに行われ且つ予め規定された通信シーケンスのうち最も古い通信データの通信時刻を特定し、
    取得された前記通信データの送信元アドレスを送信先アドレスとし且つ特定された前記通信時刻との通信時間差が第4の所定時間内である外部通信データを前記データ格納部において抽出する
    請求項1記載の検知装置。
  6. 前記サービス開始抽出部が、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ前記予め定められたサービスの開始に該当しない場合であって、予め規定された通信シーケンスの開始候補に該当する場合には、バッファに当該通信データ及び当該通信データの通信時刻格納し、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ前記予め定められたサービスの開始に該当するという条件を満たす場合には、前記バッファにおいて、取得された前記通信データの送信元アドレスと送信先アドレスとの間のコネクションについての通信データであって且つ最も古い通信データの通信時刻を特定し、
    取得された前記通信データの送信元アドレスを送信先アドレスとし且つ特定された前記通信時刻との通信時間差が第5の所定時間内である外部通信データを前記データ格納部において抽出する
    請求項1記載の検知装置。
  7. 通信データを取得し、
    取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレス含む外部通信データをデータ格納部に格納し、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納し、
    取得された前記通信データが、前記予め規定された範囲外への通信であるという条件を含む第3の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスと致するという条件を含む第の条件を満たすか判断し、満たしている場合には攻撃検知を通知する
    処理を、コンピュータに実行させるためのプログラム。
  8. 通信データを取得し、
    取得された前記通信データが、ネットワークにおいて予め規定された範囲外からの通信であるという条件を含む第1の条件を満たす場合、送信元アドレス及び送信先アドレス含む外部通信データをデータ格納部に格納し、
    取得された前記通信データが、前記予め規定された範囲内への通信であって且つ予め定められたサービスの開始に該当するという条件を含む第2の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとする外部通信データを前記データ格納部において抽出し、当該外部通信データに対応付けて前記通信データの送信先アドレスを含むサービス開始データを前記データ格納部に格納し、
    取得された前記通信データが、前記予め規定された範囲外への通信であるという条件を含む第3の条件を満たす場合、取得された前記通信データの送信元アドレスを送信先アドレスとするサービス開始データが前記データ格納部に格納されており、取得された前記通信データの送信先アドレスが当該サービス開始データに対応付けられている外部通信データに含まれる送信元アドレスと致するという条件を含む第の条件を満たすか判断し、満たしている場合には攻撃検知を通知する
    処理を含み、コンピュータにより実行される検知方法。
JP2013140765A 2013-07-04 2013-07-04 監視装置、監視方法及びプログラム Active JP6142702B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013140765A JP6142702B2 (ja) 2013-07-04 2013-07-04 監視装置、監視方法及びプログラム
US14/291,168 US9055096B2 (en) 2013-07-04 2014-05-30 Apparatus and method for detecting an attack in a computer network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013140765A JP6142702B2 (ja) 2013-07-04 2013-07-04 監視装置、監視方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2015015581A JP2015015581A (ja) 2015-01-22
JP6142702B2 true JP6142702B2 (ja) 2017-06-07

Family

ID=52133726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013140765A Active JP6142702B2 (ja) 2013-07-04 2013-07-04 監視装置、監視方法及びプログラム

Country Status (2)

Country Link
US (1) US9055096B2 (ja)
JP (1) JP6142702B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6229504B2 (ja) * 2014-01-09 2017-11-15 富士通株式会社 ネットワーク監視装置、監視方法及びプログラム
JP6476853B2 (ja) 2014-12-26 2019-03-06 富士通株式会社 ネットワーク監視システム及び方法
JP6454224B2 (ja) * 2015-06-08 2019-01-16 アラクサラネットワークス株式会社 通信装置
JP6641819B2 (ja) 2015-09-15 2020-02-05 富士通株式会社 ネットワーク監視装置、ネットワーク監視方法及びネットワーク監視プログラム
JP6834385B2 (ja) * 2016-11-15 2021-02-24 富士通株式会社 プログラム、情報処理装置及び情報処理方法
CN110120932B (zh) 2018-02-06 2020-10-23 华为技术有限公司 多路径建立方法及装置
JP7152657B2 (ja) * 2018-09-14 2022-10-13 富士通株式会社 監視装置、監視方法及び監視プログラム
US11012454B1 (en) * 2018-12-21 2021-05-18 NortonLifeLock Inc. Detecting abnormal user behavior via temporally regularized tensor factorization
US11184381B2 (en) * 2020-01-08 2021-11-23 Bank Of America Corporation Real-time validation of application data
US11297085B2 (en) 2020-01-08 2022-04-05 Bank Of America Corporation Real-time validation of data transmissions based on security profiles
US11627152B2 (en) 2020-01-08 2023-04-11 Bank Of America Corporation Real-time classification of content in a data transmission
US11637852B2 (en) * 2021-01-04 2023-04-25 Microsoft Technology Licensing, Llc Internet-facing device identification
CN116318993B (zh) * 2023-03-16 2023-10-27 北京宏志国际科技有限公司 一种物联网产品防御网络有害指令攻击的方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4027213B2 (ja) 2002-11-27 2007-12-26 三菱電機株式会社 侵入検知装置およびその方法
JP4480422B2 (ja) * 2004-03-05 2010-06-16 富士通株式会社 不正アクセス阻止方法、装置及びシステム並びにプログラム
JP4610240B2 (ja) 2004-06-24 2011-01-12 富士通株式会社 分析プログラム、分析方法及び分析装置
JP2006033472A (ja) * 2004-07-16 2006-02-02 Kddi Corp 不正アクセス検知装置
JP4416630B2 (ja) 2004-11-25 2010-02-17 沖電気工業株式会社 監視装置、通信システム、監視方法、および監視プログラム
US7735141B1 (en) * 2005-03-10 2010-06-08 Noel Steven E Intrusion event correlator
US7596097B1 (en) * 2006-03-09 2009-09-29 Cisco Technology, Inc. Methods and apparatus to prevent network mapping
JP2007323428A (ja) * 2006-06-01 2007-12-13 Hitachi Ltd ボット検出装置、ボット検出方法、およびプログラム
US20090276852A1 (en) * 2008-05-01 2009-11-05 International Business Machines Corporation Statistical worm discovery within a security information management architecture

Also Published As

Publication number Publication date
US20150013005A1 (en) 2015-01-08
US9055096B2 (en) 2015-06-09
JP2015015581A (ja) 2015-01-22

Similar Documents

Publication Publication Date Title
JP6142702B2 (ja) 監視装置、監視方法及びプログラム
KR102183897B1 (ko) 네트워크에 대한 인공지능 기반 이상 징후 검출 방법, 장치 및 시스템
JP6641819B2 (ja) ネットワーク監視装置、ネットワーク監視方法及びネットワーク監視プログラム
Narayan et al. A survey of automatic protocol reverse engineering tools
US9369435B2 (en) Method for providing authoritative application-based routing and an improved application firewall
EP2924943B1 (en) Virus detection method and device
JP6502902B2 (ja) 攻撃検知装置、攻撃検知システムおよび攻撃検知方法
JP2016508353A (ja) ネットワークメタデータを処理する改良されたストリーミング方法およびシステム
CN106778229B (zh) 一种基于vpn的恶意应用下载拦截方法及系统
US10348751B2 (en) Device, system and method for extraction of malicious communication pattern to detect traffic caused by malware using traffic logs
JP2014179025A (ja) 接続先情報抽出装置、接続先情報抽出方法、及び接続先情報抽出プログラム
CN104660584B (zh) 基于网络会话的木马病毒分析技术
JP6092759B2 (ja) 通信制御装置、通信制御方法、および通信制御プログラム
JP5531064B2 (ja) 通信装置、通信システム、通信方法、および、通信プログラム
US11595419B2 (en) Communication monitoring system, communication monitoring apparatus, and communication monitoring method
JP6229504B2 (ja) ネットワーク監視装置、監視方法及びプログラム
TW201416851A (zh) 檔案修復系統和方法
CN111131180A (zh) 一种大规模云环境中分布式部署的http协议post拦截方法
JP6476853B2 (ja) ネットワーク監視システム及び方法
US10257093B2 (en) Information processing device, method, and medium
CN105530098B (zh) 一种协议指纹自动提取方法及系统
JP2004318742A (ja) 分散型サービス不能攻撃を防ぐネットワークシステム
JP6063340B2 (ja) 指令元特定装置、指令元特定方法、及び指令元特定プログラム
CN114244610B (zh) 一种文件传输方法、装置,网络安全设备及存储介质
JP5456636B2 (ja) ファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170327

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: 20170411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170424

R150 Certificate of patent or registration of utility model

Ref document number: 6142702

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150