JP6866645B2 - 類似度判定プログラム、類似度判定方法および情報処理装置 - Google Patents

類似度判定プログラム、類似度判定方法および情報処理装置 Download PDF

Info

Publication number
JP6866645B2
JP6866645B2 JP2017000748A JP2017000748A JP6866645B2 JP 6866645 B2 JP6866645 B2 JP 6866645B2 JP 2017000748 A JP2017000748 A JP 2017000748A JP 2017000748 A JP2017000748 A JP 2017000748A JP 6866645 B2 JP6866645 B2 JP 6866645B2
Authority
JP
Japan
Prior art keywords
information
program
similarity
file group
api call
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
JP2017000748A
Other languages
English (en)
Other versions
JP2018109909A (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 JP2017000748A priority Critical patent/JP6866645B2/ja
Priority to JP2017102323A priority patent/JP2018137716A/ja
Priority to US15/841,466 priority patent/US11048799B2/en
Priority to EP17207642.4A priority patent/EP3346409A1/en
Priority to SG10201710531VA priority patent/SG10201710531VA/en
Publication of JP2018109909A publication Critical patent/JP2018109909A/ja
Application granted granted Critical
Publication of JP6866645B2 publication Critical patent/JP6866645B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Studio Devices (AREA)
  • Details Of Audible-Bandwidth Transducers (AREA)

Description

本発明の実施形態は、類似度判定プログラム、類似度判定方法および情報処理装置に関する。
従来、ネットワークにおいて、不正に機器に感染するコンピュータウィルス、ワーム、スパイウェアなどのマルウェアを検出する方法が存在する。このマルウェア検出では、不正処理を行うソフトウェアのネットワークアドレスの走査に係る挙動と、検査対象のソフトウェアのネットワークアドレスの走査に係る挙動との相互の同一性又は類似性を比較するものがある。また、コードを要約処理しマルウェアのコードとの同一性を照合するものがある。
特許第5083760号公報
しかしながら、上記の従来技術では、一つのマルウェアから多種多様に派生する亜種のマルウェアを検出することが困難であるという問題がある。
例えば、亜種のマルウェアは、攻撃先などの一部の変更により元となるマルウェアより比較的に簡単に作成されることから、多種多様なものが派生する。これら亜種のマルウェアは、コードも攻撃先も各々異なることから、派生元のマルウェアのコードやネットワークアドレスの走査に係る挙動との照合では検出することが困難である。また、これら亜種のマルウェアの検出は、全ての亜種のマルウェアを収集する必要があり、容易なことではない。
1つの側面では、多種多様に派生するマルウェアの検出を容易に行うことができる類似度判定プログラム、類似度判定方法および情報処理装置を提供することを目的とする。
第1の案では、類似度判定プログラムは、取得する処理と、出力する処理とをコンピュータに実行させる。取得する処理は、所定のシステム環境下で第1のプログラムを実行させ、所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得する。また、取得する処理は、所定のシステム環境下で第2のプログラムを実行させ、所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得する。出力する処理は、取得した第1のファイル群の情報と第2のファイル群の情報とを比較し、比較結果に応じて第1のプログラムと第2のプログラムとの間の類似度を判定して出力する。
本発明の1実施態様によれば、多種多様に派生するマルウェアの検出を容易に行うことができる。
図1は、実施形態にかかる情報処理装置の機能構成を例示するブロック図である。 図2は、システム環境を説明する説明図である。 図3は、APIコール情報を説明する説明図である。 図4は、DLL読出情報を説明する説明図である。 図5は、プロセス情報を説明する説明図である。 図6は、実施形態にかかる情報処理装置の動作例を示すフローチャートである。 図7は、結果出力を説明する説明図である。 図8は、実施形態にかかる情報処理装置のハードウエア構成例を示すブロック図である。
以下、図面を参照して、実施形態にかかる類似度判定プログラム、類似度判定方法および情報処理装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する類似度判定プログラム、類似度判定方法および情報処理装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
図1は、実施形態にかかる情報処理装置の機能構成を例示するブロック図である。図1に示すように、情報処理装置1は、マルウエアなどの不正処理を行うソフトウェアであり、照合元となる元プログラム11Aと、マルウエアであるか否かの判定対象となる対象プログラム11Bとを受け付けて照合を行い、判定した結果をディスプレイなどに出力する装置である。情報処理装置1は、例えばPC(Personal Computer)などを適用でき、入力部10、実行部20、判定部30、出力部40および記憶部50を有する。
入力部10は、半導体メモリやDVD(Digital Versatile Disc)などの記憶媒体からのデータの読み取りやインターネットなどの通信ネットワークとの通信を介してデータの入力を受け付ける。具体的には、入力部10は、元プログラム11Aおよび対象プログラム11Bの入力を受け付ける。この元プログラム11Aおよび対象プログラム11Bは、第1のプログラムおよび第2のプログラムの一例である。入力部10は、受け付けた元プログラム11Aおよび対象プログラム11Bを実行部20へ出力する。また、入力部10は、元プログラム11Aを記憶部50に格納する。
実行部20は、取得部の一例であり、所定のOS(Operating System)のシステム環境下で元プログラム11A、対象プログラム11Bを実行させ、実行時における各種情報を取得する。
図2は、システム環境を説明する説明図である。図2に示すように、元プログラム11A、対象プログラム11Bなどのアプリケーション202を実行するシステム環境200は、OSの中核であるカーネル201と、DLL(Dynamic Link Library)などの各種共有ライブラリで構成される共有ライブラリ群203とを有する。このシステム環境200は、例えば、情報処理装置1上のOSまたは情報処理装置1において仮想化技術を利用して実現される仮想マシン(Virtual Machine)上のOSにより提供される。なお、OSの種別は、例えばLinux(登録商標)やWindows(登録商標)などのいずれの種別であってもよい。
実行部20は、元プログラム11A、対象プログラム11Bなどのアプリケーション202の実行時におけるシステムコールを監視し、カーネル201との通信で呼び出すAPI(Application Programming Interface)コールの種別、呼び出し回数、呼び出し順などのAPIコール情報51を取得する。実行部20は、取得したAPIコール情報51を、元プログラム11A、対象プログラム11Bを示す識別子(例えばプログラム名)などとともに記憶部50に格納する。
図3は、APIコール情報51を説明する説明図である。図3に示すように、APIコール情報51は、アプリケーション202の実行時におけるAPIコールについて、「Timestamp」、「Thred」、「Function」、「Arguments」、「Status」、「Return」など情報を含む。
「Timestamp」は、APIコールの時刻、すなわち呼び出し順序を示す。「Thred」はAPIコールのスレッドを示しており、同一スレッドのAPIコール数が呼び出し回数を示している。「Function」は、APIコールで呼び出された機能を示す。「Arguments」は、APIコールの引数を示す。「Status」は、APIコールの状態(例えば成功/失敗)を示す。「Return」は、APIコールの戻りアドレスを示す。
また、実行部20は、元プログラム11A、対象プログラム11Bなどのアプリケーション202の実行時における共有ライブラリ群203の読み出しを監視し、共有ライブラリ群203から読み出した共有ライブラリのファイル群のDLL読出情報52を取得する。実行部20は、取得したDLL読出情報52を、元プログラム11A、対象プログラム11Bを示す識別子(例えばプログラム名)などとともに記憶部50に格納する。
図4は、DLL読出情報52を説明する説明図である。図4に示すように、DLL読出情報52は、アプリケーション202の実行時に共有ライブラリ群203より読み出したファイル群(「GXX32.dll」、「Sxx32.dll」…など)のリストである。DLL読出情報52におけるリストは、読み出し順にファイル群が記述されている。
また、実行部20は、元プログラム11A、対象プログラム11Bなどのアプリケーション202の実行時におけるプロセスを監視し、実行したプロセスのプロセス情報53を取得する。実行部20は、取得したプロセス情報53を、元プログラム11A、対象プログラム11Bを示す識別子(例えばプログラム名)などとともに記憶部50に格納する。
図5は、プロセス情報53を説明する説明図である。図5に示すように、プロセス情報53は、アプリケーション202の実行時におけるプロセスのリストである。具体的には、プロセス情報53は、実行時におけるプロセスごとに、プロセスの識別子としてのプロセス名(「yXXXX.exe」など)およびプロセスID(「PID:3333」など)と、親プロセスを示す情報(「Parent PID:2222」など)とを含む。
判定部30は、元プログラム11Aのコードと、対象プログラム11Bのコードとの比較結果や元プログラム11Aの実行時に取得した情報と、対象プログラム11Bの実行時に取得した情報との比較結果をもとに、元プログラム11Aと、対象プログラム11Bとの類似度を判定する。
具体的には、判定部30は、元プログラム11Aのコードと、対象プログラム11Bのコードとを比較することで、コード同士の類似度合いを示す類似度を判定する静的解析を行い、解析結果を出力部40に出力する。また、判定部30は、元プログラム11Aの実行時に取得した情報と、対象プログラム11Bの実行時に取得した情報とを比較して互いの情報の類似度を判定する動的解析を行い、解析結果を出力部40に出力する。
より具体的には、判定部30は、元プログラム11AのAPIコール情報51に含まれるAPIコール種別、APIコールの呼び出し回数または第1のAPIコールの呼び出し順の情報と、対象プログラム11BのAPIコール情報51に含まれるAPIコール種別、APIコールの呼び出し回数または第1のAPIコールの呼び出し順の情報とを比較する。そして、判定部30は、互いの情報の一致/不一致をもとにスコアリングすることで、互いの情報の類似度合いを示す類似度を算出する。
例えば、亜種のマルウェアは、元のマルウェアに対して攻撃先などの一部の変更に留まることから、APIコールの内容は元となるマルウェアと類似する。したがって、照合元である元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51との類似度を求めることで、元プログラム11Aより多種多様に派生する亜種のマルウェアの検出を容易に行うことができる。一例として、照合元である元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51との類似度が高い(例えば所定値以上)場合には、対象プログラム11Bはマルウェアであるものと判断することができる。
また、判定部30は、元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52とを比較し、互いの情報の一致/不一致をもとにスコアリングすることで、互いの情報の類似度合いを示す類似度を算出する。
例えば、元のマルウェアが読み出す共有ライブラリのファイルと、亜種のマルウェアが読み出す共有ライブラリのファイルとは互いに類似する。したがって、照合元である元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52との類似度を求めることで、元プログラム11Aより多種多様に派生する亜種のマルウェアの検出を容易に行うことができる。一例として、照合元である元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52との類似度が高い(例えば所定値以上)場合には、対象プログラム11Bはマルウエアであるものと判断することができる。
また、判定部30は、複数の元プログラム11AのDLL読出情報52に含まれるファイルを特徴として集約した情報と、対象プログラム11BのDLL読出情報52とを比較し、複数の元プログラム11Aと、対象プログラム11Bとの類似度を出力してもよい。
具体的には、判定部30は、複数の元プログラム11AのDLL読出情報52に含まれるファイルの出現頻度/複数の元プログラム11A全体におけるファイルの出現頻度などを集計し、TF(Term Frequency)/IDF(Inverse Document Frequency)やcontrast set miningなどを求める。そして、判定部30は、複数の元プログラム11AのDLL読出情報52より集約したTF/IDFやcontrast set miningと、対象プログラム11BのDLL読出情報52とを比較し、複数の元プログラム11Aと、対象プログラム11Bとの類似度を出力する。
複数の元プログラム11AのDLL読出情報52より集約したTF/IDFは、マルウエア独特の特徴を示すものである。よって、複数の元プログラム11AのDLL読出情報52より集約したTF/IDFとの比較により、マルウエアに特徴的なものを重視した類似度の算出を行うことができる。
また、判定部30は、元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53とを比較し、互いの情報の一致/不一致をもとにスコアリングすることで、互いの情報の類似度合いを示す類似度を算出する。
例えば、元のマルウェアが実行するプロセスと、亜種のマルウェアが実行するプロセスとは互いに類似する。したがって、照合元である元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53との類似度を求めることで、元プログラム11Aより多種多様に派生する亜種のマルウェアの検出を容易に行うことができる。一例として、照合元である元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53との類似度が高い(例えば所定値以上)場合には、対象プログラム11Bはマルウエアであるものと判断することができる。
出力部40は、判定部30により判定された元プログラム11Aと、対象プログラム11Bとの類似度をディスプレイやファイルなどに出力する。出力された類似度を確認することで、ユーザは、対象プログラム11Bがマルウエアであるか否かを判別することができる。
また、出力部40は、対象プログラム11Bに対する複数の元プログラム11Aとの比較結果をもとに、類似度(スコア)の高い順に元プログラム11Aを順位付けする。ついで、出力部40は、スコア順(高い順)に元プログラム11Aを並び替え、元プログラム11Aごとに判定された対象プログラム11Bとの類似度を示すスコア値を表示する。これにより、ユーザは、複数の元プログラム11Aの中から対象プログラム11Bと類似度の高い元プログラム11Aを容易に見つけることができる。
また、出力部40は、元プログラム11Aに対する複数の対象プログラム11Bとの比較結果をもとに、類似度(スコア)の高い順に対象プログラム11Bを順位付けする。ついで、出力部40は、スコア順(高い順)に対象プログラム11Bを並び替え、対象プログラム11Bごとに判定された元プログラム11Aとの類似度を示すスコア値を表示する。これにより、ユーザは、複数の対象プログラム11Bの中から元プログラム11Aと類似度の高い対象プログラム11Bを容易に見つけることができる。なお、本実施形態では、対象プログラム11Bに対する複数の元プログラム11Aとの比較結果をもとに、スコア順の元プログラム11Aを並び替えて表示する場合を例に説明する。
記憶部50は、HDD(Hard Disk Drive)などの記憶装置である。記憶部50は、照合元となる元プログラム11Aと、プログラムごとのAPIコール情報51、DLL読出情報52およびプロセス情報53とを記憶する。
図6は、実施形態にかかる情報処理装置1の動作例を示すフローチャートである。なお、元プログラム11Aについては、処理の開始前に入力済であり、元プログラム11Aと、元プログラム11AのAPIコール情報51、DLL読出情報52およびプロセス情報53とは記憶部50に格納済(取得済)であるものとする。また、対象プログラム11Bは、処理の開始時に入力されるものとする。
図6に示すように、処理が開始されると、判定部30は、記憶部50より元プログラム11Aを読み出し、読み出した元プログラム11Aと、入力された対象プログラム11Bとのコードを差分ツール(例えばDiff)を用いて比較する(S1)。
次いで、判定部30は、S1の比較結果より、元プログラム11Aのコードと、対象プログラム11Bのコードとの類似度を判定する(S2)。具体的には、判定部30は、差分ツールにより差分として検出された相違部分の分量をもとに、コードについての類似度を示すスコアを求める。
次いで、判定部30は、記憶部50に格納された元プログラム11AのAPIコール情報51、DLL読出情報52およびプロセス情報53を取得する(S3)。
次いで、実行部20は、入力された対象プログラム11Bを実行し、対象プログラム11BのAPIコール情報51、DLL読出情報52およびプロセス情報53を取得する(S4)。実行部20は、取得した対象プログラム11BのAPIコール情報51、DLL読出情報52およびプロセス情報53を記憶部50に格納するとともに、判定部30へ出力する。
次いで、判定部30は、元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51とを比較する(S5)。次いで、判定部30は、互いの情報の一致/不一致をもとにスコアリングすることで、元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51の類似度(スコア)を判定する(S6)。
S6における類似度の判定では、元プログラム11AのAPIコール情報51によるN−gramモデルと、対象プログラム11BのAPIコール情報51によるN−gramモデルとの類似度合いをスコアとして求めてもよい。
具体的には、判定部30は、元プログラム11AのAPIコール情報51をもとに、APIコールを呼び出し順に並べた情報(例えば図3の「Timestamp」でのソート)求める。そして、判定部30は、N個のAPIコールの組み合わせがどの程度出現するかの出現頻度を順次求めることで、元プログラム11AのAPIコール情報51によるN−gramモデルを得る。
同様に、判定部30は、対象プログラム11BのAPIコール情報51をもとに、APIコールを呼び出し順に並べた情報求める。そして、判定部30は、N個のAPIコールの組み合わせがどの程度出現するかの出現頻度を順次求めることで、対象プログラム11BのAPIコール情報51によるN−gramモデルを得る。次いで、判定部30は、互いのN−gramモデルの類似度合いをスコアに換算して類似度を求める。このように、元プログラム11AのAPIコール情報51によるN−gramモデルと、対象プログラム11BのAPIコール情報51によるN−gramモデルとの類似度を求めることで、APIコールの呼び出し順を考慮した類似度を得ることができる。
また、S6における類似度の判定では、元プログラム11AのAPIコール情報51をもとにしたベクトルと、対象プログラム11BのAPIコール情報51を元にしたベクトルとのベクトル空間におけるコサイン類似度をスコアとして求めてもよい。具体的には、判定部30は、元プログラム11AのAPIコール情報51に含まれるAPIコール種別、APIコールの呼び出し回数、APIコールの呼び出し順などを元とするベクトルを求める。また、判定部30は、対象プログラム11BのAPIコール情報51に含まれるAPIコール種別、APIコールの呼び出し回数、APIコールの呼び出し順などを元とするベクトルを求める。次いで、判定部30は、ベクトル空間における互いのベクトルのコサイン類似度を求める。このように、判定部30は、コサイン類似度によるスコアを求めてもよい。
次いで、判定部30は、元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52とを比較する(S7)。次いで、判定部30は、互いの情報の一致/不一致をもとにスコアリングすることで、元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52の類似度(スコア)を判定する(S8)。
S8における類似度の判定では、元プログラム11AのDLL読出情報52に含まれるファイルを要素とする集合と、対象プログラム11BのDLL読出情報52に含まれるファイルを要素とする集合とを比較して、集合の類似性を示すスコアをもとめてもよい。この集合の類似性を示すスコアとしては、ジャックカード(Jaccard)係数がある。具体的には、判定部30は、2つの集合のORの要素数を分母とし、2つの集合のANDの要素数を分子としてジャックカード係数を求める。
また、集合の類似性を示すスコアとしては、ファイルの読み出される順番(ファイルの並び順)の類似性がある。例えば、互いの集合におけるファイルの読み出し順(並び順)の一致箇所に応じたスコアを求めてもよい。また、判定部30は、元プログラム11AのDLL読出情報52に含まれるファイルを読み出し順に並べた情報のN−gramモデルと、対象プログラム11BのDLL読出情報52に含まれるファイルを読み出し順に並べたN−gramモデルとの類似度合いをスコアに換算して類似度を求めてもよい。
このように、判定部30は、元プログラム11Aが共有ライブラリ群203より呼び出すファイルの集合と、対象プログラム11Bが共有ライブラリ群203より呼び出すファイルの集合との類似度合いを求めてもよい。
次いで、判定部30は、元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53とを比較する(S9)。次いで、判定部30は、互いの情報の一致/不一致をもとにスコアリングすることで、元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53の類似度(スコア)を判定する(S10)。
S10における類似度の判定では、元プログラム11Aのプロセス情報53に含まれるプロセスを要素とする集合と、対象プログラム11Bのプロセス情報53に含まれるプロセスを要素とする集合とを比較して、集合の類似度を示すジャックカード係数をスコアとして求めてもよい。このように、判定部30は、元プログラム11Aが実行するプロセスの集合と、対象プログラム11Bが実行するプロセスの集合との類似度合いを求めてもよい。
次いで、出力部40は、S2、S6、S8およびS10において判定部30により判定された判定結果、すなわち元プログラム11Aと、対象プログラム11Bとの類似度をディスプレイやファイルなどに出力する(S11)。
図7は、結果出力を説明する説明図である。図7に示すように、出力部40は、S2、S6、S8およびS10において判定部30により判定された判定結果を表示画面300に表示する。これにより、ユーザは、対象プログラム11Bがマルウエアであるか否かを判別することができる。
具体的には、表示画面300は、ファイル表示領域301、結果表示領域302〜304を有する。ファイル表示領域301は、対象プログラム11Bに対する複数の元プログラム11Aとの比較結果をもとに、類似度(スコア)の高い順に元プログラム11Aを並べて表示する領域である。このファイル表示領域301により、ユーザは、対象プログラム11Bとの類似度の高い元プログラム11Aを容易に知ることができる。
結果表示領域302は、元プログラム11Aと、対象プログラム11Bとのコード同士の類似度合いを解析した静的解析の結果を表示する領域である。この結果表示領域302により、ユーザは、元プログラム11Aと、対象プログラム11Bとのコードの類似度合いを容易に知ることができる。
結果表示領域303は、元プログラム11Aの実行時と、対象プログラム11Bの実行時との比較による動的解析の結果を表示する領域である。具体的には、結果表示領域303は、元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51との比較によるスコア値303aを有する。このスコア値303aより、ユーザは、元プログラム11Aの実行時におけるAPIコールの内容と、対象プログラム11Bの実行時におけるAPIコールの内容との類似度合いを容易に知ることができる。
また、結果表示領域303は、元プログラム11AのDLL読出情報52と、対象プログラム11BのDLL読出情報52との比較によるスコア値303bを有する。このスコア値303bより、ユーザは、元プログラム11Aの実行時において呼び出される共有ライブラリのファイル群と、対象プログラム11Bの実行時において呼び出される共有ライブラリのファイル群との類似度合いを容易に知ることができる。
また、結果表示領域303は、元プログラム11Aのプロセス情報53と、対象プログラム11Bのプロセス情報53との比較によるスコア値303cを有する。このスコア値303cより、ユーザは、元プログラム11Aの実行時におけるプロセスと、対象プログラム11Bの実行時におけるプロセスとの類似度合いを容易に知ることができる。
結果表示領域304は、元プログラム11AのAPIコール情報51と、対象プログラム11BのAPIコール情報51との比較によるコサイン類似度のスコア値304aを表示する領域である。このスコア値304aにより、ユーザは、元プログラム11Aの実行時におけるAPIコールの内容と、対象プログラム11Bの実行時におけるAPIコールの内容とのコサイン類似度を容易に知ることができる。
以上のように、情報処理装置1は、システム環境200下で元プログラム11Aを実行させ、共有ライブラリ群203から読み出したファイル群のDLL読出情報を取得する。また、情報処理装置1は、システム環境200下で対象プログラム11Bを実行させ、共有ライブラリ群203から読み出したファイル群のDLL読出情報を取得する。また、情報処理装置1は、元プログラム11AのDLL読出情報と、対象プログラム11BのDLL読出情報とを比較し、比較結果に応じて元プログラム11Aと対象プログラム11Bとの間の類似度を判定して出力する。したがって、ユーザは、全ての亜種のマルウェアを元プログラム11Aとして収集することなく、元プログラム11Aより多種多様に派生するマルウェアの検出を容易に行うことができる。
なお、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、情報処理装置1で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。また、情報処理装置1で行われる各種処理機能は、クラウドコンピューティングにより、複数のコンピュータが協働して実行してもよい。
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施形態と同様の機能を有するプログラムを実行するコンピュータ(ハードウエア)の一例を説明する。図8は、実施形態にかかる情報処理装置1のハードウエア構成例を示すブロック図である。
図8に示すように、情報処理装置1は、各種演算処理を実行するCPU101と、データ入力を受け付ける入力装置102と、モニタ103と、スピーカ104とを有する。また、情報処理装置1は、記憶媒体からプログラム等を読み取る媒体読取装置105と、各種装置と接続するためのインタフェース装置106と、有線または無線により外部機器と通信接続するための通信装置107とを有する。また、情報処理装置1は、各種情報を一時記憶するRAM108と、ハードディスク装置109とを有する。また、情報処理装置1内の各部(101〜109)は、バス110に接続される。
ハードディスク装置109には、上記の実施形態で説明した入力部10、実行部20、判定部30および出力部40における各種の処理を実行するためのプログラム111が記憶される。また、ハードディスク装置109には、プログラム111が参照する各種データ112が記憶される。入力装置102は、例えば、情報処理装置1の操作者から操作情報の入力を受け付ける。モニタ103は、例えば、操作者が操作する各種画面を表示する。インタフェース装置106は、例えば印刷装置等が接続される。通信装置107は、LAN(Local Area Network)等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
CPU101は、ハードディスク装置109に記憶されたプログラム111を読み出して、RAM108に展開して実行することで、各種の処理を行う。なお、プログラム111は、ハードディスク装置109に記憶されていなくてもよい。例えば、情報処理装置1が読み取り可能な記憶媒体に記憶されたプログラム111を読み出して実行するようにしてもよい。情報処理装置1が読み取り可能な記憶媒体は、例えば、CD−ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置にこのプログラム111を記憶させておき、情報処理装置1がこれらからプログラム111を読み出して実行するようにしてもよい。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、
前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得し、
取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
処理をコンピュータに実行させることを特徴とする類似度判定プログラム。
(付記2)前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を前記類似度として出力する、
ことを特徴とする付記1に記載の類似度判定プログラム。
(付記3)前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を示すジャックカード係数を前記類似度として出力する、
ことを特徴とする付記2に記載の類似度判定プログラム。
(付記4)前記出力する処理は、前記第1のファイル群を読み出し順に並べた情報のN−gramモデルと、前記第2のファイル群を読み出し順に並べた情報のN−gramモデルとの類似度を判定して出力する、
ことを特徴とする付記1に記載の類似度判定プログラム。
(付記5)前記出力する処理は、複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルを特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
ことを特徴とする付記1に記載の類似度判定プログラム。
(付記6)所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、
前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得し、
取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
処理をコンピュータが実行することを特徴とする類似度判定方法。
(付記7)前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を前記類似度として出力する、
ことを特徴とする付記6に記載の類似度判定方法。
(付記8)前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を示すジャックカード係数を前記類似度として出力する、
ことを特徴とする付記7に記載の類似度判定方法。
(付記9)前記出力する処理は、前記第1のファイル群を読み出し順に並べた情報のN−gramモデルと、前記第2のファイル群を読み出し順に並べた情報のN−gramモデルとの類似度を判定して出力する、
ことを特徴とする付記6に記載の類似度判定方法。
(付記10)前記出力する処理は、複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルを特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
ことを特徴とする付記6に記載の類似度判定方法。
(付記11)所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得する取得部と、
取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する出力部と、
を有することを特徴とする情報処理装置。
(付記12)前記出力部は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を前記類似度として出力する、
ことを特徴とする付記11に記載の情報処理装置。
(付記13)前記出力部は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を示すジャックカード係数を前記類似度として出力する、
ことを特徴とする付記12に記載の情報処理装置。
(付記14)前記出力部は、前記第1のファイル群を読み出し順に並べた情報のN−gramモデルと、前記第2のファイル群を読み出し順に並べた情報のN−gramモデルとの類似度を判定して出力する、
ことを特徴とする付記11に記載の情報処理装置。
(付記15)前記出力部は、複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルを特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
ことを特徴とする付記11に記載の情報処理装置。
1…情報処理装置
10…入力部
11A…元プログラム
11B…対象プログラム
20…実行部
30…判定部
40…出力部
50…記憶部
51…APIコール情報
52…DLL読出情報
53…プロセス情報
101…CPU
102…入力装置
103…モニタ
104…スピーカ
105…媒体読取装置
106…インタフェース装置
107…通信装置
108…RAM
109…ハードディスク装置
110…バス
111…プログラム
112…各種データ
200…システム環境
201…カーネル
202…アプリケーション
203…共有ライブラリ群
300…表示画面
301…ファイル表示領域
302〜304…結果表示領域
303a、303b、303c、304c…スコア値

Claims (9)

  1. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、
    前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得し、
    複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルの出現頻度を特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
    処理をコンピュータに実行させることを特徴とする類似度判定プログラム。
  2. 前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を前記類似度として出力する、
    ことを特徴とする請求項1に記載の類似度判定プログラム。
  3. 前記出力する処理は、前記第1のファイル群の情報に含まれるファイルを要素とする集合と、前記第2のファイル群の情報に含まれるファイルを要素とする集合との類似性を示すジャックカード係数を前記類似度として出力する、
    ことを特徴とする請求項2に記載の類似度判定プログラム。
  4. 前記出力する処理は、前記第1のファイル群を読み出し順に並べた情報のN−gramモデルと、前記第2のファイル群を読み出し順に並べた情報のN−gramモデルとの類似度を判定して出力する、
    ことを特徴とする請求項1に記載の類似度判定プログラム。
  5. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、
    前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得し、
    複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルの出現頻度を特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する、
    処理をコンピュータが実行することを特徴とする類似度判定方法。
  6. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報を取得し、前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報を取得する取得部と、
    複数の前記第1のプログラムより取得した前記第1のファイル群の情報に含まれるファイルの出現頻度を特徴として集約した情報と、前記第2のファイル群の情報とを比較し、比較結果に応じて複数の前記第1のプログラムと前記第2のプログラムとの間の類似度を判定して出力する出力部と、
    を有することを特徴とする情報処理装置。
  7. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報、APIコールに関する第1のAPIコール情報およびプロセスに関する第1のプロセス情報を取得し、
    前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報、APIコールに関する第2のAPIコール情報およびプロセスに関する第2のプロセス情報を取得し、
    取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第1の類似度を判定し、
    取得した前記第1のAPIコール情報と前記第2のAPIコール情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第2の類似度を判定し、
    取得した前記第1のプロセル情報と前記第2のプロセス情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第3の類似度を判定し、
    判定した前記第1の類似度と、判定した前記第2の類似度と、判定した前記第3の類似度とを並べて出力する、
    処理をコンピュータに実行させることを特徴とする類似度判定プログラム。
  8. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報、APIコールに関する第1のAPIコール情報およびプロセスに関する第1のプロセス情報を取得し、
    前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報、APIコールに関する第2のAPIコール情報およびプロセスに関する第2のプロセス情報を取得し、
    取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第1の類似度を判定し、
    取得した前記第1のAPIコール情報と前記第2のAPIコール情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第2の類似度を判定し、
    取得した前記第1のプロセル情報と前記第2のプロセス情報とを比較し、比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第3の類似度を判定し、
    判定した前記第1の類似度と、判定した前記第2の類似度と、判定した前記第3の類似度とを並べて出力する、
    処理をコンピュータが実行することを特徴とする類似度判定方法。
  9. 所定のシステム環境下で第1のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第1のファイル群の情報、APIコールに関する第1のAPIコール情報およびプロセスに関する第1のプロセス情報を取得し、前記所定のシステム環境下で第2のプログラムを実行させ、前記所定のシステムの共有ライブラリに格納されるファイル群から読み出した第2のファイル群の情報、APIコールに関する第2のAPIコール情報およびプロセスに関する第2のプロセス情報を取得する取得部と、
    取得した前記第1のファイル群の情報と前記第2のファイル群の情報とを比較して比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第1の類似度を判定し、取得した前記第1のAPIコール情報と前記第2のAPIコール情報とを比較して比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第2の類似度を判定し、取得した前記第1のプロセル情報と前記第2のプロセス情報とを比較して比較結果に応じて前記第1のプログラムと前記第2のプログラムとの間の第3の類似度を判定する判定部と、
    判定した前記第1の類似度と、判定した前記第2の類似度と、判定した前記第3の類似度とを並べて出力する出力部と、
    を有することを特徴とする情報処理装置
JP2017000748A 2017-01-05 2017-01-05 類似度判定プログラム、類似度判定方法および情報処理装置 Active JP6866645B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017000748A JP6866645B2 (ja) 2017-01-05 2017-01-05 類似度判定プログラム、類似度判定方法および情報処理装置
JP2017102323A JP2018137716A (ja) 2017-01-05 2017-05-24 マイクロフォンセッティングシステム
US15/841,466 US11048799B2 (en) 2017-01-05 2017-12-14 Dynamic malware analysis based on shared library call information
EP17207642.4A EP3346409A1 (en) 2017-01-05 2017-12-15 Program, information processing apparatus and method
SG10201710531VA SG10201710531VA (en) 2017-01-05 2017-12-18 Program, information processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017000748A JP6866645B2 (ja) 2017-01-05 2017-01-05 類似度判定プログラム、類似度判定方法および情報処理装置

Publications (2)

Publication Number Publication Date
JP2018109909A JP2018109909A (ja) 2018-07-12
JP6866645B2 true JP6866645B2 (ja) 2021-04-28

Family

ID=60781590

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017000748A Active JP6866645B2 (ja) 2017-01-05 2017-01-05 類似度判定プログラム、類似度判定方法および情報処理装置
JP2017102323A Pending JP2018137716A (ja) 2017-01-05 2017-05-24 マイクロフォンセッティングシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017102323A Pending JP2018137716A (ja) 2017-01-05 2017-05-24 マイクロフォンセッティングシステム

Country Status (4)

Country Link
US (1) US11048799B2 (ja)
EP (1) EP3346409A1 (ja)
JP (2) JP6866645B2 (ja)
SG (1) SG10201710531VA (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11146580B2 (en) * 2018-09-28 2021-10-12 Adobe Inc. Script and command line exploitation detection
CN110139175B (zh) * 2019-05-25 2021-08-31 青岛农业大学 一种影视工程中可防杂音的录音装置
CN110856059A (zh) * 2019-11-28 2020-02-28 江苏盐西世纪教育产业项目开发有限公司 一种礼堂用可快速安装的麦克风安装结构
CN111698591B (zh) * 2020-06-23 2022-03-08 江西师范大学 一种田野采风用音乐片段提取设备
US11914709B2 (en) 2021-07-20 2024-02-27 Bank Of America Corporation Hybrid machine learning and knowledge graph approach for estimating and mitigating the spread of malicious software

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093239B1 (en) 2000-07-14 2006-08-15 Internet Security Systems, Inc. Computer immune system and method for detecting unwanted code in a computer system
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables
US6792543B2 (en) * 2001-08-01 2004-09-14 Networks Associates Technology, Inc. Virus scanning on thin client devices using programmable assembly language
US7549164B2 (en) 2003-06-11 2009-06-16 Symantec Corporation Intrustion protection system utilizing layers and triggers
US7000150B1 (en) 2002-06-12 2006-02-14 Microsoft Corporation Platform for computer process monitoring
US7415699B2 (en) 2003-06-27 2008-08-19 Hewlett-Packard Development Company, L.P. Method and apparatus for controlling execution of a child process generated by a modified parent process
US7185320B2 (en) 2003-06-27 2007-02-27 Hewlett-Packard Development Company, L.P. System and method for processing breakpoint events in a child process generated by a parent process
US7353498B2 (en) 2004-04-29 2008-04-01 Hewlett-Packard Development Company, L.P. Multi-process debugger
US20050273858A1 (en) 2004-06-07 2005-12-08 Erez Zadok Stackable file systems and methods thereof
US7735138B2 (en) * 2005-01-14 2010-06-08 Trend Micro Incorporated Method and apparatus for performing antivirus tasks in a mobile wireless device
US8321941B2 (en) * 2006-04-06 2012-11-27 Juniper Networks, Inc. Malware modeling detection system and method for mobile platforms
JP5083760B2 (ja) 2007-08-03 2012-11-28 独立行政法人情報通信研究機構 マルウェアの類似性検査方法及び装置
KR101193728B1 (ko) 2007-12-05 2012-10-22 시바우라 메카트로닉스 가부시키가이샤 특징 해석 장치
JP2010009269A (ja) 2008-06-26 2010-01-14 Iwate Univ コンピュータウィルス検出装置、コンピュータウィルス検出方法及びコンピュータウィルス検出プログラム
US20110041179A1 (en) * 2009-08-11 2011-02-17 F-Secure Oyj Malware detection
KR101057432B1 (ko) 2010-02-23 2011-08-22 주식회사 이세정보 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
JP2011258019A (ja) 2010-06-09 2011-12-22 Nippon Telegr & Teleph Corp <Ntt> 異常検知装置、異常検知プログラムおよび異常検知方法
JP5437964B2 (ja) 2010-10-06 2014-03-12 日本電信電話株式会社 解析方法、解析装置及び解析プログラム
US20120102569A1 (en) 2010-10-21 2012-04-26 F-Secure Corporation Computer system analysis method and apparatus
US9652616B1 (en) * 2011-03-14 2017-05-16 Symantec Corporation Techniques for classifying non-process threats
US8555385B1 (en) 2011-03-14 2013-10-08 Symantec Corporation Techniques for behavior based malware analysis
US8806641B1 (en) * 2011-11-15 2014-08-12 Symantec Corporation Systems and methods for detecting malware variants
US9558348B1 (en) 2012-03-01 2017-01-31 Mcafee, Inc. Ranking software applications by combining reputation and code similarity
US9021589B2 (en) 2012-06-05 2015-04-28 Los Alamos National Security, Llc Integrating multiple data sources for malware classification
WO2014087597A1 (ja) 2012-12-07 2014-06-12 キヤノン電子株式会社 ウイルス侵入経路特定装置、ウイルス侵入経路特定方法およびプログラム
US9448859B2 (en) 2013-09-17 2016-09-20 Qualcomm Incorporated Exploiting hot application programming interfaces (APIs) and action patterns for efficient storage of API logs on mobile devices for behavioral analysis
US10666677B2 (en) 2013-09-23 2020-05-26 New York University System, method and computer-accessible medium for deterrence of malware
US10073973B2 (en) * 2013-09-25 2018-09-11 Mitsubishi Electric Corporation Process testing apparatus, computer-readable medium, and process testing method
US9489514B2 (en) 2013-10-11 2016-11-08 Verisign, Inc. Classifying malware by order of network behavior artifacts
WO2015100327A1 (en) 2013-12-26 2015-07-02 Mcafee, Inc. Generic unpacking of program binaries
US20150205962A1 (en) 2014-01-23 2015-07-23 Cylent Systems, Inc. Behavioral analytics driven host-based malicious behavior and data exfiltration disruption
US8930916B1 (en) 2014-01-31 2015-01-06 Cylance Inc. Generation of API call graphs from static disassembly
JP6459289B2 (ja) * 2014-08-07 2019-01-30 日本電気株式会社 マルウェア推定装置、マルウェア推定方法、及び、マルウェア推定プログラム
US10043009B2 (en) * 2014-09-24 2018-08-07 Intel Corporation Technologies for software basic block similarity analysis
US20160094564A1 (en) * 2014-09-26 2016-03-31 Mcafee, Inc Taxonomic malware detection and mitigation
JP6282217B2 (ja) 2014-11-25 2018-02-21 株式会社日立システムズ 不正プログラム対策システムおよび不正プログラム対策方法
EP3227820A1 (en) 2014-12-05 2017-10-11 Permissionbit Methods and systems for encoding computer processes for malware deteection
CN105989283B (zh) 2015-02-06 2019-08-09 阿里巴巴集团控股有限公司 一种识别病毒变种的方法及装置
JP2016206950A (ja) * 2015-04-22 2016-12-08 日本電信電話株式会社 マルウェア判定のための精査教師データ出力装置、マルウェア判定システム、マルウェア判定方法およびマルウェア判定のための精査教師データ出力プログラム
US20160379136A1 (en) * 2015-06-26 2016-12-29 Qualcomm Incorporated Methods and Systems for Automatic Extraction of Behavioral Features from Mobile Applications
US10230749B1 (en) * 2016-02-29 2019-03-12 Palo Alto Networks, Inc. Automatically grouping malware based on artifacts
US10200390B2 (en) * 2016-02-29 2019-02-05 Palo Alto Networks, Inc. Automatically determining whether malware samples are similar
US9917855B1 (en) 2016-03-03 2018-03-13 Trend Micro Incorporated Mixed analysys-based virtual machine sandbox
US20170308701A1 (en) 2016-04-22 2017-10-26 Qualcomm Incorporated Methods and Systems for Intelligently Detecting Malware and Attacks on Client Computing Devices and Corporate Networks
RU2634177C1 (ru) 2016-05-20 2017-10-24 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения нежелательного программного обеспечения
WO2018006241A1 (en) 2016-07-04 2018-01-11 Mcafee, Inc. Method and apparatus to detect security vulnerabilities in web application
CN106599686B (zh) * 2016-10-12 2019-06-21 四川大学 一种基于tlsh特征表示的恶意软件聚类方法
JP6104447B1 (ja) 2016-10-31 2017-03-29 株式会社ソリトンシステムズ プログラム動作監視制御装置、分散オブジェクト生成管理装置、プログラム、及びプログラム動作監視システム
US9804952B1 (en) 2016-11-07 2017-10-31 Red Hat, Inc. Application debugging in a restricted container environment
US10552609B2 (en) 2016-12-30 2020-02-04 Intel Corporation Malicious object detection in a runtime environment
US10169586B2 (en) 2016-12-31 2019-01-01 Fortinet, Inc. Ransomware detection and damage mitigation
US10645099B1 (en) 2017-09-01 2020-05-05 Ca, Inc. Malware detection facilitated by copying a memory range from an emulator for analysis and signature generation

Also Published As

Publication number Publication date
US11048799B2 (en) 2021-06-29
SG10201710531VA (en) 2018-08-30
US20180189492A1 (en) 2018-07-05
EP3346409A1 (en) 2018-07-11
JP2018137716A (ja) 2018-08-30
JP2018109909A (ja) 2018-07-12

Similar Documents

Publication Publication Date Title
JP6866645B2 (ja) 類似度判定プログラム、類似度判定方法および情報処理装置
US9015814B1 (en) System and methods for detecting harmful files of different formats
US9876812B1 (en) Automatic malware signature extraction from runtime information
US9621571B2 (en) Apparatus and method for searching for similar malicious code based on malicious code feature information
US8762948B1 (en) System and method for establishing rules for filtering insignificant events for analysis of software program
US8850581B2 (en) Identification of malware detection signature candidate code
US9043915B2 (en) System and method for detecting malicious executable files based on similarity of their resources
JP2018041438A (ja) ファイル中の悪意のあるコードの検出システム及び方法
KR102317833B1 (ko) 악성 코드 탐지 모델 학습 방법 및 이를 이용한 탐지 방법
JP6404273B2 (ja) 仮想マシンでファイルのアンチウイルススキャンを実行するシステム及び方法
KR101228899B1 (ko) 벡터량 산출을 이용한 악성코드의 분류 및 진단 방법과 장치
US7702159B2 (en) System and method for detecting similar differences in images
US11036564B2 (en) Non-transitory computer-readable storage medium, information processing apparatus and method for detecting malware
US20180341770A1 (en) Anomaly detection method and anomaly detection apparatus
US10275595B2 (en) System and method for characterizing malware
CN108090352B (zh) 检测系统及检测方法
JP5441043B2 (ja) プログラム、情報処理装置、及び情報処理方法
KR20210061893A (ko) 소프트웨어 취약점 검출 장치 및 방법
US8949771B2 (en) Media files including programming code and description
JP2018109908A (ja) 類似度判定プログラム、類似度判定方法および情報処理装置
KR102299640B1 (ko) 퍼즈 테스팅을 이용한 커널 시스템 콜 유사도 분석 방법 및 시스템
KR100896319B1 (ko) 실행 프로그램의 실행 압축 유무 탐지 장치 및 방법
KR101480244B1 (ko) 클래스 단위의 시그니처를 이용한 악성 어플리케이션 탐지 방법 및 장치
US20220196737A1 (en) Test assistance device, test assistance method and storage medium storing program
KR102421394B1 (ko) 하드웨어와 소프트웨어 기반 트레이싱을 이용한 악성코드 탐지 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191008

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200728

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200916

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210322

R150 Certificate of patent or registration of utility model

Ref document number: 6866645

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150