JP2019527447A - ニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体 - Google Patents

ニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP2019527447A
JP2019527447A JP2019524109A JP2019524109A JP2019527447A JP 2019527447 A JP2019527447 A JP 2019527447A JP 2019524109 A JP2019524109 A JP 2019524109A JP 2019524109 A JP2019524109 A JP 2019524109A JP 2019527447 A JP2019527447 A JP 2019527447A
Authority
JP
Japan
Prior art keywords
data
malicious code
neural network
code
input
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
JP2019524109A
Other languages
English (en)
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.)
Estsecurity Corp
Original Assignee
Estsecurity 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 Estsecurity Corp filed Critical Estsecurity Corp
Publication of JP2019527447A publication Critical patent/JP2019527447A/ja
Pending legal-status Critical Current

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
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Virology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本発明はニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体に関するものである。本発明によれば、別の特徴を抽出せず、一次元2進データを二次元データに変換し、多層の非線形構造を有するニューラルネットワークを介してディープラーニングを行うので、ディープラーニングの実行により悪性コード及びその変種の特徴を抽出できる。従って、別の特徴抽出ツールや専門家の人為的な努力を必要としないので、分析時間が短縮され、既存の悪性コードの分類ツールが検出できない変種悪性コードもディープラーニングを行って検出することができる。【選択図】 図2

Description

