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

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

Info

Publication number
JP2017097625A
JP2017097625A JP2015229172A JP2015229172A JP2017097625A JP 2017097625 A JP2017097625 A JP 2017097625A JP 2015229172 A JP2015229172 A JP 2015229172A JP 2015229172 A JP2015229172 A JP 2015229172A JP 2017097625 A JP2017097625 A JP 2017097625A
Authority
JP
Japan
Prior art keywords
connection
connection destination
terminal device
determination
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015229172A
Other languages
English (en)
Inventor
真史 江村
Masashi Emura
真史 江村
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 JP2015229172A priority Critical patent/JP2017097625A/ja
Priority to US15/337,260 priority patent/US20170149809A1/en
Publication of JP2017097625A publication Critical patent/JP2017097625A/ja
Pending legal-status Critical Current

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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】不正な通信の接続先を検出可能にすること。
【解決手段】判定装置100は、端末装置101と接続先102との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部110に記憶する。判定装置100は、記憶部110に記憶された接続情報に基づいて、端末装置101と接続先102との間の通信における複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出する。判定装置100は、算出した接続タイミングの間隔に基づいて、接続先102の正当性を判定する。
【選択図】図1

Description

本発明は、判定プログラム、判定方法、および判定装置に関する。
近年、高度標的型攻撃によるセキュリティ侵害が増えている。高度標的型攻撃では、IT(Information Technology)システムへの侵入を防ぐことが難しく、システムに侵入されることを前提としたセキュリティ対策が重要である。
例えば、システムに侵入されると、システム内部に設置されたマルウェアから、攻撃者が攻撃の指令を出すためのC&C(Command and Control)サーバへの通信が行われる。このため、マルウェアからC&Cサーバへの通信を検出して遮断することが有効なセキュリティ対策となる。
関連する先行技術としては、例えば、システム内部から外部への通信を監視し、その通信先を、C&Cサーバとして知られている通信先のリストと照合するものがある。また、HTTP(HyperText Transfer Protocol)リクエストを解析して特性値を算出し、算出した特性値に基づく統計量に基づいて、算出した特性値が異常値であるか否かを判定し、特性値が異常値である場合に、不正通信の可能性があると判定する技術がある。
特開2014−63424号公報
しかしながら、上述した従来技術では、不正な通信を行う接続先を検出することが難しい。例えば、システム内部から外部への通信を監視し、その通信先を、C&Cサーバとして知られている通信先のリストと照合する方法では、リストに載っていないC&Cサーバへの通信は検出することができない。
一つの側面では、本発明は、不正な通信の接続先を検出可能にする判定プログラム、判定方法、および判定装置を提供することを目的とする。
本発明の一態様によれば、端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶する記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する判定プログラム、判定方法、および判定装置が提案される。
本発明の一側面によれば、不正な通信の接続先を検出可能にすることができる。
図1は、実施の形態にかかる判定方法の一実施例を示す説明図である。 図2は、システム200のシステム構成例を示す説明図である。 図3は、判定装置100のハードウェア構成例を示すブロック図である。 図4は、端末装置201等のハードウェア構成例を示すブロック図である。 図5は、接続情報の具体例を示す説明図である。 図6は、判定結果DB240の記憶内容の一例を示す説明図である。 図7は、判定装置100の機能的構成例を示すブロック図である。 図8は、警告画面の画面例を示す説明図である。 図9は、リスト画面の画面例を示す説明図である。 図10は、判定装置100の第1の判定処理手順の一例を示すフローチャートである。 図11は、判定装置100の第2の判定処理手順の一例を示すフローチャートである。
以下に図面を参照して、本発明にかかる判定プログラム、判定方法、および判定装置の実施の形態を詳細に説明する。
(実施の形態)
図1は、実施の形態にかかる判定方法の一実施例を示す説明図である。図1において、判定装置100は、端末装置101と通信する接続先102の正当性を判定するコンピュータである。端末装置101は、接続先102と通信を行うコンピュータである。接続先102は、端末装置101と通信を行うコンピュータである。
具体的には、端末装置101は、例えば、高度標的型攻撃の対象となり得る組織のシステム内のPC(パーソナル・コンピュータ)やサーバなどである。組織は、例えば、政府機関、公共サービス機関、企業などである。また、接続先102は、例えば、端末装置101を含むシステムの外部のPCやサーバなどである。
高度標的型攻撃とは、特定の組織内の情報を狙って行われる高度なサイバー攻撃の一種である。高度標的型攻撃は、例えば、攻撃対象となる組織の職員宛に、コンピュータウィルスが添付された電子メールを送ることによって開始される。電子メールの文面は、例えば、その組織の職員にしかわからないような文面や、職員が開きそうな文面となっていることが多い。
そして、職員の誰かがPC上で添付ファイルを実行すると、そのPCがマルウェアに感染する。このようにして、システムに侵入されると、システム内のマルウェアと、外部のC&Cサーバとの通信が開始される。C&Cサーバとは、マルウェアに感染したコンピュータに対して、攻撃者が攻撃の指令を出すためのサーバである。
したがって、システム内のマルウェアからC&Cサーバへの通信を検出して遮断することが有効なセキュリティ対策となる。ただし、システム内のマルウェアからC&Cサーバへの不正な通信を、ウェブ閲覧時等の正当な通信と区別するのは難しい。このため、例えば、システム内部から外部への通信を監視し、その通信先を、C&Cサーバとして知られている通信先のリストと照合することで、マルウェアからC&Cサーバへの通信を検出する方法が考えられる。
ところが、この方法では、リスト(いわゆる、ブラックリスト)に載っていないC&Cサーバへの通信は検出することができない。また、C&CサーバのURL(Uniform Resource Locator)は、短期間(例えば、24時間)で生成・削除が繰り返されることが多く、有効なC&CサーバのURLをリスト化して保持することは困難である。
ここで、マルウェアに感染してから攻撃者からの指示を受けるまでの初期段階は、マルウェアからC&Cサーバへの通信が機械的に一定間隔で発生することが多い。一方、攻撃者が攻撃をし始めた後は、初期段階に比べて、マルウェアからC&Cサーバへの一定間隔の通信が発生する可能性は低い。
また、ウェブ閲覧時等の通信では、システム内部から外部への通信が一定間隔で発生することは少ない。すなわち、システム内部から外部への通信がほぼ一定の間隔で発生している場合には、その通信は、システム内のマルウェアからC&Cサーバへの不正な通信である可能性が高いといえる。
そこで、本実施の形態では、マルウェアに感染直後の初期段階はC&Cサーバへの通信が機械的に一定間隔で発生することが多いことを利用して、接続先の正当性を判定し、不正な通信の接続先を検出可能にする判定方法について説明する。
(1)判定装置100は、端末装置101と接続先102との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部110に記憶する。具体的には、例えば、判定装置100は、端末装置101から接続先102への通信を検出すると、当該通信における接続タイミングを特定する接続情報を記憶部110に記憶する。この場合、接続タイミングは、例えば、端末装置101から接続先102への通信を検出した時刻によって表される。
(2)判定装置100は、記憶部110に記憶された接続情報に基づいて、端末装置101と接続先102との間の通信における複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出する。図1の例では、記憶部110に記憶された接続情報から特定される、端末装置101と接続先102との間の通信における接続タイミングを「時刻t1〜t5」とする。
この場合、判定装置100は、時刻t1〜t5に基づいて、接続タイミングの間隔x1〜x4を算出する。接続タイミングの間隔x1は、時刻t1と時刻t2との間の時間間隔である。接続タイミングの間隔x2は、時刻t2と時刻t3との間の時間間隔である。接続タイミングの間隔x3は、時刻t3と時刻t4との間の時間間隔である。接続タイミングの間隔x4は、時刻t4と時刻t5との間の時間間隔である。
(3)判定装置100は、算出した接続タイミングの間隔に基づいて、接続先102の正当性を判定する。上述したように、システムの外部への通信がほぼ一定の間隔で発生している場合、その通信は、システム内のマルウェアからC&Cサーバへの不正な通信である可能性が高いといえる。
このため、判定装置100は、例えば、算出した接続タイミングの間隔のばらつきが所定の基準よりも小さい場合、接続先が正当でないと判定する。具体的には、例えば、判定装置100は、算出した接続タイミングの間隔x1〜x4に基づいて、接続先102への通信が一定間隔で発生しているか否かを判断する。
より詳細に説明すると、判定装置100は、例えば、接続タイミングの間隔x1〜x4のばらつき度合いを示す統計値が所定値未満であれば、接続先102への通信が一定間隔で発生していると判断してもよい。また、例えば、判定装置100は、接続タイミングの間隔x1〜x4のうちの最大値と最小値との差が所定範囲内であれば、接続先102への通信が一定間隔で発生していると判断してもよい。
そして、判定装置100は、接続先102への通信が一定間隔で発生していると判断した場合に、接続先102が正当でないと判定する。一方、接続先102への通信が一定間隔で発生していないと判断した場合には、接続先102が正当であると判定する。図1の例では、端末装置101から接続先102への通信が、ほぼ一定の間隔で発生している。このため、接続先102が正当でないと判定される。
このように、判定装置100によれば、端末装置101と接続先102との間の通信における複数回の接続それぞれの接続タイミングの間隔に基づいて、接続先102の正当性を判定することができる。これにより、例えば、端末装置101とほぼ一定の間隔で通信を行っている接続先102を、正当でない接続先と判定することができる。
このため、攻撃者からの指示を受けるまでの初期段階にマルウェアと一定間隔で通信するC&Cサーバのような、不正な通信の接続先を検出することができる。また、ブラックリストに載っていないC&Cサーバについても、不正な通信の接続先として検出することができる。さらに、接続先102が正当でないと判定された場合には、端末装置101を、マルウェアに感染している可能性が高いコンピュータとして特定することができる。
(システム200のシステム構成例)
つぎに、実施の形態にかかるシステム200について説明する。
図2は、システム200のシステム構成例を示す説明図である。図2において、システム200は、判定装置100と、複数の端末装置201と、管理端末装置202と、ファイアウォール203と、プロキシサーバ204と、を含む。システム200において、判定装置100、端末装置201、管理端末装置202、ファイアウォール203およびプロキシサーバ204は、有線または無線の内部ネットワーク210を介して接続される。内部ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)などである。また、システム200は、有線または無線の外部ネットワーク220を介して外部のコンピュータ(例えば、C&Cサーバ205)に接続される。外部ネットワーク220は、例えば、インターネット、LAN、WANなどである。
ここで、判定装置100は、接続情報DB(データベース)230および判定結果DB240を有し、システム200の外部の接続先の正当性を判定する。判定装置100は、例えば、サーバである。なお、以下の説明では、システム200の外部の接続先を、単に「接続先」と表記する場合がある。
接続情報DB230は、プロキシサーバ204から取得される接続情報を記憶する。接続情報は、端末装置201(または、管理端末装置202)と接続先との間の通信における接続タイミングを特定する情報である。接続情報の具体例については、図5を用いて後述する。図1に示した記憶部110は、例えば、接続情報DB230に相当する。判定結果DB240は、接続先の正当性の判定結果を記憶する。判定結果DB240の記憶内容については、図6を用いて後述する。
端末装置201は、例えば、組織の職員により使用されるPC、ノートPC、タブレットPCや、組織の業務サーバなどのコンピュータである。組織は、例えば、政府機関、公共サービス機関、企業などである。図1に示した端末装置101は、例えば、端末装置201に相当する。管理端末装置202は、システム200の管理者が使用するPC、ノートPCなどのコンピュータである。
ファイアウォール203は、例えば、システム200と外部ネットワーク220との境界に設置され、システム200内外の通信を中継・監視して、外部の攻撃から内部を保護するためのコンピュータである。
プロキシサーバ204は、端末装置201や管理端末装置202に代わって、外部ネットワーク220へのアクセスを行うコンピュータである。すなわち、端末装置201や管理端末装置202から、システム200の外部に通信する際は、プロキシサーバ204を介して行われる。
また、プロキシサーバ204は、端末装置201(または、管理端末装置202)からシステム200の外部への通信を検出すると、当該通信における接続タイミングを特定する接続情報を判定装置100に送信する。接続情報の送信タイミングは、任意に設定可能である。
例えば、プロキシサーバ204は、システム200の外部への通信を検出すると、その都度、判定装置100に接続情報を送信することにしてもよい。また、プロキシサーバ204は、例えば、判定装置100からの送信要求に応じて、判定装置100から指定された期間内の接続情報を送信することにしてもよい。
C&Cサーバ205は、マルウェアに感染したコンピュータに対して、攻撃者が攻撃の指令を出すためのサーバである。攻撃者が使用するコンピュータ(不図示)は、外部ネットワーク220を介してC&Cサーバ205に接続される。図1に示した接続先102は、例えば、C&Cサーバ205に相当する。
なお、システム200において、判定装置100は、プロキシサーバ204から接続情報を取得する際にできるだけ遅延が発生しないように、プロキシサーバ204の近傍に設置されることが望ましい。また、図2の例では、判定装置100、ファイアウォール203およびプロキシサーバ204をそれぞれ別々のコンピュータで実現することにしたが、これに限らない。
例えば、判定装置100は、ファイアウォール203またはプロキシサーバ204により実現されることにしてもよい。また、ファイアウォール203とプロキシサーバ204は、1台のコンピュータで実現されることにしてもよい。また、管理端末装置202は、複数の端末装置201のいずれかであってもよい。
また、上述した説明では、プロキシサーバ204は、端末装置201からシステム200の外部への通信を検出すると、当該通信における接続タイミングを特定する接続情報を判定装置100に送信することにしたが、これに限らない。例えば、プロキシサーバ204は、システム200の外部から端末装置201への通信(例えば、端末装置201からのリクエストに対するレスポンス)を検出すると、当該通信における接続タイミングを特定する接続情報を判定装置100に送信することにしてもよい。
(判定装置100のハードウェア構成例)
図3は、判定装置100のハードウェア構成例を示すブロック図である。図3において、判定装置100は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、ディスクドライブ304と、ディスク305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、判定装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
I/F303は、通信回線を通じてネットワーク(例えば、内部ネットワーク210、外部ネットワーク220)に接続され、ネットワークを介して他の装置(例えば、図2に示したプロキシサーバ204)に接続される。そして、I/F303は、ネットワークと自装置内部とのインターフェースを司り、他の装置からのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリード/ライトを制御する。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する。ディスク305としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
なお、判定装置100は、上述した構成部のほか、例えば、SSD(Solid State Drive)、キーボード、マウス、ディスプレイなどを有することにしてもよい。また、図2に示したファイアウォール203、プロキシサーバ204についても、判定装置100と同様のハードウェア構成により実現することができる。
(端末装置201等のハードウェア構成例)
つぎに、図2に示した端末装置201および管理端末装置202のハードウェア構成について説明する。ここでは、端末装置201および管理端末装置202を「端末装置201等」と表記する。
図4は、端末装置201等のハードウェア構成例を示すブロック図である。図4において、端末装置201等は、CPU401と、メモリ402と、ディスクドライブ403と、ディスク404と、I/F405と、ディスプレイ406と、入力装置407と、を有する。また、各構成部はバス400によってそれぞれ接続される。
ここで、CPU401は、端末装置201等の全体の制御を司る。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
ディスクドライブ403は、CPU401の制御に従ってディスク404に対するデータのリード/ライトを制御する。ディスク404は、ディスクドライブ403の制御で書き込まれたデータを記憶する。ディスク404としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
I/F405は、通信回線を通じてネットワーク(例えば、内部ネットワーク210、外部ネットワーク220)に接続され、ネットワークを介して他の装置(例えば、図2に示したプロキシサーバ204)に接続される。そして、I/F405は、ネットワークと自装置内部とのインターフェースを司り、他の装置からのデータの入出力を制御する。
ディスプレイ406は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ406は、例えば、液晶ディスプレイ、CRT(Cathode Ray Tube)などを採用することができる。
入力装置407は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置407は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。なお、端末装置201等は、例えば、ディスクドライブ403、ディスク404を有さないことにしてもよい。
(接続情報の具体例)
つぎに、プロキシサーバ204から判定装置100に送信される接続情報の具体例について説明する。
図5は、接続情報の具体例を示す説明図である。図5において、接続情報500は、クライアントアドレスと、接続先URLと、接続時刻とを含む。
ここで、クライアントアドレスは、システム200内の端末装置201(または、管理端末装置202)のIP(Internet Protocol)アドレスである。接続先URLは、接続先のURLである。接続時刻は、端末装置201(または、管理端末装置202)と接続先との間の通信における接続タイミングを特定する情報であり、例えば、プロキシサーバ204によりシステム200の外部への通信が検出された時刻を示す。
接続情報500によれば、クライアントアドレス「10.0.0.101」の端末装置201から、接続先URL「http://xxx.yyy.com/」の接続先への通信が行われた接続時刻「2015/11/10 12:10:22」を特定することができる。
(判定結果DB240の記憶内容)
つぎに、判定装置100が有する判定結果DB240の記憶内容について説明する。判定結果DB240は、例えば、図3に示した判定装置100のメモリ302、ディスク305などの記憶装置により実現される。
図6は、判定結果DB240の記憶内容の一例を示す説明図である。図6において、判定結果DB240は、クライアントアドレス、接続先URL、接続回数、変動係数および不正通信フラグのフィールドを有する。各フィールドに情報を設定することで、判定結果情報(例えば、判定結果情報600−1〜600−5)がレコードとして記憶される。
クライアントアドレスは、システム200内の端末装置201(または、管理端末装置202)のIPアドレスである。接続先URLは、接続先のURLである。接続回数は、端末装置201(または、管理端末装置202)と接続先とが接続した回数である。
変動係数は、端末装置201(または、管理端末装置202)と接続先との間の通信における接続タイミングの間隔のばらつき度合いを示す統計値に応じて変動する係数である。不正通信フラグは、接続先が正当であるか否かの判定結果を示す。ここでは、不正通信フラグが「0」の場合に、接続先が正当であることを示し、不正通信フラグが「1」の場合に、接続先が正当ではないことを示す。
(判定装置100の機能的構成例)
図7は、判定装置100の機能的構成例を示すブロック図である。図7において、判定装置100は、取得部701と、算出部702と、判定部703と、出力部704と、を含む構成である。取得部701〜出力部704は制御部となる機能であり、具体的には、例えば、図3に示したメモリ302、ディスク305などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F303により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
取得部701は、接続情報を取得する。接続情報は、システム200内の端末装置201(または、管理端末装置202)と接続先との間の通信における接続タイミングを特定する情報である。接続先は、システム200の外部の接続先である。具体的には、例えば、取得部701は、プロキシサーバ204から接続情報を受信することにより、当該接続情報を取得する。
取得された接続情報は、例えば、接続情報DB230(図2参照)に記憶される。なお、接続情報は、例えば、プロキシサーバ204においてシステム200の外部への通信が検出されると、その都度、プロキシサーバ204から判定装置100に送信される。ただし、判定装置100は、例えば、プロキシサーバ204に対して期間を指定して接続情報の送信要求を送信することにしてもよい。これにより、指定した期間内において行われた通信における接続タイミングを特定する接続情報を取得することができる。
算出部702は、取得された接続情報に基づいて、端末装置201(または、管理端末装置202)と接続先との間の通信における複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出する。具体的には、例えば、算出部702は、端末装置201と接続先との組み合わせそれぞれについて、接続情報DB230に記憶された接続情報に基づいて、接続タイミングの間隔を算出する。
以下の説明では、端末装置201(または、管理端末装置202)と接続先との組み合わせを「ペアP」と表記する場合がある。また、端末装置201(または、管理端末装置202)と接続先との間の通信における、前回の接続との接続タイミングの間隔を、単に「接続間隔」と表記する場合がある。
より具体的には、例えば、まず、算出部702は、ペアPそれぞれについて、接続情報DB230から、クライアントアドレスと接続先URLとの組み合わせがペアPと同一の接続情報を取得する。例えば、クライアントアドレス「10.0.0.101」の端末装置201と接続先URL「http://xxx.yyy.com/」の接続先との組み合わせをペアPとする。
この場合、算出部702は、接続情報DB230から、クライアントアドレスが「10.0.0.101」、かつ、接続先URLが「http://xxx.yyy.com/」の接続情報を取得する。そして、算出部702は、取得した各接続情報の接続時刻を時系列にソートして、連続する接続時刻間の時間間隔をそれぞれ算出する。
これにより、端末装置201(または、管理端末装置202)と接続先との間の通信における複数回の接続それぞれの接続間隔を算出することができる。
また、算出部702は、接続情報DB230に記憶された、端末装置201と接続先との間の所定期間T内の通信における複数回の接続それぞれの接続タイミングを特定する接続情報に基づいて、接続間隔を算出することにしてもよい。所定期間Tは、任意に設定可能である。
例えば、所定期間Tの期間長は、数時間から数日程度の長さに設定される。また、所定期間Tの終了日時は、例えば、現在日時や、接続情報DB230に記憶された接続情報が示す接続時刻のうちの最新の接続時刻に設定される。所定期間Tの開始日時は、所定期間Tの終了日時から期間長分遡った時点となる。
これにより、端末装置201と接続先との間の所定期間T外の通信における接続タイミングを特定する接続情報を処理対象から除外することができる。すなわち、過去のどの期間の接続情報を使用して接続間隔を算出するのかを任意に指定することができる。
また、算出部702は、算出した接続間隔に基づいて、接続間隔のばらつき度合いを示す統計値を算出する。ここで、接続間隔のばらつき度合いを示す統計値は、例えば、接続間隔の分散や標準偏差である。具体的には、例えば、算出部702は、ペアPそれぞれについて、下記式(1)を用いて、接続間隔のばらつき度合いを示す統計値を算出することができる。
ただし、σxn 2は、接続間隔の分散の値(分散値)である。xiは、端末装置201(または、管理端末装置202)と接続先との間の通信におけるi回目の接続と(i+1)回目の接続との間の接続間隔である。μnは、端末装置201(または、管理端末装置202)と接続先とがn回接続したときの接続間隔の平均値である。nは、ペアPについての接続情報の数に相当する。
Figure 2017097625
なお、接続間隔のばらつき度合いを示す統計値として、例えば、接続間隔を周波数とみなしたスペクトル分析の結果を用いることにしてもよい。
また、算出部702は、算出した接続間隔の平均値に対する、算出した接続間隔のばらつき度合いを示す統計値の比率を算出する。具体的には、例えば、算出部702は、ペアPそれぞれについて、下記式(2)を用いて、変動係数CVを算出することにしてもよい。変動係数CVは、接続間隔の平均値μnに対する、接続間隔の標準偏差σxnの比率を示す。
Figure 2017097625
算出された各ペアPの変動係数CVは、例えば、判定結果DB240に記憶される。具体的には、例えば、各ペアPのクライアントアドレスと接続先URLと対応付けて、接続回数n、変動係数CVおよび不正通信フラグが記憶される。これにより、新たな判定結果情報がレコードとして判定結果DB240に記憶される。ただし、初期状態では不正通信フラグは「0」である。
判定部703は、算出された接続間隔に基づいて、接続先の正当性を判定する。具体的には、例えば、判定部703は、ペアPそれぞれについて、算出された接続間隔のばらつき度合いを示す統計値に基づいて、接続先の正当性を判定する。
ここで、接続間隔のばらつき度合いを示す統計値が小さいほど、端末装置201(または、管理端末装置202)と接続先との間の通信が一定間隔で発生しているといえる。このため、判定部703は、例えば、算出された接続間隔のばらつき度合いを示す統計値が、予め決められた閾値未満の場合に、接続先が正当でないと判定することにしてもよい。
ただし、接続間隔のばらつき度合いを示す分散や標準偏差の大きさは、接続間隔の平均値の大きさに依存する。すなわち、接続間隔のばらつき度合いを示す分散や標準偏差の大きさから接続先の正当性を判定するには、接続間隔の平均値を考慮して上記閾値を設定することになる。
このため、判定部703は、算出された各ペアPの変動係数CVに基づいて、接続先の正当性を判定することにしてもよい。具体的には、例えば、判定部703は、判定結果DB240を参照して、変動係数CVが閾値CVth未満の場合に、接続先が正当でないと判定する。一方、変動係数CVが閾値CVth以上の場合には、判定部703は、接続先が正当であると判定する。
閾値CVthは、任意に設定可能であり、例えば、50〜100程度の値に設定される。このように、接続間隔のばらつき度合いを示す統計値を接続間隔の平均値で割って正規化することで、例えば、接続先に応じて接続間隔の平均値が変化しても、閾値CVthを用いて、接続先の正当性を判定することができる。
また、判定部703は、端末装置201(または、管理端末装置202)と接続先との間の通信における接続回数nが所定回数Nより大きい場合に、接続先の正当性を判定することにしてもよい。接続回数nは、接続間隔の算出に用いる接続情報の数に相当する。所定回数Nは、任意に設定可能であり、例えば、70〜100程度の値に設定される。
これにより、統計値として信頼できる値が得られるだけの数(標本数)の接続情報が集まるまでの間は、接続先の正当性を判定しないようにすることができる。
判定された判定結果は、各ペアPのクライアントアドレスと接続先URLと対応付けて判定結果DB240に記憶される。例えば、接続先が正当でないと判定された場合は、判定結果情報の不正通信フラグに「1」が設定される。一方、接続先が正当であると判定された場合は、判定結果情報の不正通信フラグに「0」が設定される。
ここで、図6に示した判定結果情報600−1,600−3を例に挙げて、不正通信フラグの設定例について説明する。ここでは、閾値CVthを「CVth=50」とし、所定回数Nを「N=100」とする。また、判定部703は、接続回数nが所定回数Nより大きい場合に、接続先の正当性を判定する場合を想定する。
まず、判定結果情報600−1の接続回数nは、「n=1245」であり、所定回数Nより大きい。また、判定結果情報600−1の変動係数CVは、「CV=3.12」であり、閾値CVth未満である。この場合、判定部703は、判定結果情報600−1の接続先URLの接続先が正当でないと判定する。このため、判定結果情報600−1の不正通信フラグに「1」が設定される。
つぎに、判定結果情報600−3の接続回数nは、「n=55」であり、所定回数N以下である。この場合、判定結果情報600−3の接続先URLの接続先について、正当性の判定は行われないため、判定結果情報600−3の不正通信フラグは「0」のままとなる。また、接続回数nが所定回数N以下の場合は、変動係数CVを算出しなくてもよい。
出力部704は、判定された判定結果を出力する。出力部704の出力形式としては、例えば、I/F303による外部装置への送信、メモリ302やディスク305などの記憶装置への記憶、不図示のディスプレイへの表示、不図示のプリンタへの印刷出力などがある。
具体的には、例えば、出力部704は、接続先が正当でないと判定された場合、端末装置201の識別情報と、接続先の識別情報とを含む警告情報を管理端末装置202に送信することにしてもよい。端末装置201の識別情報は、例えば、クライアントアドレスである。接続先の識別情報は、例えば、接続先URLである。
これにより、システム200の管理者に対して、不正な接続先が検出されたことを通知することができる。なお、管理端末装置202のディスプレイ406に表示される、警告情報を含む警告画面の画面例については、図8を用いて後述する。
また、出力部704は、例えば、判定結果DB240を参照して、判定結果リストを管理端末装置202に送信することにしてもよい。判定結果リストは、例えば、各ペアPのクライアントアドレスと接続先URLと不正通信フラグとを対応付けた判定結果をリスト化して示す情報である。
これにより、管理端末装置202において、端末装置201から接続された各接続先の正当性の判定結果を確認することができる。なお、判定結果リストは、例えば、管理者からの確認要求に応じて、管理端末装置202に送信されることにしてもよい。
また、算出部702は、接続先が不当な接続先である度合いと、接続間隔のばらつき度合いを示す統計値との関係性を表す条件式を用いて、接続先の不審度を算出することにしてもよい。接続先の不審度とは、接続先が不当な接続先である度合いを示す値である。また、算出部702は、接続回数nが所定回数Nより大きい場合に、接続先の不審値を算出することにしてもよい。
具体的には、例えば、算出部702は、下記式(3)〜(5)を用いて、接続先の不審度を算出することにしてもよい。ただし、dは、接続先の不審度である。CVは、変動係数であり、例えば、判定結果DB240から特定される。また、不審度dの最小値は「0」で、最大値は「1」である。そして、不審度dが「1」に近いほど、接続先が不当な接続先である度合いが高いことを示す。
CV<10の場合 ⇒ d=1.0 …(3)
10≦CV≦100の場合 ⇒d=f(CV)=−CV/90+10/9 …(4)
CV>100の場合 ⇒ d=0.0 …(5)
ここで、図6に示した判定結果情報600−4を例に挙げて、不審度dの算出例について説明する。判定結果情報600−4の変動係数CVは「62.5」である。この場合、算出部702は、上記式(4)を用いて、接続先の不審度dを算出する。ここでは、接続先の不審度dは、「0.4」となる。
出力部704は、算出された接続先の不審度を出力する。具体的には、例えば、出力部704は、端末装置201のクライアントアドレスと、接続先の接続先URLと、接続先の不審度dとを対応付けた不審度情報をリスト化して示す不審度リストを管理端末装置202に送信することにしてもよい。
これにより、管理端末装置202において、端末装置201から接続された各接続先の不審度dを確認することができる。なお、管理端末装置202のディスプレイ406に表示される、不審度リストを含むリスト画面の画面例については、図9を用いて後述する。
(警告画面の画面例)
つぎに、管理端末装置202のディスプレイ406に表示される、警告情報を含む警告画面の画面例について説明する。
図8は、警告画面の画面例を示す説明図である。図8において、警告画面800には、警告情報810が表示されている。警告情報810は、接続先URLとクライアントアドレスと検出時刻とを示す。接続先URLは、正当でないと判定された接続先のURLである。クライアントアドレスは、接続元である端末装置201のIPアドレスである。
検出時刻は、接続先が正当でないと判定された時刻である。ただし、検出時刻として、例えば、所定期間Tの終了日時が設定されることにしてもよい。また、検出時刻として、例えば、端末装置201と接続先とが最初に接続された接続時刻が設定されることにしてもよい。
警告画面800によれば、システム200の管理者は、接続先URL「http://xxx.yyy.com/」の接続先が、不正な接続先である可能性が高いと判断することができる。また、クライアントアドレス「10.0.0.101」の端末装置201がマルウェアに感染している可能性が高いと判断することができる。
(リスト画面の画面例)
つぎに、管理端末装置202のディスプレイ406に表示される、不審度リストを含むリスト画面の画面例について説明する。
図9は、リスト画面の画面例を示す説明図である。図9において、リスト画面900には、不審度リスト910が表示されている。不審度リスト910は、接続先URLとクライアントアドレスと不審度とを対応付けた不審度情報(例えば、不審度情報910−1〜910−4)をリスト化して示す情報である。
接続先URLは、接続先のURLである。クライアントアドレスは、接続元である端末装置201のIPアドレスである。不審度は、接続先が不当な接続先である度合いを示す値である。なお、不審度リスト910には、不審度が算出された時刻(例えば、所定期間Tの終了日時)を特定する情報が含まれていてもよい。
リスト画面900によれば、システム200の管理者は、接続先が不当な接続先である度合いを把握することができる。これにより、例えば、閾値判定では検出されないような接続先についても、ある程度不審度が高い場合は調査することが可能となり、不正な通信先の検出漏れを防ぐことができる。また、セキュリティ対策にかけられる人材や時間などを考慮して、複数の接続先から調査対象を容易に絞り込むことができる。
(判定装置100の判定処理手順)
つぎに、判定装置100の判定処理手順について説明する。まず、図10を用いて、プロキシサーバ204から接続情報を受信する度に実行される第1の判定処理手順について説明する。
図10は、判定装置100の第1の判定処理手順の一例を示すフローチャートである。図10のフローチャートにおいて、まず、判定装置100は、プロキシサーバ204から接続情報を受信したか否かを判断する(ステップS1001)。ここで、判定装置100は、接続情報を受信するのを待つ(ステップS1001:No)。
そして、判定装置100は、接続情報を受信した場合(ステップS1001:Yes)、受信した接続情報を参照して、クライアントアドレスと接続先URLとのペアPおよび接続時刻を特定する(ステップS1002)。なお、受信された接続情報は、接続情報DB230に記憶される。
つぎに、判定装置100は、接続情報DB230から、クライアントアドレスと接続先URLとの組み合わせが、特定したペアPと同一の接続情報のうち、接続時刻が所定期間T内の接続情報を取得する(ステップS1003)。ここでは、所定期間Tの開始日時を、特定した接続時刻から24時間遡った時点とし、所定期間Tの終了日時を、特定した接続時刻とする。
つぎに、判定装置100は、取得した接続情報の数を計数することにより、接続回数nを算出する(ステップS1004)。なお、算出された接続回数nは、判定結果DB240内のペアPに対応する判定結果情報に設定される。そして、判定装置100は、算出した接続回数nが所定回数Nより大きいか否かを判断する(ステップS1005)。
ここで、接続回数nが所定回数N以下の場合(ステップS1005:No)、判定装置100は、本フローチャートによる一連の処理を終了する。一方、接続回数nが所定回数Nより大きい場合(ステップS1005:Yes)、判定装置100は、取得した接続情報に基づいて、端末装置201と接続先との間の通信における複数回の接続それぞれの接続間隔を算出する(ステップS1006)。
そして、判定装置100は、算出した接続間隔に基づいて、接続間隔のばらつき度合いを示す統計値を算出する(ステップS1007)。つぎに、判定装置100は、接続間隔の平均値に対する、接続間隔のばらつき度合いを示す統計値の比率を示す変動係数CVを算出する(ステップS1008)。なお、算出された変動係数CVは、判定結果DB240内のペアPに対応する判定結果情報に設定される。
そして、判定装置100は、算出した変動係数CVが閾値CVth未満であるか否かを判断する(ステップS1009)。ここで、変動係数CVが閾値CVth以上の場合には(ステップS1009:No)、判定装置100は、接続先が正当であると判定して(ステップS1010)、本フローチャートによる一連の処理を終了する。なお、接続先が正当であると判定されると、判定結果DB240内のペアPに対応する判定結果情報の不正通信フラグに「0」が設定される。
一方、変動係数CVが閾値CVth未満の場合は(ステップS1009:Yes)、判定装置100は、接続先が正当でないと判定する(ステップS1011)。なお、接続先が正当でないと判定されると、判定結果DB240内のペアPに対応する判定結果情報の不正通信フラグに「1」が設定される。
そして、判定装置100は、ペアPのクライアントアドレスと接続先URLとを含む警告情報を管理端末装置202に送信して(ステップS1012)、本フローチャートによる一連の処理を終了する。
これにより、システム200内の端末装置201から外部の接続先への通信が検出される度に、所定期間T分の接続情報を使用して、接続先の正当性を判定することができる。このため、例えば、マルウェアに感染してから攻撃者からの指示を受けるまでの初期段階において、C&Cサーバ205との不正な通信を検出することが可能となる。
つぎに、図11を用いて、予め決められた日時(例えば、毎日の午前0時)、または、システム200の管理者からの指示に応じて実行される第2の判定処理手順について説明する。なお、管理者からの指示は、例えば、管理端末装置202において入力され、判定装置100に送信される。
図11は、判定装置100の第2の判定処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、判定装置100は、接続情報DB230を参照して、端末装置201と接続先とのペアPのうちの未選択のペアPを選択する(ステップS1101)。
つぎに、判定装置100は、接続情報DB230から、クライアントアドレスと接続先URLとの組み合わせが、特定したペアPと同一の接続情報のうち、接続時刻が所定期間T内の接続情報を取得する(ステップS1102)。ここでは、所定期間Tの開始日時を、特定した接続時刻から24時間遡った時点とし、所定期間Tの終了日時を、特定した接続時刻とする。
つぎに、判定装置100は、取得した接続情報の数を計数することにより、接続回数nを算出する(ステップS1103)。なお、算出された接続回数nは、判定結果DB240内のペアPに対応する判定結果情報に設定される。そして、判定装置100は、算出した接続回数nが所定回数Nより大きいか否かを判断する(ステップS1104)。
ここで、接続回数nが所定回数N以下の場合(ステップS1104:No)、判定装置100は、ステップS1111に移行する。一方、接続回数nが所定回数Nより大きい場合(ステップS1104:Yes)、判定装置100は、取得した接続情報に基づいて、端末装置201と接続先との間の通信における複数回の接続それぞれの接続間隔を算出する(ステップS1105)。
そして、判定装置100は、算出した接続間隔に基づいて、接続間隔のばらつき度合いを示す統計値を算出する(ステップS1106)。つぎに、判定装置100は、接続間隔の平均値に対する、接続間隔のばらつき度合いを示す統計値の比率を示す変動係数CVを算出する(ステップS1107)。なお、算出された変動係数CVは、判定結果DB240内のペアPに対応する判定結果情報に設定される。
そして、判定装置100は、算出した変動係数CVが閾値CVth未満であるか否かを判断する(ステップS1108)。ここで、変動係数CVが閾値CVth以上の場合には(ステップS1108:No)、判定装置100は、接続先が正当であると判定して(ステップS1109)、ステップS1111に移行する。なお、接続先が正当であると判定されると、判定結果DB240内のペアPに対応する判定結果情報の不正通信フラグに「0」が設定される。
一方、変動係数CVが閾値CVth未満の場合は(ステップS1108:Yes)、判定装置100は、接続先が正当でないと判定する(ステップS1110)。なお、接続先が正当でないと判定されると、判定結果DB240内のペアPに対応する判定結果情報の不正通信フラグに「1」が設定される。
そして、判定装置100は、接続情報DB230を参照して、端末装置201と接続先とのペアPのうちの未選択のペアPがあるか否かを判断する(ステップS1111)。ここで、未選択のペアPがある場合(ステップS1111:Yes)、判定装置100は、ステップS1101に戻る。
一方、未選択のペアPがない場合(ステップS1111:No)、判定装置100は、各ペアPのクライアントアドレスと接続先URLと不正通信フラグとを対応付けた判定結果をリスト化して示す判定結果リストを管理端末装置202に送信して(ステップS1112)、本フローチャートによる一連の処理を終了する。
これにより、予め決められた日時や管理者からの指示に応じて、ペアPそれぞれについて、所定期間T分の接続情報を使用して、接続先の正当性を判定することができる。
以上説明したように、実施の形態にかかる判定装置100によれば、端末装置201(または、管理端末装置202)と接続先との間の通信における接続タイミングを特定する接続情報を取得して接続情報DB230に記憶することができる。また、判定装置100によれば、接続情報DB230を参照して、端末装置201と接続先との間の通信における複数回の接続それぞれについての接続間隔を算出することができる。そして、判定装置100によれば、算出した接続間隔のばらつき度合いを示す統計値を算出し、算出した統計値に基づいて、接続先の正当性を判定することができる。
具体的には、例えば、判定装置100は、算出した接続間隔の平均値と、算出した接続間隔のばらつき度合いを示す統計値とに基づいて、変動係数CVを算出する。変動係数CVは、接続間隔の平均値に対する、算出した接続間隔のばらつき度合いを示す統計値の比率を示す。そして、判定装置100は、算出した変動係数CVが閾値CVth未満の場合に、接続先が正当でないと判定する。一方、変動係数CVが閾値CVth以上の場合には、判定装置100は、接続先が正当であると判定する。
これにより、システム200内の端末装置201とほぼ一定の間隔で通信を行っている接続先を、正当でない接続先と判定することができる。このため、例えば、攻撃者からの指示を受けるまでの初期段階にマルウェアと不正な通信を行うC&Cサーバ205を検出することができる。また、接続先が正当でないと判定された場合は、接続元である端末装置201を、マルウェアに感染している可能性が高いコンピュータとして特定することができる。さらに、接続間隔のばらつき度合いを示す統計値を接続間隔の平均値で割って正規化した変動係数CVを用いることで、例えば、接続先に応じて接続間隔の平均値が変化しても、閾値CVthを用いて、接続先の正当性を判定することができる。
また、判定装置100によれば、接続情報DB230を参照して、ペアPそれぞれについて、端末装置201と接続先との間の通信における複数回の接続それぞれについての接続間隔を算出することができる。そして、判定装置100によれば、ペアPそれぞれについて、算出した接続間隔のばらつき度合いを示す統計値を算出し、算出した統計値に基づいて、接続先の正当性を判定することができる。これにより、端末装置201と接続先とのペアPごとに、接続先の正当性を判定することができる。
また、判定装置100によれば、端末装置201と接続先との間の通信における接続回数nが所定回数Nより大きい場合に、接続先の正当性を判定することができる。これにより、統計値として信頼できる値が得られるだけの数(標本数)の接続情報が集まるまでの間は、接続先の正当性を判定しないようにすることができる。
また、判定装置100によれば、接続情報DB230に記憶された、端末装置201と接続先との間の所定期間T内の通信における複数回の接続それぞれの接続タイミングを特定する接続情報に基づいて、接続間隔を算出することができる。これにより、過去のどの期間の接続情報を使用して接続先の正当性を判定するのかを任意に指定することができる。また、ある程度期間を絞り込むことで、マルウェアに感染してから攻撃者からの指示を受けるまでの初期段階に現れる特徴を的確に捉えることができる。
また、判定装置100によれば、接続先が正当でないと判定した場合、端末装置201のクライアントアドレスと接続先の接続先URLとを含む警告情報を出力することができる。これにより、例えば、システム200の管理者に対して、不正な接続先が検出されたことを通知することができる。
また、判定装置100によれば、接続先が不当な接続先である度合いと、接続間隔のばらつき度合いを示す統計値との関係性を表す条件式(例えば、上記式(3)〜(5))を用いて、接続先の不審度を算出することができる。そして、判定装置100によれば、算出した接続先の不審度を出力することができる。これにより、例えば、システム200の管理者に対して、接続先が不当な接続先である度合いを提示して、不正な接続先を判断させることができる。
これらのことから、判定装置100によれば、高度標的型攻撃の予兆を検出して、不正な接続先およびマルウェアに感染した端末装置201を早期に発見することが可能となり、不正通信を遮断して高度標的型攻撃による秘密情報の漏洩を防ぐことができる。
なお、本実施の形態で説明した判定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本判定プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本判定プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部に記憶し、
前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、
算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、
処理を実行させることを特徴とする判定プログラム。
(付記2)前記コンピュータに、
前記接続タイミングの間隔のばらつきが所定の基準よりも小さい場合、前記接続先が正当でないと判定する、処理を実行させることを特徴とする付記1に記載の判定プログラム。
(付記3)前記コンピュータに、
算出した前記接続タイミングの間隔に基づいて、前記接続タイミングの間隔のばらつき度合いを示す統計値を算出する、処理を実行させ、
前記判定する処理は、
算出した前記統計値に基づいて、前記接続先の正当性を判定する、ことを特徴とする付記1に記載の判定プログラム。
(付記4)前記判定する処理は、
前記接続タイミングの間隔の平均値に対する前記統計値の比率が閾値未満の場合に、前記接続先が正当でないと判定する、ことを特徴とする付記3に記載の判定プログラム。
(付記5)前記記憶部は、端末装置と接続先との組み合わせそれぞれについて、前記端末装置と前記接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶し、
前記接続タイミングの間隔を算出する処理は、
前記組み合わせそれぞれについて、前記記憶部に記憶された前記接続情報に基づいて、前記接続タイミングの間隔を算出し、
前記判定する処理は、
前記組み合わせそれぞれについて、算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、ことを特徴とする付記1〜4のいずれか一つに記載の判定プログラム。
(付記6)前記判定する処理は、
前記端末装置と前記接続先との間の通信における接続回数が所定回数より大きい場合に、前記接続先の正当性を判定する、ことを特徴とする付記1〜5のいずれか一つに記載の判定プログラム。
(付記7)前記接続タイミングの間隔を算出する処理は、
前記記憶部に記憶された、前記端末装置と前記接続先との間の所定期間内の通信における複数回の接続それぞれの接続タイミングを特定する接続情報に基づいて、前記接続タイミングの間隔を算出する、ことを特徴とする付記1〜6のいずれか一つに記載の判定プログラム。
(付記8)前記コンピュータに、
前記接続先が正当でないと判定した場合、前記端末装置の識別情報と前記接続先の識別情報とを含む警告情報を出力する、処理を実行させることを特徴とする付記1〜7のいずれか一つに記載の判定プログラム。
(付記9)前記コンピュータに、
前記接続先が不当な接続先である度合いと前記統計値との関係性を表す条件式を用いて、前記接続先が不当な接続先である度合いを示す値を算出し、
算出した前記接続先が不当な接続先である度合いを示す値を出力する、
処理を実行させることを特徴とする付記3または4に記載の判定プログラム。
(付記10)コンピュータが、
端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部に記憶し、
前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、
算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、
処理を実行することを特徴とする判定方法。
(付記11)端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部と、
前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する制御部と、
を有することを特徴とする判定装置。
100 判定装置
101,201 端末装置
102 接続先
110 記憶部
200 システム
202 管理端末装置
203 ファイアウォール
204 プロキシサーバ
205 C&Cサーバ
230 接続情報DB
240 判定結果DB
500 接続情報
701 取得部
702 算出部
703 判定部
704 出力部
800 警告画面
810 警告情報
900 リスト画面
910 不審度リスト

