JPWO2020217431A1 - 特定装置、特定方法及び特定プログラム - Google Patents

特定装置、特定方法及び特定プログラム Download PDF

Info

Publication number
JPWO2020217431A1
JPWO2020217431A1 JP2021515440A JP2021515440A JPWO2020217431A1 JP WO2020217431 A1 JPWO2020217431 A1 JP WO2020217431A1 JP 2021515440 A JP2021515440 A JP 2021515440A JP 2021515440 A JP2021515440 A JP 2021515440A JP WO2020217431 A1 JPWO2020217431 A1 JP WO2020217431A1
Authority
JP
Japan
Prior art keywords
similarity
response information
response
scan
specific
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.)
Granted
Application number
JP2021515440A
Other languages
English (en)
Other versions
JP7231016B2 (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2020217431A1 publication Critical patent/JPWO2020217431A1/ja
Application granted granted Critical
Publication of JP7231016B2 publication Critical patent/JP7231016B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Power Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

特定装置(10)は、対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器の応答情報を収集するネットワークスキャン部(11)と、ネットワークスキャン部(11)が収集した応答情報を蓄積する応答蓄積部(12)と、応答蓄積部(12)が蓄積した応答情報のうち、スキャン時期が異なる応答情報同士を比較して応答内容の類似度を計算する類似度計算部(13)と、類似度計算部(13)が計算した類似度を基に、最も類似する応答情報を送信した機器が同一であると特定する特定部(14)と、を有する。

Description

本発明は、特定装置、特定方法及び特定プログラムに関する。
インターネット上には、Internet of Things(IoT)をはじめとする多種多様な機器が接続されて動作している。このような機器は、脆弱性、弱い認証設定、誤設定などのセキュリティ上の問題が存在する場合がある。例えば、デフォルト設定のままである場合や、IDとパスワードを共通的に用いたままである場合が、弱い認証設定である場合といえる。そして、機器の脆弱性を利用した攻撃として、ネットワークカメラ等のIoTデバイスをターゲットとするMiraiなどが報告されている。
そこで、このような機器を早期に発見して対策するために、インターネット上に接続された機器を発見するツールの開発(非特許文献1及び非特許文献2参照)や、発見した機器をデータベース化する研究(非特許文献3及び非特許文献4参照)が行われている。
ネットワーク上の機器を発見する方法として、まず、対策装置は、ネットワークスキャンを行う。ネットワークスキャンは、スキャン対象のIPアドレスに対して、何らかのリクエストを送信し、そのリクエストに対するスキャン対象からの応答を収集する処理である。対策装置は、スキャン対象のIPアドレス上に機器が存在し、この機器が応答を返す設定であれば、機器からの応答を収集することができる。これらの応答には機器特有の情報が含まれている場合があるため、対策装置は、応答に含まれる危機特有の情報を用いることによって機器の種別等を特定する。また、対策装置は、応答の内容によってはセキュリティホールなども判別する。
したがって、対策装置は、ネットワーク上の機器を発見することによって、その機器が保有する脆弱性やセキュリティホールを特定するセキュリティ対策を実施できる。
Zakir Durumeric, et al., "ZMap: Fast Internet-Wide Scanning and its Security Applications", USENIX Security, 2014. [平成31年4月19日検索],インターネット<URL:https://zmap.io/paper.pdf> robertdavidgraham/masscan,[平成31年3月22日検索],インターネット<URL:https://github.com/robertdavidgraham/masscan> Shodan,[平成31年3月22日検索],インターネット<URL:https://www.shodan.io> Zakir Durumetic, et al. "A Search Engine Backed by Internet-Wide Scanning", ACM CCS, 2015.,[平成31年3月22日検索],インターネット<URL:https://censys.io/static/censys.pdf>
ネットワークスキャンについて、応答の有無や応答情報を収集するためのスキャンを高速化する手法がある(非特許文献1及び非特許文献2)。このような技術を用いることにより、対策装置は、ネットワーク上に存在する機器を早期に発見し、機器のリスト化の実施、及び、リストに基づいた対策の実施を行うことができる。
しかしながら、ネットワーク上の機器では、IPアドレスが変更されることがある。このように、IPアドレスが変更されると、今までIPアドレスに基づいて機器をリスト化することで管理していた情報が陳腐化してしまう問題がある。また、同一機器であるにもかかわらず多重にカウントしてしまうという問題がある。
特に後者の問題は、ある時刻tのスキャンにおいて応答があったIPアドレス群と、別の時刻uのスキャンにおいて応答があったIPアドレス群とを単純に併合して、ユニークなIPアドレス数を機器の総数とする方法をとった際に問題が生じる。具体的に、時刻tの際にIPアドレスが「IP_a」であった機器が、時刻uの際には「IP_b」に変化していた場合を例に説明する。この場合、この機器は、同一機器であるにもかかわらず、時刻tと時刻uとにおいてIPアドレスが変化しているため、二重にカウントされてしまう。
このような多重カウントが頻発すると、正確に機器の情報を管理することができなくなるおそれがある。この結果、管理内容を対策に活用できないおそれや、誤った対策を実施するおそれが生じる。例えば、対策装置は、発見された機器の数を必要以上に多く見積もってしまい、誤った規模の対策を実施してしまう。
本発明は、上記に鑑みてなされたものであって、異なる時刻のスキャン間におけるIPアドレスの変化にかかわらず同一機器であることを特定する特定装置、特定方法及び特定プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係る特定装置は、対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器の応答情報を収集する収集部と、収集部が収集した応答情報を蓄積する蓄積部と、蓄積部が蓄積した応答情報のうち、スキャン時期が異なる応答情報同士を比較して応答内容の類似度を計算する計算部と、計算部が計算した類似度を基に、最も類似する応答情報を送信した機器が同一であると特定する特定部と、を有することを特徴とする。
本発明によれば、異なる時刻のスキャン間におけるIPアドレスの変化にかかわらず同一機器であることを特定することができる。
図1は、実施の形態に係る通信システムの構成の一例を示す図である。 図2は、図1に示す応答蓄積部が蓄積する蓄積情報の一例を示す図である。 図3−1は、時刻t1のネットワークスキャン(第1のネットワークスキャン)の応答結果を示す図である。 図3−2は、時刻t2(≠t1)のネットワークスキャン(第2のネットワークスキャン)の応答結果を示す図である。 図4は、図1に示す類似度計算部による類似度の計算結果を類似度行列として表した例を示す図である。 図5は、図4に示す類似度行列から全体最適解で求められるIPアドレスの組み合わせを説明する図である。 図6は、図4に示す類似度行列から安定マッチング解として求められるIPアドレスの組み合わせを説明する図である。 図7は、図1に示す特定部が出力する出力結果の一例を示す図である。 図8は、実施の形態に係る特定処理の処理手順を示すフローチャートである。 図9は、プログラムが実行されることにより、特定装置が実現されるコンピュータの一例を示す図である。
以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[実施の形態]
[通信システムの概要]
まず、図1を用いて、実施の形態1に係る通信システムの構成について説明する。図1は、実施の形態に係る通信システムの構成の一例を示す図である。
図1に示すように、通信システム1は、特定装置10と、複数の機器2とを有する。特定装置10と、複数の機器2とは、ネットワークNを介して接続する。
機器2は、ネットワークNを介して特定装置10と通信可能である通信機能を有する機器である。各機器2は、それぞれIPアドレスが付与される。各機器2は、特定装置10によるリクエストを受信すると、例えば、応答内容にIPアドレスを付した応答情報を、特定装置10に送信する。機器2は、ネットワークカメラ等のIoT機器である。機器2は、それぞれ異なる種別の機器であってもよく、同じ種別の機器であってもよい。
通信システム1におけるネットワーク上に存在する機器2を特定する。特定装置10は、機器2の各IPアドレスをリストに基づいてネットワークスキャンを行い、機器2から送信された応答情報を基に、ネットワーク上に存在する機器2を特定する。特定装置10は、異なるスキャン時期の応答情報を比較することによって、機器2に付与されるIPアドレスが変更された場合であっても機器2が同一であることを特定する。
これによって、特定装置10において多重カウントの発生を低減できるため、通信システム1では、機器2の情報の正確な管理や、適切な対策の実行を実施することが可能になる。
[特定装置の構成]
次に、図1を参照して、特定装置10の構成について説明する。特定装置10は、ROM(Read Only Memory)、RAM(Random Access Memory)、CPU(Central Processing Unit)等を含むコンピュータ等に所定のプログラムが読み込まれて、CPUが所定のプログラムを実行することで実現される。また、特定装置10は、NIC(Network Interface Card)等を有し、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置との間の通信を行うことも可能である。特定装置10は、ネットワークスキャン部11(収集部)と、応答蓄積部12(蓄積部)と、類似度計算部13(計算部)と、特定部14とを有する。
ネットワークスキャン部11は、対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器2の応答情報(レスポンス)を収集する。応答蓄積部12は、ネットワークスキャン部11が収集したレスポンスを蓄積する。類似度計算部13は、応答蓄積部12が蓄積したレスポンスのうち、スキャン時期が異なるレスポンス同士を比較して応答内容の類似度を計算する。特定部14は、類似度計算部13が計算した類似度を基に、最も類似するレスポンスを送信した機器2が同一であると特定する。
[ネットワークスキャン部]
次に、ネットワークスキャン部11の処理について説明する。ネットワークスキャン部11は、与えられたIPアドレスのリストに基づいてネットワークスキャンを行う。ネットワークスキャンは、何らかのリクエストパケットを対象のIPアドレスに対して送信し、そのレスポンスを受信する処理である。
ネットワークスキャン部11が送信するリクエストパケットに制約はないが、レスポンスとしてより多くの情報を含むようなプロトコルを対象にすることが望ましい。例えば、ネットワークスキャン部11は、HTTP(HyperText Transfer Protocol)やHTTPS(Hypertext Transfer Protocol Secure)のプロトコルを対象にする。HTTPやHTTPSのプロトコルは、Webサーバを起動している機器が利用している。このため、ネットワークスキャン部11は、HTTPやHTTPSのプロトコルを対象とした場合、機器2が保有しているWebコンテンツをレスポンスとして取得することができる。このWebコンテンツは、機器2に特有であることが多い。
また、HTTPSを対象とした場合、ネットワークスキャン部11は、Webサーバが保有するSSL証明書も入手できる。このSSL証明書も、機器2に特有であることが多い。
また、ネットワークスキャン部11は、HTTPやHTTPSのような上位層のプロトコルにかかわらず、レスポンスに含まれるTCP(Transmission Control Protocol)のヘッダフィールドの情報も入手できる。TCPのヘッダフィールドには、TTL(Time-To-Live)、MSS(Maximum Segment Size)、ISN(Initial Sequence Number)などの情報が含まれ、これらは機器2のOS毎に特徴的な差が見られることがある。
ネットワークスキャン部11は、定められた時刻に、定められたリクエストを、与えられたIPアドレスのリストに対して送信する。そして、ネットワークスキャン部11は、スキャン対象からのレスポンスを受信し、応答蓄積部12に出力する。
ここで、IPアドレスリストは、動的IPアドレスの再割り当ての範囲であることが望ましい。例えば、IPアドレスリストは、同一組織ネットワークや同一ISP(Internet Services Provider)などの範囲で与えられることが望ましい。これに対し、動的IPアドレスの割り当て範囲をスキャン対象IPアドレスリストが包含していなかった場合は、スキャン対象IPアドレスとは異なるIPアドレスに機器2が割り当てられる可能性がある。この場合、異なるスキャン間において必ずしも同一の機器2が存在するとは限らない状況になるため、スキャン間において機器2の同一性を正確に判断できる確率が低下する。
[応答蓄積部]
応答蓄積部12は、ネットワークスキャン部11から受信したスキャンのレスポンス情報を蓄積する。応答蓄積部12は、ある時刻に行った特定のIPアドレスリストに対する一連の各スキャンのレスポンスに対して同一のスキャンIDを付与して、ネットワークスキャンの時刻ごとに管理できるようにしている。
図2は、図1に示す応答蓄積部12が蓄積する蓄積情報の一例を示す図である。図2に示すように、例えば、応答蓄積部12は、時刻t1に行った特定のIPアドレスリストに対する一連の各スキャンのレスポンスに対して同一のスキャンID「St1」を付与する。そして、スキャンID、対象IPアドレス及びレスポンス内容を対応付けたレスポンス情報を蓄積する。
[類似度計算部]
次に、類似度計算部13について説明する。類似度計算部13は、同一のIPアドレスリストに対する異なる2つのスキャンのレスポンス内容がどの程度類似しているかを計算する。図3−1は、時刻t1のネットワークスキャン(第1のネットワークスキャン)の応答結果を示す図である。図3−2は、時刻t2(≠t1)のネットワークスキャン(第2のネットワークスキャン)の応答結果を示す図である。
まず、ネットワークスキャンでは、レスポンスが得られないIPアドレスが存在するため、類似度計算部13は、これらのIPアドレスを、類似度計算の処理対象から除外する。レスポンスが得られない場合として、そもそも機器2がIPアドレスに割り当てられていない場合や、ネットワーク上のいずれかまたは機器2上でリクエストがフィルタリングされている場合がある。このため、類似度計算部13は、レスポンスがなかったIPアドレスを類似度算出対象から除外する。
例えば、図3−1に示すように、類似度計算部13は、時刻t1のスキャンでは、スキャン対象IPアドレスリストのアドレスA〜FのうちレスポンスがなかったアドレスB,D,Fを、類似度計算対象から除外する。類似度計算部13は、時刻t1では、アドレスA,C,Dのレスポンスを類似度算出対象とする。また、図3−2に示すように、時刻t2のスキャンでは、スキャン対象IPアドレスリストのアドレスA〜FのうちレスポンスがなかったアドレスA,D,Dを類似度計算対象から除外する。類似度計算部13は、時刻t2では、アドレスB,C,Fを類似度計算対象とする。
そして、スキャン対象のX個のIPアドレスのうち、時刻t1におけるネットワークスキャンでレスポンスがあったIPアドレスがn個存在した場合、時刻t2のスキャンにおいてレスポンスがあったIPアドレスがm個存在する場合について説明する。この場合、類似度計算部13は、時刻t1のネットワークスキャンにおけるn個の各応答情報と、時刻t2のネットワークスキャンにおけるm個の各応答情報とをそれぞれ比較し、n×m組のIPアドレスの組み合わせ毎に類似度を計算する。
類似度計算部13は、計算したn×m組の各類似度を、n行m列の類似度行列の各要素として表す。例えば、類似度計算部13は、時刻t1のネットワークスキャンにおいてレスポンスがあったアドレスA,C,Dの3個のレスポンスと、時刻t2のネットワークスキャンにおいてレスポンスがあったアドレスB,C,Fの3個のレスポンスとをそれぞれ比較する。そして、類似度計算部13は、3×3組のIPアドレスの組み合わせ毎に類似度を計算する。
図4は、図1に示す類似度計算部13による類似度の計算結果を類似度行列として表した例を示す図である。類似度計算部13は、時刻t1,t2のネットワークスキャンにおいてレスポンスがあったIPアドレスの9組の組み合わせに対し、それぞれ応答内容の類似度を計算する。そして、図4では、類似度計算部13が計算した各組の類似度を、類似度行列の各要素として表す。図4の例では、類似度は0〜1で正規化されており、1に近づくほどより類似していることを意味する。なお、正規化の最大値はいくつであっても構わない。
類似度計算部13は、2つのレスポンス間で文字列が一致する度合いを類似度として算出する。類似度の算出方法は、例えば、LCS(Longest Common Subsequence)を用いた方法を適用することができる。LCSは、2つの文字列で共通する部分列の最長のものであり、部分列は連続している必要はないものの順序は変更してはならないとしている。
例えば、レスポンスRa「abcdef」と、レスポンスRb「abfcdf」とについては、LCSは、「abcdf」になる。この際、類似度は、2×LCS/(length(レスポンスRa)+length(レスポンスRb))として算出できる。レスポンスRaとレスポンスRbとが、全く同一である場合、類似度は1になる。一方、レスポンスRaとレスポンスRbとに共通部分列が存在しない場合、すなわち、全くレスポンスが異なる場合、類似度は0になる。
ここで、レスポンスとして得られる情報として、TCPヘッダフィールドの値(TTLやMSS等)、上位レイヤのプロトコルのレスポンス(Telnet、SSH、HTTP、HTTPSなど)がある。本実施の形態では、これらの情報を一括りにレスポンスとし、類似度計算のための比較に使用する。
例えば、HTTPの応答として、HTTPヘッダとHTTPボディが存在し、類似度計算部13は、これらのいずれも類似度計算に使用する。また、HTTPSの場合、類似度計算部13は、TLSコネクションのハンドシェイク時にWebサーバ側(機器2)から送信されるSSL証明書を、類似度計算使用する。SSL証明書は、Webサーバに関する情報が記述されており、これが機器2を特徴付ける情報になり得る。
[特定部]
次に、図1に示す特定部14について説明する。特定部14は、異なる2つのネットワークスキャン間において、レスポンスの類似性から、どのIPアドレス上の機器が同一であるかを特定する。
そこで、特定部14は、類似度計算部13が作成した類似度行列を用いる。特定部14は、類似度行列の各要素(類似度)に基づいて、異なるスキャン間で類似するレスポンスを返すIPアドレスの最も適切な組み合わせを求める。すなわち、特定部14は、類似度行列の各要素に基づいて、時刻t1におけるネットワークスキャンと時刻t2のネットワークスキャンとの間で類似する応答内容を返すIPアドレスの最も適切な組み合わせを求める。そして、特定部14は、求めた組み合わせのIPアドレス上の機器が同一の機器であると特定する。
ここで、ハンガリアンアルゴリズムなどの全体最適解を目的とする手法では、適切な組み合わせを特定することができない。全体最適解とは、組み合わせの評価値の総和、すなわち、類似度の総和が最大になるようなマッチング手法である。
図5は、図4に示す類似度行列から全体最適解で求められるIPアドレスの組み合わせを説明する図である。図5に示すように、スキャンID「St1」のアドレスAと、スキャンID「St2」のアドレスBとの類似度が「1.0」で最も高い。これにもかかわらず、全体最適解を目的とする手法を適用した場合、この組み合わせではなく、スキャンID「St1」のアドレスAと、スキャンID「St2」のアドレスCの組み合わせが、最も適切な組み合わせとされる。
そこで、特定部14は、全体最適解ではなく、安定マッチング解を求めるマッチング手法を用いる。例えば、安定マッチング解を求めるマッチング手法として、Gale-Shapleyアルゴリズムがある。このアルゴリズムでは、お互いに最も高い類似度であるにもかかわらず類似度が低い異なるペアが選択される状態が発生しないようなアルゴリズムである。
図6は、図4に示す類似度行列から安定マッチング解として求められるIPアドレスの組み合わせを説明する図である。
図6に示すように、安定マッチング解を求めるマッチング手法を適用した場合、スキャンID「St1」のアドレスAと、スキャンID「St2」のアドレスBとが、最も適切なIPアドレスの組み合わせとして求められている。スキャンID「St1」のアドレスAと、スキャンID「St2」のアドレスBとは、非常に高い類似度「1.0」を示す。また、スキャンID「St1」のアドレスDと、スキャンID「St2」のアドレスFとが、最も適切なIPアドレスの組み合わせとして求められている。スキャンID「St1」のアドレスDと、スキャンID「St2」のアドレスFとは、非常に「0.9」と高い類似度を示す。
これに対し、スキャンID「St1」のアドレスCと、スキャンID「St2」のアドレスCとは、「0.4」と比較的低い類似度を示す。異なる2つのネットワークスキャンにおいて、全く同一の機器2がいずれのネットワークスキャン時に存在するとは限らない。例えば、電源が落とされた機器2は、ネットワークスキャンには応答せず、新たにネットワークに接続した機器2は、ネットワークスキャンに応答する。
したがって、特定部14は、低い類似度を示す組み合わせ、具体的には、予め設定した所定の閾値を下回る要素(類似度)の組み合わせについては、この要素に対応する組み合わせのIPアドレス上の機器2が、異なる機器2であると特定する。そして、特定部14は、予め設定した所定の閾値を下回る要素(類似度)の組み合わせを解消する。特定部14は、最終的に残った組み合わせのIPアドレスを、同一機器のIPアドレスとして出力する。
図7は、図1に示す特定部14が出力する出力結果の一例を示す図である。図7の例では、特定部14は、スキャンID「St1」におけるアドレスAと、スキャンID「St2」におけるアドレスBとを対応付けて出力することによって、スキャンID「St1」におけるアドレスAと、スキャンID「St2」におけるアドレスBとが同一機器のIPアドレスであることを示す。
つまり、時刻t1のネットワークスキャンにおいてアドレスAに存在した機器2は、時刻t2のネットワークスキャンでは、アドレスBに移動したことを意味する。そして、時刻t1のネットワークスキャンにおいてアドレスDに存在した機器2は、時刻t2のネットワークでは、アドレスFに移動したことを意味する。
なお、同一の機器2であるにもかかわらず、異なるスキャンにおいて類似度が必ずしも最大にならない理由は、機器2のレスポンスが変化するためである。例えば、機器2のアップデートにより、バナー情報が変化する場合や、機器2の所有者によってコンテンツが変更される場合が該当する。
そして、組み合わせ解消の判定の際に使用する閾値は、任意に設定することができる。この場合、同一機器であってもレスポンスが変化することを前提にして、閾値が設定される。
[特定処理の処理手順]
次に、特定装置10が実行する特定処理の処理手順について説明する。図8は、実施の形態に係る特定処理の処理手順を示すフローチャートである。
図8に示すように、特定装置10では、ネットワークスキャン部11が、IPアドレスのリストに基づいて対象となるIPアドレスにネットワークスキャンを行い、機器2のレスポンスを収集する(ステップS1)。応答蓄積部12は、ステップS1において収集されたレスポンスを蓄積する応答蓄積処理を行う(ステップS2)。
類似度計算部13は、ステップS2において蓄積された応答情報のうち、スキャン時期が異なるレスポンス同士を比較して応答内容の類似度を計算する類似度計算処理を行う(ステップS3)。特定部14は、ステップS3において計算された類似度を基に、最も類似するレスポンスを送信した機器2が同一であると特定する特定処理を行う(ステップS4)。
[実施の形態の効果]
このように、実施の形態に係る特定装置10は、対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器2のレスポンスを収集し、収集したレスポンスを蓄積する。そして、特定装置10は、蓄積したレスポンスのうち、スキャン時期が異なるレスポンス同士を比較して応答内容の類似度を計算し、計算した類似度を基に、最も類似するレスポンスを送信した機器が同一であると特定する。具体的には、特定装置10は、異なるネットワークスキャン間で類似度の高いIPアドレスの組み合わせを求め、このIPアドレスの組み合わせから、ある機器2が、異なる時刻のスキャン間において、IPアドレスがどのIPアドレスに変化したか、或いは、IPアドレスが変化しなかったかを特定する。
従来の方法では、機器のIPアドレスが変化した場合に同一機器であることが識別できないため多重にカウントする問題があった。これに対し、本実施の形態に係る特定装置10によれば、スキャン時期が異なるレスポンスの類似度を計算し、計算した類似度を基に、最も類似するレスポンスを送信した機器が同一であると特定するため、異なる時刻のスキャン間においてIPアドレスが変化した場合であっても、同一の機器2として特定できる。したがって、本実施の形態によれば、多重カウント問題が発生せず、正確にネットワーク上の機器2を管理することができる。
[実施形態のシステム構成について]
図1に示した特定装置10の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、特定装置10の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
また、特定装置10においておこなわれる各処理は、全部または任意の一部が、CPUおよびCPUにより解析実行されるプログラムにて実現されてもよい。また、特定装置10においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。
また、実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。
[プログラム]
図9は、プログラムが実行されることにより、特定装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、特定装置10の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール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 応答蓄積部
13 類似度計算部
14 特定部

Claims (6)

  1. 対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器の応答情報を収集する収集部と、
    前記収集部が収集した応答情報を蓄積する蓄積部と、
    前記蓄積部が蓄積した応答情報のうち、スキャン時期が異なる応答情報同士を比較して応答内容の類似度を計算する計算部と、
    前記計算部が計算した類似度を基に、最も類似する応答情報を送信した機器が同一であると特定する特定部と、
    を有することを特徴とする特定装置。
  2. 前記計算部は、スキャン対象のX個のIPアドレスのうち、第1の時刻における第1のネットワークスキャンにおいて応答があったIPアドレスがn(≦X)個であり、前記第1の時刻と異なる第2の時刻における第2のネットワークスキャンにおいて応答があったIPアドレスがm(≦X)個である場合、前記第1のネットワークスキャンにおけるn個の各応答情報と、前記第2のネットワークスキャンにおけるm個の各応答情報とをそれぞれ比較し、n×m組のIPアドレスの組み合わせ毎に類似度を計算することを特徴とする請求項1に記載の特定装置。
  3. 前記計算部は、計算したn×m組の各類似度を、n行m列の類似度行列の各要素として表し、
    前記特定部は、前記類似度行列の各要素に基づいて、前記第1のネットワークスキャンと前記第2のネットワークスキャンとの間で類似する応答内容を返すIPアドレスの最も適切な組み合わせを求め、求めた組み合わせのIPアドレス上の機器が同一の機器であると特定することを特徴とする請求項2に記載の特定装置。
  4. 前記特定部は、前記類似度行列において所定の閾値を下回る要素については、該要素に対応する組み合わせのIPアドレス上の機器が、異なる機器であると特定することを特徴とする請求項3に記載の特定装置。
  5. 特定装置が実行する特定方法であって、
    対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器の応答情報を収集する工程と、
    前記収集する工程において収集された応答情報を蓄積する工程と、
    前記蓄積する工程において蓄積された応答情報のうち、スキャン時期が異なる応答情報同士を比較して応答内容の類似度を計算する工程と、
    前記計算する工程において計算された類似度を基に、最も類似する応答情報を送信した機器が同一であると特定する工程と、
    を含んだことを特徴とする特定方法。
  6. 対象となるネットワークアドレス帯に対し、ネットワークスキャンにより機器の応答情報を収集するステップと、
    前記収集するステップにおいて収集された応答情報を蓄積するステップと、
    前記蓄積するステップにおいて蓄積された応答情報のうち、スキャン時期が異なる応答情報同士を比較して応答内容の類似度を計算するステップと、
    前記計算するステップにおいて計算された類似度を基に、最も類似する応答情報を送信した機器が同一であると特定するステップと、
    をコンピュータに実行させることを特徴とする特定プログラム。
JP2021515440A 2019-04-25 2019-04-25 特定装置、特定方法及び特定プログラム Active JP7231016B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/017800 WO2020217431A1 (ja) 2019-04-25 2019-04-25 特定装置、特定方法及び特定プログラム

Publications (2)

Publication Number Publication Date
JPWO2020217431A1 true JPWO2020217431A1 (ja) 2021-12-16
JP7231016B2 JP7231016B2 (ja) 2023-03-01

Family

ID=72941629

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021515440A Active JP7231016B2 (ja) 2019-04-25 2019-04-25 特定装置、特定方法及び特定プログラム

Country Status (3)

Country Link
US (1) US12041687B2 (ja)
JP (1) JP7231016B2 (ja)
WO (1) WO2020217431A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115942042A (zh) * 2022-12-26 2023-04-07 中国电子产业工程有限公司 一种基于改进lcs的网络视频识别匹配方法、装置和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010034915A (ja) * 2008-07-30 2010-02-12 Fujitsu Ltd ネットワーク構成管理プログラム、ネットワーク構成管理装置およびネットワーク構成管理方法
JP2019061399A (ja) * 2017-09-26 2019-04-18 日本電信電話株式会社 デバイス識別装置およびデバイス識別方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8180916B1 (en) * 2009-07-17 2012-05-15 Narus, Inc. System and method for identifying network applications based on packet content signatures
JP6181884B2 (ja) * 2014-11-14 2017-08-16 日本電信電話株式会社 マルウェア感染端末の検出装置、マルウェア感染端末の検出方法およびマルウェア感染端末の検出プログラム
WO2016147944A1 (ja) * 2015-03-18 2016-09-22 日本電信電話株式会社 マルウェア感染端末の検出装置、マルウェア感染端末の検出システム、マルウェア感染端末の検出方法およびマルウェア感染端末の検出プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010034915A (ja) * 2008-07-30 2010-02-12 Fujitsu Ltd ネットワーク構成管理プログラム、ネットワーク構成管理装置およびネットワーク構成管理方法
JP2019061399A (ja) * 2017-09-26 2019-04-18 日本電信電話株式会社 デバイス識別装置およびデバイス識別方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
野口 博史 ほか: "通信の類似性分析にもとづくIoTデバイス識別手法", 電子情報通信学会技術研究報告, vol. 118, no. 123, JPN6022029981, 4 July 2018 (2018-07-04), JP, pages 45 - 50, ISSN: 0004835344 *

Also Published As

Publication number Publication date
WO2020217431A1 (ja) 2020-10-29
US12041687B2 (en) 2024-07-16
US20220217520A1 (en) 2022-07-07
JP7231016B2 (ja) 2023-03-01

Similar Documents

Publication Publication Date Title
JP6832951B2 (ja) 自動デバイス検出のためのシステムおよび方法
US11070569B2 (en) Detecting outlier pairs of scanned ports
US11184377B2 (en) Malicious port scan detection using source profiles
US20220046042A1 (en) Scanner probe detection
US20130332456A1 (en) Method and system for detecting operating systems running on nodes in communication network
US11770396B2 (en) Port scan detection using destination profiles
US11316872B2 (en) Malicious port scan detection using port profiles
WO2020217431A1 (ja) 特定装置、特定方法及び特定プログラム
US8713141B1 (en) System and method for monitoring network activity
EP3918762B1 (en) Port scan detection
JP2020502703A (ja) ネットワーク・マッピングのためのフィンガープリントの決定
CN111368294B (zh) 病毒文件的识别方法和装置、存储介质、电子装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220920

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230130

R150 Certificate of patent or registration of utility model

Ref document number: 7231016

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150