本発明は変種悪性コードを検出するための技術に関するもので、より詳細にはニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法が記録されたコンピュータ読み取り可能な記録媒体に関するものである。
悪性コードとは悪意のある目的で製作してコンピュータに悪影響を及ぼす全てのソフトウェアを呼ぶ。既存のシグネチャベースの検出方法や静的又は動的解析方法では、急速に増加している変種悪性コードに対処することが難しい。即ち、既存の方法を用いて悪性コードを検出する場合には、受動的分析とシグネチャを生成する方法で悪性コードを検出するため、変種悪性コードに対処することが難しい。また、既存の方法では、悪性コードの自動生成ツールなどを用いた変種悪性コードの生成及び伝播が容易に発生する恐れがある。悪性コードを静的に検出する既存の静的解析方法は悪性コードの実行ファイル、又は分解コードから人が任意に悪性コードの特徴を抽出して分析するため、データの特性を複合的に反映することが難しい。
本発明の目的はニューラルネットワーク学習ベースでデータに含まれた変種悪性コードを検出することができる装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供することにある。
前述したような目的を達成するための本発明の一態様に係る変種悪性コードを検出するための装置は、一つの元素がデータ処理単位である二次元マトリックスからなる入力層と、複数の演算を含む複数の層で構成され、前記複数の層のうちいずれかの層のいずれかの演算結果は重みが適用されて、次層の演算に入力として提供される隠れ層と、複数のノードからなる出力層と、を含むニューラルネットワーク;一次元2進コードであるデータが入力されると、前記入力層のマトリックスに合わせて前記データを変換するデータ変換部;及び前記データが疑わしいデータであれば、前記疑わしいデータを前記ニューラルネットワークに入力して、前記ニューラルネットワークを介して前記疑わしいデータから予め学習された悪性コードの特徴を抽出し、分類して前記疑わしいデータに含まれた悪性コードのカテゴリを検出する検出部を含む。
前記データ変換部は、前記一次元2進コードをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする。
前記データ変換部は、前記一次元2進コードをピクセル単位に区分してピクセルを生成し、前記入力層のマトリックスのサイズに合わせて前記生成されたピクセルを用いて画像を生成することを特徴とする。
本発明の一実施形態に係る変種悪性コードを検出するための装置は、前記変換されたデータが学習データであれば、前記学習データを前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、逆伝播アルゴリズムを用いて前記重みを補正する学習部を更に含む。
前記隠れ層は、前記疑わしいデータがマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出する畳込み層;前記畳込み層に対応して前記抽出した悪性コードの特徴がマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記悪性コードの特徴をダウンサンプリングするプーリング層;及びそれぞれ前記悪性コードの特徴を示す複数のノードで構成される全結合層を含む。
前述したような目的を達成するための本発明の他の態様に係る変種悪性コードを検出するための方法は、一次元2進コードである入力データが入力されると、データ変換部が、一つの元素がデータ処理単位である所定サイズの二次元マトリックスに合わせて前記データを変換するステップ;及び前記データが疑わしいデータであれば、検出部が、ニューラルネットワークを介して予め学習された悪性コードの特徴を前記疑わしいデータから抽出し、抽出した悪性コードの特徴に基づいて前記疑わしいデータに含まれた悪性コードのカテゴリを検出するステップを含むことを特徴とする。
前記変換ステップは、一次元2進シーケンスで構成される入力データをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする。
前記変換ステップは、前記一次元2進コードをピクセル単位に区分してピクセルを生成するステップと、前記生成されたピクセルを用いて前記マトリックスに合わせて画像に変換するステップと、を含む。
前述した方法は、前記変換ステップ後、前記データが学習データであれば、学習部が、前記学習データを前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、前記重みを補正するステップを更に含む。
前記検出ステップは、前記疑わしいデータがマッピングされる特徴マップとカーネルとの間の演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出するステップ;前記抽出した悪性コードの特徴を、それぞれ悪性コードの特徴を示す複数のノードにマッピングするステップ;及び前記マッピングされた悪性コードの特徴を、それぞれ悪性コードのカテゴリを示す複数のノードにマッピングして出力するステップを含む。
また、前述した本発明の好ましい実施形態に係る変種悪性コードを検出するための方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供する。
本発明によれば、別の特徴を抽出せず、一次元2進データを二次元データに変換し、多層の非線形構造を有するニューラルネットワークを介してディープラーニングを行うので、ディープラーニングの実行により悪性コード及びその変種の特徴を抽出できる。従って、別の特徴抽出ツールや専門家の人為的な努力を必要としないので、分析時間が短縮され、既存の悪性コードの分類ツールが検出できない変種悪性コードもディープラーニングを行って検出することができる。
本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための装置の構成を示すブロック図である。 本発明の一実施形態に係るデータ変換部の動作を説明するための図である。 本発明の他の実施形態に係るデータ変換部の動作を説明するための図である。 本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するためのニューラルネットワークの構成を示すブロック図である。 本発明の一実施形態に係るニューラルネットワークの内部構造及び概念を説明するための図である。 本発明の実施形態に係るカーネルKcを用いた畳込み演算の一例を説明するための図である。 本発明の実施形態に係るプール演算の一例を説明するための図である。 本発明の実施形態に係る重みを適用するノードの演算を説明するための図である。 本発明の実施形態に係るディープラーニングに基づいて悪性コードを学習する方法を説明するためのフローチャートである。 本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための方法を説明するためのフローチャートである。
前述したような目的を達成するための本発明の一態様に係る変種悪性コードを検出するための装置は、一つの元素がデータ処理単位である二次元マトリックスからなる入力層と、複数の演算を含む複数の層で構成され、前記複数の層のうちいずれかの層のいずれかの演算結果は重みが適用されて、次層の演算に入力として提供される隠れ層と、複数のノードからなる出力層と、を含むニューラルネットワーク;一次元2進コードであるデータが入力されると、前記入力層のマトリックスに合わせて前記データを変換するデータ変換部;及び前記データが疑わしいデータであれば、前記疑わしいデータを前記ニューラルネットワークに入力して、前記ニューラルネットワークを介して前記疑わしいデータから予め学習された悪性コードの特徴を抽出し、分類して前記疑わしいデータに含まれた悪性コードのカテゴリを検出する検出部を含む。
前記データ変換部は、前記一次元2進コードをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする。
前記データ変換部は、前記一次元2進コードをピクセル単位に区分してピクセルを生成し、前記入力層のマトリックスのサイズに合わせて前記生成されたピクセルを用いて画像を生成することを特徴とする。
本発明の一実施形態に係る変種悪性コードを検出するための装置は、前記変換されたデータが学習データであれば、前記学習データを前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、逆伝播アルゴリズムを用いて前記重みを補正する学習部を更に含む。
前記隠れ層は、前記疑わしいデータがマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出する畳込み層;前記畳込み層に対応して前記抽出した悪性コードの特徴がマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記悪性コードの特徴をダウンサンプリングするプーリング層;及びそれぞれ前記悪性コードの特徴を示す複数のノードで構成される全結合層を含む。
前述したような目的を達成するための本発明の他の態様に係る変種悪性コードを検出するための方法は、一次元2進コードである入力データが入力されると、データ変換部が、一つの元素がデータ処理単位である所定サイズの二次元マトリックスに合わせて前記データを変換するステップ;及び前記データが疑わしいデータであれば、検出部が、ニューラルネットワークを介して予め学習された悪性コードの特徴を前記疑わしいデータから抽出し、抽出した悪性コードの特徴に基づいて前記疑わしいデータに含まれた悪性コードのカテゴリを検出するステップを含むことを特徴とする。
前記変換ステップは、一次元2進シーケンスで構成される入力データをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする。
前記変換ステップは、前記一次元2進コードをピクセル単位に区分してピクセルを生成するステップと、前記生成されたピクセルを用いて前記マトリックスに合わせて画像に変換するステップと、を含む。
前述した方法は、前記変換ステップ後、前記データが学習データであれば、学習部が、前記学習データを前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、前記重みを補正するステップを更に含む。
前記検出ステップは、前記疑わしいデータがマッピングされる特徴マップとカーネルとの間の演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出するステップ;前記抽出した悪性コードの特徴を、それぞれ悪性コードの特徴を示す複数のノードにマッピングするステップ;及び前記マッピングされた悪性コードの特徴を、それぞれ悪性コードのカテゴリを示す複数のノードにマッピングして出力するステップを含む。
また、前述した本発明の好ましい実施形態に係る変種悪性コードを検出するための方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供する。
本発明の詳細な説明に先立ち、以下で説明する本明細書および特許請求の範囲に使用した用語や単語は、通常的や辞書的な意味に限定して解釈してはならず、発明者はその自身の発明を最善の方法として説明するために用語の概念を適切に定義できるという原則に立ち、本発明の技術的な思想に符合する意味と概念として解釈しなければならない。従って、本明細書に記載した実施形態と図面に示す構成は、本発明の最も好ましい一実施形態に過ぎず、本発明の技術的な思想を全て代弁するものではないため、本出願時点においてこれらを代替することができる多様な均等物と変形例があり得ることを理解しなければならない。
以下、添付図面を参照して本発明の好ましい実施形態を詳しく説明する。この時、添付図面において同一の構成要素については同一の参照符号を付したことに注意しなければならない。なお、本発明の要旨を不明にする公知の機能及び構成についての詳細な説明は適宜省略する。同様の理由から添付図面において、一部の構成要素は、誇張されたり、省略されたり、または概略的に図示されており、各構成要素のサイズが実際の大きさを全面的に反映したものではない。
まず、本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための装置について説明することにする。図1は本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための装置の構成を示すブロック図である。また、図2は本発明の一実施形態に係るデータ変換部の動作を説明するための図であり、図3は本発明の他の実施形態に係るデータ変換部の動作を説明するための図である。そして、図4は本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するためのニューラルネットワークの構成を示すブロック図である。また、図5は本発明の一実施形態に係るニューラルネットワークの内部構造及び概念を説明するための図である。
図1を参照すると、本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための装置(以下、「悪性コード検出装置」と略称する)は、データ変換部100、学習部200、検出部300及びニューラルネットワーク400を含む。また、ニューラルネットワーク400は入力層410、隠れ層420及び出力層430を含む複数の層からなる。特に、ニューラルネットワーク400に含まれた複数の層は複数の演算からなり、複数の層のうちいずれかの層のいずれかの演算は重みを適用して、次層の少なくとも一つの演算で入力として用いられる。これらの演算及び重みによってニューラルネットワークは複数の非線形層を含む非線形多層構造を有するようになる。
ニューラルネットワーク400の入力層410は一つの元素がデータ処理単位である二次元マトリックスからなる。データ変換部100は学習データ及び疑わしいデータのうちいずれかのデータが入力されると、入力されたデータをニューラルネットワーク400の規格に合わせて変換する。即ち、入力されたデータは一次元2進コードからなり、データ変換部100は一次元2進コードを一つの元素がデータ処理単位である二次元マトリックスに合わせて変換する。
図2を参照して説明する実施形態によれば、データ変換部100はデータが入力されると、入力されたデータの2進コード、即ち、2進シーケンス(binary sequence)をkビットずつ束ねて単一の値として読み取る。そして、データ変換部100はkビットずつ読み取られた一次元2進コード(2進シーケンス)をDサイズを有する二次元ベクトルシーケンス(vector sequence)に変換する。ここで、k*Dはアーキテクチャで用いられるワードサイズの整数倍である。即ち、データ変換部100は非定型性を有していたコードをk*Dサイズに定型化された二次元ベクトルシーケンスに変換(embedding)する。その後、データ変換部は二次元ベクトルシーケンスに変換されたデータ(学習データ又は疑わしいデータ)を学習部200又は検出部300に入力として提供する。
図3を参照して説明する他の実施形態によれば、データ変換部100はデータが入力されると、入力されたデータの2進コードをピクセル単位に区分してピクセルを生成する(00000000:black→FFFFFFFF:white)。例えば、入力されたデータの2進コードをデータ変換部によって8ビット単位で束ねて単一のピクセル(pixel)に示す。その後、データ変換部100は入力層410のマトリックスのサイズに合わせて生成したピクセルを用いて画像を生成する。即ち、データ変換部100は入力層410のマトリックスの行と列の比と同じ割合を有する画像を生成する。このように、本発明の他の実施形態によれば、2進コードに変換して入力層410の規格に合った画像を生成する。この時、データ変換部100は悪性コードごとに実行ファイルのサイズが異なるため、画像の縦横比が適切に維持されるように、画像の横の長さを実行可能ファイルのサイズに比例して固定させる。特に、データ変換部100は画像で示したデータ(学習データ又は疑わしいデータ)のサイズが異なるため、入力層410の規格に合わせるために パディング(padding)、クロッピング(cropping)、サイズ変更(resizing)などを通じて画像のサイズを調整することができる。その後、データ変換部は二次元画像に変換されたデータ(学習データ又は疑わしいデータ)を学習部200又は検出部300に入力として提供する。
学習部200はデータ変換部100からの学習データが入力されると、その学習データをニューラルネットワーク400に入力し、ニューラルネットワーク400をディープラーニングさせる。
それぞれのニューラルネットワーク400は複数の演算を含む複数の層(layer)を含む。
複数の層のうちいずれかの層のいずれかの演算で得られた演算結果には重みWが適用されて、次層の少なくとも一つの演算に入力として提供されて用いられる。
学習部200は学習データをニューラルネットワーク400に入力し、ニューラルネットワーク400は複数の層の複数のノードを通じて行われる演算による最終の演算結果が当該学習データの悪性コードのカテゴリを示すように重みWを算出する。このように、重みWを算出する過程を本発明では「ディープラーニング(deep leaning)」と称する。
検出部300はデータ変換部100から疑わしいデータが入力されると、その疑わしいデータをニューラルネットワーク400に入力してニューラルネットワーク400を介して疑わしいデータに含まれた悪性コードのカテゴリを検出する。即ち、検出部300はニューラルネットワーク400を介して悪性コードのカテゴリを検出し、検出した悪性コードのカテゴリを出力する。
前述したように、ニューラルネットワーク400は複数の演算を含む複数の層を含む。このようなニューラルネットワーク400についてより詳細に説明することにする。図4を参照すると、ニューラルネットワーク400は入力層410、隠れ層420及び出力層430からなる。
入力層410は前述したような学習データや疑わしいデータが入力される層である。入力層410は所定のサイズを有する二次元マトリックスであり、このような二次元マトリックスの一つの元素は、一実施形態によれば、アーキテクチャのデータ処理単位であるワードサイズの整数倍になることができる。また、他の実施形態によれば、二次元マトリックスの一つの元素はピクセルになることができる。
なお、隠れ層420は学習データに基づいて悪性コードの特徴をディープラーニングしたり、ディープラーニングの結果に基づいて演算を行うことによって、疑わしいデータに含まれた悪性コードの特徴を分類して抽出するための層である。
隠れ層420は交互に繰り返される所定数の畳込み層(CL:convolution layer)、プーリング層(PL:pooling layer)、及び全結合層(FL:fully connected layer)を含む。
一例として、図5に示すように、隠れ層は第1及び第2畳込み層CL1、CL2と第1及び第2プーリング層PL1、PL2を含むことができる。畳込み層CL(CL1、CL2)及びプーリング層PL(PL1、PL2)は所定のサイズを有する特徴マップ(feature map)からなる。特徴マップを構成する各元素は所定のサイズを有するカーネルとの演算、即ち、畳込み演算(convolution)又はプール演算(pooling又はsubsampling)を通じて算出される。図5において、このような特徴マップは実線の長方形で示されており、カーネルは点線の長方形で示されている。
畳込み層CL1、CL2の特徴マップを構成する各元素は所定のサイズを有するカーネルを用いた畳込み演算を通じて算出される。畳込み演算に用いられるカーネルKcは相異なる複数の悪性コードの特徴を抽出するためのパラメータである。また、相異なる複数の悪性コードの特徴を抽出するために、相異なるカーネルKcの各元素は異なる値を有する。図6は本発明の実施形態に係るカーネルKcを用いた畳込み演算の一例を説明するための図である。図6に示すように、ニューラルネットワークは入力特徴マップM1とカーネルKcとの間に畳込み演算を行って、新しい出力特徴マップM2を生成する。図6の(A)に示すように、入力特徴マップM1は4×4サイズを有し、6(B)に示すように、カーネルKcは2×2サイズを有すると仮定する。ここで、カーネルKcは畳込み演算の重みWである。
このように、ニューラルネットワークは4×4サイズの入力特徴マップと2×2サイズのカーネルとの間に畳込み演算を行って、図6(C)に示すように、3×3サイズの出力特徴マップを生成する。ニューラルネットワークは一定の間隔でカーネルKcがシフトしながら、特徴マップ(入力)の元素とそれに対応するカーネルの元素との間に畳込み演算を行う。より詳細には、畳込み演算は特徴マップ(入力)の元素と、それに対応するカーネルKcとの間の積を加算する演算(「積和演算」)を通じて得られる。一例として、出力特徴マップM2の(1、1)元素は第1の演算(S1)を通じて算出される。即ち、第1の演算(S1)の結果、出力特徴マップM2の(1、1)元素が以下の数式1のような積和演算を通じて算出される。
(1×1)+(1×1)+(0×0)+(1×0)=2 ・・・(数式1)
また、出力特徴マップM2の(2、2)元素は第2演算(S2)を通じて算出される。このような第2演算(S2)の結果、出力特徴マップM2の(2、2)元素が以下の数式2のような積和演算を通じて算出される。
(1×1)+(0×1)+(0×0)+(1×0)=1 ・・・(数式2)
前述したように、ニューラルネットワークは畳込み演算を通じて生成された特徴マップについてプール演算を行う。即ち、プーリング層PL1、PL2の特徴マップを構成する各元素は所定のサイズを有するカーネルを用いたプール演算(pooling又はsubsampling)を通じて算出される。プール演算に用いられるカーネルKpは複数の悪性コードの特徴をダウンサンプリングするためのパラメータである。図7は本発明の実施形態に係るプール演算の一例を説明するための図である。図7に示すように、ニューラルネットワークは入力特徴マップM3とカーネルKpとの間にプール演算を行って新しい出力特徴マップM4を生成する。ここで、入力特徴マップM3は図7(a)に示すように、4×4サイズを有し、カーネルKpは図7(b)に示すように、2×2のサイズを有すると仮定する。このように、ニューラルネットワークは4×4サイズの特徴マップと2×2サイズのカーネルとの間にプール演算を行って、図7(c)に示すように、2×2サイズを有する出力特徴マップを生成する。
ニューラルネットワークはカーネルKpが一定の間隔でシフトしながら入力特徴マップの元素とそれに対応するカーネルの元素との間にプール演算を行う。この実施形態においては、プール演算はカーネルKpがカーネルのサイズだけシフトすると仮定する。特に、プール演算は最大値、平均値、中央値、ノルム(norm)の値を選択する演算のうちいずれかであり得る。この実施形態においては、最大値を選択するプール演算を行って出力特徴マップを算出すると仮定する。一例として、出力特徴マップM4の(1、1)元素は第3演算(S3)を通じて算出される。即ち、第3演算(S3)の結果、出力特徴マップM4の(1、1)元素が以下の数式3のような最大値を選択するプール演算を通じて算出される。
Max(1,0,4,6)=6 ・・・(数式3)
他の例として、出力特徴マップM4の(1、2)元素は第4の演算(S4)を通じて算出される。このような第4の演算(S4)の結果、出力特徴マップM4の(1、2)元素が以下の数式4のような最大値を選択するプール演算を通じて算出される。
Max(2,3,0,1)=3 ・・・(数式4)
前述したように、畳込み層CL及びプーリング層PLとの間の演算が行われると、特徴マップの数は増加し、特徴マップを構成する元素の数は減少する。
全結合層FLは特徴マップの全ての元素が単一の値に完全に結合された層である。このような状態を通常全結合状態とする。
全結合層FLは複数のノードからなり、データから抽出できる悪性コードの特徴を分類して抽出した層である。従って、全結合層FLの複数のノードにおけるそれぞれは相異なる悪性コードの特徴を示す。また、各ノードは固有の演算を有する。図5の実施形態にはn個のノードN1、N2、N3、…Nnが示されている。
各ノードN1、N2、N3、…Nnは連結された前層の演算結果の入力を受け取って演算を行い、演算結果は次層の対応するノードP1、P2、P3に出力する。
図8は本発明の実施形態に係る重みを適用してノードを演算する過程を説明するための図である。図8に示すように、いずれかのノードNaは前層の関連ノードの出力を入力として受け取って演算を行った後、その演算結果を出力する。前層の出力が次層に入力される際に、重みWが適用される。即ち、図8に示すように、ノードNaの入力は前層の3つのノードにおけるそれぞれの演算結果である第1乃至第3出力I1、I2、I3のそれぞれに第1乃至第3重みW1、W2、W3をそれぞれ適用し、これを合算して得られた値である。即ち、ノードNaの入力は以下の数式5のような積和演算を通じて得られる。
(I1×W1)+(I2×W2)+(I3×W3) ・・・(数式5)
また、ノードNaの出力Oは次層のノードに対応する重みを適用して提供される。例えば、図8に示すように、ノードNaの出力がノードNbに入力される際に、重みWbが適用されて提供され、ノードNaの出力がノードNcに入力される際に、重みWcが適用されて提供される。
全結合層FLの出力は出力層430に入力として提供され、重みWを介して全結合層FLにマッピングされる。出力層430のノードにおけるそれぞれは悪性コードのカテゴリに対応する。このような出力層430のノードにおけるそれぞれの出力は、ニューラルネットワーク400に入力された学習データ又は疑わしいデータが当該悪性コードのカテゴリである確率を示すスコアであり得る。例えば、図4の出力層430のノードP1、P2、P3のそれぞれは悪性コードカテゴリ1,2、3に対応し、ノードP1、P2、P3のそれぞれの出力は学習データ又は疑わしいデータが悪性コードカテゴリ1,2、3である確率を意味する。
それによって、検出部300は疑わしいデータをニューラルネットワーク400に入力し、ニューラルネットワーク400の最終出力値、即ち、出力層430のノードにおけるそれぞれの出力に基づいて疑わしいデータに含まれた悪性コードがある悪性コードのカテゴリに属するかが分かれる。
例えば、検出部300はノードP1、P2、P3のいずれかの出力が所定値以上であり、他の2つのノードより高い数値を有する場合は、入力された疑わしいデータに含まれた悪性コードが当該ノードに対応する悪性コードのカテゴリに属すると判断することができる。
次に、本発明の実施形態に係る悪性コードを学習する方法について説明することにする。図9は本発明の実施形態に係る悪性コードを学習する方法を説明するためのフローチャートである。
学習データが入力されると、データ変換部100はS110ステップで、一次元2進コードである学習データをニューラルネットワーク400の入力層410のマトリックスに合わせて変換する。一実施形態よると、データ変換部100は一次元2進コードをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルシーケンスに変換し、変換したシーケンスを学習部200に入力する。他の実施形態によれば、データ変換部100は一次元2進コードをピクセル単位に区分してピクセルを生成し、生成したピクセルを用いて入力層410のマトリックスの行と列の比と同じサイズの画像に変換学習部200に入力する。
次に、学習部200はS120ステップで、前ステップで変換された学習データをニューラルネットワーク400に入力し、ニューラルネットワーク400の出力値を導出する。この時、ニューラルネットワーク400は学習データに対して複数の層の複数の演算を通じて出力値を導出する。
ここで、複数の層のうちいずれかの層のいずれかの演算結果は重みが適用されて、次層の演算に入力として提供される。
学習データはその悪性コードのカテゴリが知られている悪性コードを含む。従って、学習データを入力したとき、ニューラルネットワーク400の出力、即ち、ニューラルネットワーク400の出力層430の出力値は学習データの既知の悪性コードのカテゴリを示すことを期待することができる。このように、学習データがニューラルネットワーク400に入力された時、学習データの既知の悪性コードのカテゴリを示すことを期待する出力値を本発明では「期待値」と称する。従って、学習部200はS130ステップで、出力値が期待値になるように、又は出力値と期待値の差が最小になるように逆伝播アルゴリズムを用いて重みを修正する。例えば、図5に示すように、出力層430はノードP1、P2、P3を含み、それぞれの悪性コードの第1乃至第3カテゴリを示すと仮定する。また、入力された学習データは第3カテゴリに属する悪性コードを含むと仮定する。第1乃至第3カテゴリのそれぞれの出力はニューラルネットワーク400に入力された学習データが第1乃至第3カテゴリに属する確率を示すスコアである。従って、学習部200は出力層430のノードP3の出力値が最大になるように逆伝播アルゴリズムを用いて重みを修正する。前述したS110ステップ乃至S130ステップは複数の学習データを用いて「十分なディープラーニングが行われる」まで繰り返し行うことが好ましい。本発明において、「十分なディープラーニングが行われる」とは任意の学習データを入力した場合には出力値と期待値の差が予め設定された数値未満になるまでを意味する。
その後、前述したような方法で十分にディープラーニングしたニューラルネットワーク400を介して変種悪性コードを検出するための方法について説明することにする。図10は本発明の実施形態に係るニューラルネットワーク学習ベースの変種悪性コードを検出するための方法を説明するためのフローチャートである。
図10を参照すると、疑わしいデータが入力される場合、データ変換部100はS210ステップで、一次元2進コードである疑わしいデータをニューラルネットワーク400の入力層410のマトリックスに合わせて変換する。一実施形態よれば、図2に示すように、データ変換部100は一次元2進コードをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して二次元ベクトルシーケンスに変換し、変換したシーケンスを検出部300に入力する。他の実施形態によれば、図3に示すように、データ変換部100は2進コードをピクセル単位に区分してピクセルを生成し、生成したピクセルを用いて入力層410のマトリックスの行と列の比と同じサイズの画像に変換し、変換した画像を検出部300に入力する。
その後、検出部300はS220ステップで、前ステップで変換した疑わしいデータをニューラルネットワーク400に入力してニューラルネットワーク400の出力値を導出する。この時、ニューラルネットワーク400は疑わしいデータに対して複数の層の複数の演算を行って出力値を算出する。
ここで、複数の層のうちいずれかの層のいずれかの演算結果は予め学習された重みが適用されて、次層の演算に入力として提供される。次には、出力値を導出する手順についてより詳細に説明する。ニューラルネットワーク400の入力層410に疑わしいデータが入力されると、隠れ層420の畳込み層CL及びプーリング層PLは特徴マップとカーネル(K)との間の入力された疑わしいデータの演算に予め学習された重みを適用して、疑わしいデータに含まれた悪性コードの特徴を分類して抽出する。その後、畳込み層CL及びプール階PLから抽出した悪性コードの特徴を、予め学習された重みを用いて全結合層FLの悪性コードの特徴を示すノードにマッピングする。続いて、全結合層FLはマッピングされた悪性コードの特徴を予め学習された重みを用いて出力層430の悪性コードのカテゴリを示すノードにマッピングする。そして、出力層430の各ノードは疑わしいデータに含まれた悪性コードが当該悪性コードのカテゴリに属する確率をスコアとして出力する。
次に、検出部300はS230のステップで、疑わしいデータに含まれた悪性コードが出力層430の各ノードのうち出力値が最大であるノードに該当する悪性コードのカテゴリに属すると判断し、当該悪性コードのカテゴリを出力する。
一方、前述した本発明の実施形態に係る方法は多様なコンピュータ手段を通じて行われることができるプログラム命令形態で具現されてコンピュータで読み取り可能な記録媒体に記録されることができる。ここで、記録媒体はプログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。記録媒体に記録されるプログラム命令は本発明のために特別に設計されて構成されたものであるか、コンピュータソフトウェアの当業者に公知されて使用可能なものであり得る。例えば、記録媒体はハードディスク、フロッピーディスク及び磁気テープのような磁気媒体(Magnetic Media)、CD−ROM、DVDのような光記録媒体(Optical Media)、フロプティカルディスク(Floptical Disk)のような磁気−光媒体(Magneto−Optical Media)、及びROM、RAM、フラッシュメモリーなどのようなプログラム命令を格納し、行うように特別に構成したハードウェア装置を含む。また、プログラム命令の例としてはコンパイラーによって作られるような機械語コードだけでなく、インタプリターなどを用いてコンピュータで行うことができる高級言語コードを含む。このようなハードウェア装置は本発明の動作を行うために1つ以上のソフトウェアモジュールとして作動するように構成することができ、その逆も同様である。
以上、本発明をいくつかの好ましい実施形態を用いて説明したが、これらの実施形態は例示的なものであり、限定的なものではない。このように、本発明の属する技術分野における通常の知識を有する者であれば、本発明の思想と添付された特許請求の範囲に記載された権利範囲から外れずに、均等論によって多くの変形及び修正がなされ得ることがわかるはずである。
100 データ変換部
200 学習部
300 検出部
400 ニューラルネットワーク
410 入力層
420 隠れ層
430 出力層