Claims (10)

  1. コンピュータに、
    端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部に記憶し、
    前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、
    算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、
    処理を実行させることを特徴とする判定プログラム。
  2. 前記コンピュータに、
    前記接続タイミングの間隔のばらつきが所定の基準よりも小さい場合、前記接続先が正当でないと判定する、処理を実行させることを特徴とする請求項1に記載の判定プログラム。
  3. 前記コンピュータに、
    算出した前記接続タイミングの間隔に基づいて、前記接続タイミングの間隔のばらつき度合いを示す統計値を算出する、処理を実行させ、
    前記判定する処理は、
    算出した前記統計値に基づいて、前記接続先の正当性を判定する、ことを特徴とする請求項1に記載の判定プログラム。
  4. 前記判定する処理は、
    前記接続タイミングの間隔の平均値に対する前記統計値の比率が閾値未満の場合に、前記接続先が正当でないと判定する、ことを特徴とする請求項3に記載の判定プログラム。
  5. 前記記憶部は、端末装置と接続先との組み合わせそれぞれについて、前記端末装置と前記接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶し、
    前記接続タイミングの間隔を算出する処理は、
    前記組み合わせそれぞれについて、前記記憶部に記憶された前記接続情報に基づいて、前記接続タイミングの間隔を算出し、
    前記判定する処理は、
    前記組み合わせそれぞれについて、算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、ことを特徴とする請求項1〜4のいずれか一つに記載の判定プログラム。
  6. 前記判定する処理は、
    前記端末装置と前記接続先との間の通信における接続回数が所定の回数より大きい場合に、前記接続先の正当性を判定する、ことを特徴とする請求項1〜5のいずれか一つに記載の判定プログラム。
  7. 前記接続タイミングの間隔を算出する処理は、
    前記記憶部に記憶された、前記端末装置と前記接続先との間の所定期間内の通信における複数回の接続それぞれの接続タイミングを特定する接続情報に基づいて、前記接続タイミングの間隔を算出する、ことを特徴とする請求項1〜6のいずれか一つに記載の判定プログラム。
  8. 前記コンピュータに、
    前記接続先が正当でないと判定した場合、前記端末装置の識別情報と前記接続先の識別情報とを含む警告情報を出力する、処理を実行させることを特徴とする請求項1〜7のいずれか一つに記載の判定プログラム。
  9. コンピュータが、
    端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部に記憶し、
    前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、
    算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する、
    処理を実行することを特徴とする判定方法。
  10. 端末装置と接続先との間の通信における複数回の接続それぞれの接続タイミングを特定する接続情報を記憶部と、
    前記記憶部に記憶された前記接続情報に基づいて、前記複数回の接続それぞれについて、前回の接続との接続タイミングの間隔を算出し、算出した前記接続タイミングの間隔に基づいて、前記接続先の正当性を判定する制御部と、
    を有することを特徴とする判定装置。