Claims (9)

  1. 変種悪性コードを検出するための装置であって、
    一つの元素がデータ処理単位である二次元マトリックスからなる入力層と、複数の演算を含む複数の層で構成され、前記複数の層のうちいずれかの層のいずれかの演算結果は重みが適用されて、次層の演算に入力として提供される隠れ層と、複数のノードからなる出力層と、を含むニューラルネットワーク;
    一次元2進コードであるデータが入力されると、前記一次元2進コードをピクセル単位に区分してピクセルを生成し、前記入力層のマトリックスのサイズに合わせて前記生成されたピクセルを用いて画像を生成することによって、前記データを変換するデータ変換部;及び
    前記データが疑わしいデータであれば、前記データ変換部によって変換された前記データを疑わしいデータとして前記ニューラルネットワークに入力して、前記ニューラルネットワークを介して前記疑わしいデータから予め学習された悪性コードの特徴を抽出し、分類して前記疑わしいデータに含まれた悪性コードのカテゴリを検出する検出部を含むことを特徴とする変種悪性コードを検出するための装置。
  2. 前記データ変換部は、前記一次元2進コードをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする請求項1記載の変種悪性コードを検出するための装置。
  3. 前記データが学習データであれば、前記データ変換部によって変換された前記データを学習データとして前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、逆伝播アルゴリズムを用いて前記重みを補正する学習部を更に含むことを特徴とする請求項1記載の変種悪性コードを検出するための装置。
  4. 前記隠れ層は、前記疑わしいデータがマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出する畳込み層;
    前記畳込み層に対応して前記抽出した悪性コードの特徴がマッピングされる複数の特徴マップで構成され、カーネルとの演算を通じて前記悪性コードの特徴のサンプルを抽出するプーリング層;及び
    それぞれ前記悪性コードの特徴を示す複数のノードで構成される全結合層を含むことを特徴とする請求項1記載の変種悪性コードを検出するための装置。
  5. 一つの元素がデータ処理単位である二次元マトリックスからなる入力層と、複数の演算を含む複数の層で構成され、前記複数の層のうちいずれかの層のいずれかの演算結果は重みが適用されて、次層の演算に入力として提供される隠れ層と、複数のノードからなる出力層と、を含むニューラルネットワークを用いて変種悪性コードを検出するための方法であって、
    一次元2進コードである入力データが入力されると、データ変換部が、前記一次元2進コードをピクセル単位に区分してピクセルを生成し、前記生成されたピクセルを用いて前記マトリックスの行と列の比と同じ割合を有する画像に前記データを変換するステップ;及び
    前記データが疑わしいデータであれば、検出部が、前記データ変換部によって変換された前記データを疑わしいデータとして前記ニューラルネットワークに入力して、前記ニューラルネットワークを介して悪性コードの特徴を抽出し、抽出した悪性コードの特徴に基づいて前記疑わしいデータに含まれた悪性コードのカテゴリを検出するステップを含むことを特徴とする変種悪性コードを検出するための方法。
  6. 前記変換ステップは、一次元2進シーケンスで構成される入力データをアーキテクチャで用いられるワードサイズの整数倍ずつ区分して、二次元ベクトルのシーケンスに変換することを特徴とする請求項5に記載の変種悪性コードを検出するための方法。
  7. 前記変換ステップ後、前記データが学習データであれば、学習部が、前記データ変換部によって変換された前記データを学習データとして前記ニューラルネットワークに入力して、前記ニューラルネットワークの複数の演算を通じて出力された出力値が前記学習データの既知の悪性コードのカテゴリを示す期待値になるように、逆伝播アルゴリズムを用いて前記重みを補正するステップを更に含むことを特徴とする請求項5記載の変種悪性コードを検出するための方法。
  8. 前記検出ステップは、前記疑わしいデータがマッピングされる特徴マップとカーネルとの間の演算を通じて前記疑わしいデータに含まれた悪性コードの特徴を抽出するステップ;
    前記抽出した悪性コードの特徴を、それぞれ悪性コードの特徴を示す複数のノードにマッピングするステップ;及び
    前記マッピングされた悪性コードの特徴を、それぞれ悪性コードのカテゴリを示す複数のノードにマッピングして出力するステップを含むことを特徴とする請求項5記載の変種悪性コードを検出するための方法。
  9. 請求項5乃至8のいずれか一つに記載の変種悪性コードを検出するための方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体。
JP2019524109A 2017-05-24 2018-05-24 ニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体 Pending JP2019527447A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2017-0064301 2017-05-24
KR1020170064301A KR101863615B1 (ko) 2017-05-24 2017-05-24 신경망 학습 기반의 변종 악성 코드를 탐지하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
PCT/KR2018/005866 WO2018217019A1 (ko) 2017-05-24 2018-05-24 신경망 학습 기반의 변종 악성 코드를 탐지하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Publications (1)

Publication Number Publication Date
JP2019527447A true JP2019527447A (ja) 2019-09-26

Family

ID=62635174

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019524109A Pending JP2019527447A (ja) 2017-05-24 2018-05-24 ニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体

Country Status (5)

Country Link
US (1) US11675903B2 (ja)
EP (1) EP3483767B1 (ja)
JP (1) JP2019527447A (ja)
KR (1) KR101863615B1 (ja)
WO (1) WO2018217019A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10607004B2 (en) * 2016-09-29 2020-03-31 Intel Corporation Methods and apparatus to improve feature engineering efficiency with metadata unit operations
KR101863615B1 (ko) * 2017-05-24 2018-06-01 (주)이스트소프트 신경망 학습 기반의 변종 악성 코드를 탐지하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
KR101960869B1 (ko) * 2017-06-30 2019-03-21 주식회사 씨티아이랩 인공지능 기반 악성코드 검출 시스템 및 방법
KR101940029B1 (ko) 2018-07-11 2019-01-18 주식회사 마키나락스 어노말리 디텍션
KR101922956B1 (ko) * 2018-08-07 2019-02-27 (주)케이사인 저 차원 수의 엔트로피 카운트 맵 기반 악성코드 탐지 방법
CN109101817B (zh) * 2018-08-13 2023-09-01 亚信科技(成都)有限公司 一种识别恶意文件类别的方法及计算设备
US10880328B2 (en) 2018-11-16 2020-12-29 Accenture Global Solutions Limited Malware detection
US10656940B1 (en) * 2019-02-04 2020-05-19 Architecture Technology Corporation Systems, devices, and methods for source code generation from binary files
KR102241859B1 (ko) * 2019-05-20 2021-04-20 (주)지란지교시큐리티 악성 멀티미디어 파일을 분류하는 인공지능 기반 장치, 방법 및 그 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록매체
CN110223553B (zh) * 2019-05-20 2021-08-10 北京师范大学 一种答题信息的预测方法及系统
KR102093275B1 (ko) * 2019-05-23 2020-03-25 (주)지란지교시큐리티 악성코드 감염 유도정보 판별 시스템, 프로그램이 기록된 저장매체 및 방법
CN110245326B (zh) * 2019-06-13 2023-10-24 武汉轻工大学 基于神经网络的数据估算方法、设备、存储介质及装置
KR102185831B1 (ko) * 2019-07-25 2020-12-03 호서대학교 산학협력단 디해시 기반 악성코드 분석 장치 및 방법
KR102269652B1 (ko) * 2019-09-24 2021-06-25 국민대학교산학협력단 보안관제 데이터 분석을 위한 머신러닝 기반의 학습 벡터 생성 장치 및 방법
US11526725B2 (en) * 2019-12-06 2022-12-13 Bank Of America Corporation Attention-based layered neural network architecture for explainable and high-performance AI processing
KR102223345B1 (ko) * 2019-12-30 2021-03-04 부산대학교 산학협력단 완료 시간 예측을 위한 데이터 변환 장치 및 방법
CN113127864B (zh) * 2019-12-31 2024-05-24 奇安信科技集团股份有限公司 特征码提取方法、装置、计算机设备和可读存储介质
CN111310439B (zh) * 2020-02-20 2023-06-27 齐鲁工业大学 一种基于深度特征变维机制的智能语义匹配方法和装置
CN111783088B (zh) * 2020-06-03 2023-04-28 杭州迪普科技股份有限公司 一种恶意代码家族聚类方法、装置和计算机设备
US11790085B2 (en) 2020-10-29 2023-10-17 Electronics And Telecommunications Research Institute Apparatus for detecting unknown malware using variable opcode sequence and method using the same
KR102491451B1 (ko) * 2020-12-31 2023-01-27 주식회사 이스트시큐리티 심층 신경망 기반의 악성코드 탐지 분류체계의 유사도를 반영하는 시그니처 생성 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
CN112861135B (zh) * 2021-04-12 2024-05-31 中南大学 基于注意力机制的恶意代码检测方法
US11615523B2 (en) 2021-08-18 2023-03-28 Zhejiang Gongshang University Methods for recognizing small targets based on deep learning networks
CN113673594B (zh) * 2021-08-18 2022-07-12 浙江工商大学 一种基于深度学习网络的瑕疵点识别方法
CN113806746B (zh) * 2021-09-24 2024-03-22 沈阳理工大学 基于改进cnn网络的恶意代码检测方法
KR102518394B1 (ko) 2021-09-30 2023-04-05 단국대학교 산학협력단 설명 가능한 딥러닝 분석을 활용한 멀웨어 패밀리 분류 네트워크 시스템
KR102517057B1 (ko) * 2021-11-12 2023-04-03 주식회사 시큐어링크 통합특성 인공지능 기반 가상화 시스템 회피형 악성코드 탐지 장치
CN114741697B (zh) * 2022-04-22 2023-10-13 中国电信股份有限公司 恶意代码分类方法、装置、电子设备和介质
US11934523B1 (en) * 2022-12-01 2024-03-19 Flexxon Pte. Ltd. System and method for securing data files
CN116089951B (zh) * 2023-02-24 2023-07-14 山东云天安全技术有限公司 一种恶意代码检测方法、可读存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012027710A (ja) * 2010-07-23 2012-02-09 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア検出方法及び装置及びプログラム
CN105989288A (zh) * 2015-12-31 2016-10-05 武汉安天信息技术有限责任公司 一种基于深度学习的恶意代码样本分类方法及系统
US20160350532A1 (en) * 2015-04-16 2016-12-01 Cylance Inc. Recurrent neural networks for malware analysis

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952776B1 (en) * 1999-09-22 2005-10-04 International Business Machines Corporation Method and apparatus for increasing virus detection speed using a database
KR100548983B1 (ko) * 2000-11-02 2006-02-02 (주)마크텍 디지털 증명서의 발급 및 인증을 위한 텍스트의 삽입 방법및 장치
DE102004051840A1 (de) * 2004-10-25 2006-05-04 Siemens Ag Verfahren zum Anmelden eines mobilen Kommunikationsendgerätes gegenüber einem lokalen Netzwerk
JP2016206950A (ja) * 2015-04-22 2016-12-08 日本電信電話株式会社 マルウェア判定のための精査教師データ出力装置、マルウェア判定システム、マルウェア判定方法およびマルウェア判定のための精査教師データ出力プログラム
WO2017011702A1 (en) * 2015-07-15 2017-01-19 Cylance Inc. Malware detection
US20170068816A1 (en) * 2015-09-04 2017-03-09 University Of Delaware Malware analysis and detection using graph-based characterization and machine learning
KR101778679B1 (ko) 2015-10-02 2017-09-14 네이버 주식회사 딥러닝을 이용하여 텍스트 단어 및 기호 시퀀스를 값으로 하는 복수 개의 인자들로 표현된 데이터를 자동으로 분류하는 방법 및 시스템
US11049004B1 (en) * 2015-11-15 2021-06-29 ThetaRay Ltd. System and method for anomaly detection in dynamically evolving data using random neural network decomposition
AU2017281232B2 (en) * 2016-06-22 2020-02-13 Invincea, Inc. Methods and apparatus for detecting whether a string of characters represents malicious activity using machine learning
US9721097B1 (en) * 2016-07-21 2017-08-01 Cylance Inc. Neural attention mechanisms for malware analysis
US20180183815A1 (en) * 2016-10-17 2018-06-28 Kerry Wayne Enfinger System and method for detecting malware
US11620471B2 (en) * 2016-11-30 2023-04-04 Cylance Inc. Clustering analysis for deduplication of training set samples for machine learning based computer threat analysis
US10133865B1 (en) * 2016-12-15 2018-11-20 Symantec Corporation Systems and methods for detecting malware
CA3058010A1 (en) * 2017-04-03 2018-10-11 Royal Bank Of Canada Systems and methods for malicious code detection
CA3000166A1 (en) * 2017-04-03 2018-10-03 Royal Bank Of Canada Systems and methods for cyberbot network detection
KR101863615B1 (ko) * 2017-05-24 2018-06-01 (주)이스트소프트 신경망 학습 기반의 변종 악성 코드를 탐지하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
KR102007809B1 (ko) * 2019-03-05 2019-08-06 에스지에이솔루션즈 주식회사 이미지를 이용한 신경망 기반 익스플로잇킷 탐지 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012027710A (ja) * 2010-07-23 2012-02-09 Nippon Telegr & Teleph Corp <Ntt> ソフトウェア検出方法及び装置及びプログラム
US20160350532A1 (en) * 2015-04-16 2016-12-01 Cylance Inc. Recurrent neural networks for malware analysis
CN105989288A (zh) * 2015-12-31 2016-10-05 武汉安天信息技术有限责任公司 一种基于深度学习的恶意代码样本分类方法及系统

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
LAKSHMANAN NATARAJ, ET AL.: "A comparative Assesment of Malware Classification using Binary Texture Analysis and Dynamic Analysis", ACM, JPN7020000369, January 2011 (2011-01-01), ISSN: 0004408610 *
三島 悠: "マルウェアの挙動情報と可視化を用いたマルウェア分類システム", FIT2016 第15回情報科学技術フォーラム 講演論文集 第4分冊 査読付き論文・一般論文 ネット, JPN6020004999, 23 August 2016 (2016-08-23), pages 157 - 158, ISSN: 0004408612 *
武井 宏将, 初めてのディープラーニング 第1版, vol. 第1版, JPN6020004998, 4 March 2016 (2016-03-04), pages 23 - 26, ISSN: 0004408614 *
芳賀 智之 ほか: "機械学習による車載ネットワーク攻撃検知システム", パナソニック技報, vol. 63, no. 1, JPN6018026284, 15 May 2017 (2017-05-15), JP, pages 16 - 21, ISSN: 0004408613 *
飛山 駿: "Deep Neural Network多段化によるプロセスの挙動に着目したマルウェア推定手法", CSS2016 コンピュータセキュリティシンポジウム2016 論文集 合同開催 マルウェア対策研究人, vol. 第2016巻, JPN6020004997, 4 October 2016 (2016-10-04), JP, pages 310 - 317, ISSN: 0004408611 *