JP2015229172A 2015-11-24 2015-11-24 判定プログラム、判定方法、および判定装置 Pending JP2017097625A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015229172A JP2017097625A (ja) 2015-11-24 2015-11-24 判定プログラム、判定方法、および判定装置
US15/337,260 US20170149809A1 (en) 2015-11-24 2016-10-28 Recording medium, deciding method, and deciding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015229172A JP2017097625A (ja) 2015-11-24 2015-11-24 判定プログラム、判定方法、および判定装置

Publications (1)

Publication Number Publication Date
JP2017097625A true JP2017097625A (ja) 2017-06-01

Family

ID=58721377

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015229172A Pending JP2017097625A (ja) 2015-11-24 2015-11-24 判定プログラム、判定方法、および判定装置

Country Status (2)

Country Link
US (1) US20170149809A1 (ja)
JP (1) JP2017097625A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116488948B (zh) * 2023-06-25 2023-09-01 上海观安信息技术股份有限公司 机器行为异常检测方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005203992A (ja) * 2004-01-14 2005-07-28 Intelligent Cosmos Research Institute ネットワーク異常検出装置、ネットワーク異常検出方法およびネットワーク異常検出プログラム
CN103685230A (zh) * 2013-11-01 2014-03-26 上海交通大学 僵尸网络恶意域名的分布式协同检测系统和方法
WO2015141640A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6789203B1 (en) * 2000-06-26 2004-09-07 Sun Microsystems, Inc. Method and apparatus for preventing a denial of service (DOS) attack by selectively throttling TCP/IP requests
US20040193943A1 (en) * 2003-02-13 2004-09-30 Robert Angelino Multiparameter network fault detection system using probabilistic and aggregation analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005203992A (ja) * 2004-01-14 2005-07-28 Intelligent Cosmos Research Institute ネットワーク異常検出装置、ネットワーク異常検出方法およびネットワーク異常検出プログラム
CN103685230A (zh) * 2013-11-01 2014-03-26 上海交通大学 僵尸网络恶意域名的分布式协同检测系统和方法
WO2015141640A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
角田 朋 ほか: "グレーリストを用いたホワイトリスト/ブラックリストの自動生成によるマルウェア感染検知方法の検討", 電子情報通信学会技術研究報告, vol. 114, no. 117, JPN6019028709, 26 June 2014 (2014-06-26), JP, pages 105 - 111, ISSN: 0004214097 *