Also Published As

Publication number Publication date
EP3483767B1 (en) 2023-07-26
WO2018217019A1 (ko) 2018-11-29
US11675903B2 (en) 2023-06-13
US20190163904A1 (en) 2019-05-30
EP3483767A1 (en) 2019-05-15
EP3483767A4 (en) 2020-02-26
KR101863615B1 (ko) 2018-06-01

Similar Documents

Publication Publication Date Title
JP2019527447A (ja) ニューラルネットワーク学習ベースの変種悪性コードを検出するための装置、そのための方法及びこの方法を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体
Pan ECG: Edge-aware point cloud completion with graph convolution
CN109783666B (zh) 一种基于迭代精细化的图像场景图谱生成方法
US20160300121A1 (en) Neural network image representation
US11755889B2 (en) Method, system and apparatus for pattern recognition
WO2018180263A1 (ja) 情報処理装置、情報処理方法、及びコンピュータ可読記憶媒体
KR20190091806A (ko) 생성적 적대 네트워크를 이용한 비디오 시퀀스 생성 시스템 및 그 방법
JP2017010475A (ja) プログラム生成装置、プログラム生成方法および生成プログラム
KR102533984B1 (ko) 개선된 조작영상의 검출시스템 및 방법
KR20190080818A (ko) 부분 확률맵을 포함하는 딥 러닝 기반 객체 검출 방법 및 장치
US20190354533A1 (en) Information processing device, information processing method, and non-transitory computer-readable recording medium
KR102166016B1 (ko) 이미지 대 이미지의 변환을 위한 도메인 인식 기반의 변환 기법
KR102442055B1 (ko) 전자 장치 및 그 제어 방법
KR20190070044A (ko) 컨볼루션 신경망의 이진화 연산 장치 및 방법
CN113158970B (zh) 一种基于快慢双流图卷积神经网络的动作识别方法与系统
CN117636426A (zh) 一种基于注意力机制的面部和情景情感识别方法
JP6622369B1 (ja) 訓練データを生成する方法、コンピュータおよびプログラム
CN116523725A (zh) 一种神经网络模型的水印处理方法和装置
JP2020003879A (ja) 情報処理装置、情報処理方法、透かし検出装置、透かし検出方法、及びプログラム
KR102537207B1 (ko) 머신 러닝에 기반한 이미지 처리 방법 및 장치
KR102083635B1 (ko) 심층 신경망 시스템
JPWO2020054402A1 (ja) ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法
JP2020091813A (ja) ニューラルネットワークの学習方法、コンピュータプログラム及びコンピュータ装置
KR102416219B1 (ko) 보호 속성 표현 학습을 이용한 공정한 이미지 변환 장치 및 방법
CN117670878B (zh) 一种基于多模态数据融合的VOCs气体检测方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200212

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201216

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210707