Also Published As

Publication number Publication date
US20170149809A1 (en) 2017-05-25

Similar Documents

Publication Publication Date Title
CN110324311B (zh) 漏洞检测的方法、装置、计算机设备和存储介质
EP3349414B1 (en) Malicious tunneling handling system
US9306964B2 (en) Using trust profiles for network breach detection
US9712532B2 (en) Optimizing security seals on web pages
US9081961B2 (en) System and method for analyzing malicious code using a static analyzer
US20160036849A1 (en) Method, Apparatus and System for Detecting and Disabling Computer Disruptive Technologies
US20180034837A1 (en) Identifying compromised computing devices in a network
US20160373262A1 (en) Systems and methods for digital certificate security
US11861006B2 (en) High-confidence malware severity classification of reference file set
US20160014148A1 (en) Web anomaly detection apparatus and method
CN111783096B (zh) 检测安全漏洞的方法和装置
CA2545916A1 (en) Apparatus method and medium for detecting payload anomaly using n-gram distribution of normal data
US11336661B2 (en) Detecting remote application profiling
CN109936475A (zh) 一种异常检测方法及装置
US11303670B1 (en) Pre-filtering detection of an injected script on a webpage accessed by a computing device
JP6470201B2 (ja) 攻撃検知装置、攻撃検知システムおよび攻撃検知方法
US20150163238A1 (en) Systems and methods for testing and managing defensive network devices
CN106416178A (zh) 用于识别自主的、自传播的软件的方法和设备
JP2017097625A (ja) 判定プログラム、判定方法、および判定装置
US10484422B2 (en) Prevention of rendezvous generation algorithm (RGA) and domain generation algorithm (DGA) malware over existing internet services
CN113904843B (zh) 一种终端异常dns行为的分析方法和装置
WO2015178002A1 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
US9015300B2 (en) Method, computer program product, and device for network reconnaissance flow identification
JP6900328B2 (ja) 攻撃種別判定装置、攻撃種別判定方法、及びプログラム
CN113839957B (zh) 未授权漏洞的检测方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180810

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190930

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200218