ニューラルネットワークに基づくマルウェア検出分析

ニューラルネットワークに基づくマルウェア検出分析

今日、あらゆる業界にとって、「マルウェアを効果的に検出する方法」は、ネットワーク セキュリティに関する共通の問題となっています。マルウェア感染インシデントは、数百万ドルの経済的損失をもたらす可能性があります。現在のウイルス対策製品やマルウェア検出ツールは、一般的にシグネチャベースの検出テクノロジを使用しており、既知のさまざまな種類のマルウェアを識別するために一連のルールを手動で設定する必要があります。しかし、相対的に言えば、この方法は対象を絞ったものであり、新しいタイプのマルウェアを識別することはできません。

ほとんどの環境では異なるコードが使用され、毎日何百万もの新しいマルウェアが作成されるため、このアプローチは非常に非効率的です。したがって、急速に変化する現在のマルウェア エコシステムに適用できる検出テクノロジが緊急に必要であり、機械学習はまさに必要なものである可能性があります。

実際、多くのスタートアップ企業やサイバーセキュリティ企業が、機械学習をベースにしたセキュリティ検出システムの開発に着手しています。これらの企業は通常、高品質なシステムを開発するために、特徴量エンジニアリングやデータ分析に多くの人的資源と物的資源を費やしますが、実際には、特徴量エンジニアリングを介さずにオペレーティングシステムやハードウェア全体でマルウェアを検出できる一連の技術を開発することができます。詳細については、最新の調査レポートを参照してください。

このレポートでは、悪意のある Windows 実行可能ファイルを検出するようにトレーニングできる人工ニューラル ネットワークを紹介しています (実行可能ファイルの生のバイト シーケンスのみが入力として使用されます)。この方法には、次の利点があります。

  1. 手動でのコンパイルやコンパイラ関連の知識は必要ありません。これは、トレーニングされた分析モデルが非常に適用性が高く、マルウェアの自己進化に適応できることを意味します。
  2. 計算の複雑さはシーケンスの長さに比例するため、大きなファイルに適しています。
  3. バイナリ コード内の重要なサブ領域を識別して法医学的分析を行うことができます。
  4. このアプローチは、新しいファイル形式、コンパイラ、命令セット構造でも機能します。必要なのはトレーニング データとモデルだけです。

したがって、マルウェア監視のために機械学習を使用してマルウェアの生のバイトシーケンスを分析および識別することは、機械学習コミュニティにおける有望な研究分野になると考えています。

ディープラーニングをマルウェア検出に適用する際の難しさは何ですか?

最近、研究者たちはニューラル ネットワークをコンピューター ビジョン、音声認識、自然言語処理に適用することに成功していますが、この成功の理由の 1 つは、生データ (ピクセルやテキストの個々の文字など) から特徴を学習できることです。したがって、これらの成功事例にヒントを得て、実行可能ファイルの元の文字を使用してニューラル ネットワークをトレーニングし、対象ファイルが悪意のあるものであるかどうかを判断できるようになるかもしれません。これが実現できれば、マルウェア検出ツールを大幅に簡素化でき、検出精度が向上するだけでなく、マルウェアのわかりにくいが非常に重要な特性を特定できるようになります。

しかし、ディープラーニングをマルウェア検出の分野に適用するには、解決すべき問題がまだ多く残っています。たとえば、Microsoft の Windows PE マルウェアの場合、解決する必要がある問題は次のとおりです。

  1. 入力シーケンス内の 1 つの文字を単位として扱うということは、約 200 万の時間ステップでシーケンス分類問題を処理することを意味します。私たちの知る限り、これはこれまでのニューラル ネットワーク ベースのシーケンス分類器の入力長をはるかに超えています。
  2. マルウェアのバイトには、人間が読めるテキスト、バイナリ コード、画像などの任意のオブジェクトなど、さまざまな形式の情報が含まれている可能性があります。また、一部暗号化されたコンテンツも含まれています。
  3. 関数間の呼び出しコマンドやジャンプコマンドは並べ替えることができるため、関数間には複雑な空間相関関係が存在します。

解決

これらの課題と問題に対応するために、私たちは多数の異なるニューラル ネットワーク構造をテストしましたが、前述の課題により、一般的ではないニューラル ネットワーク構造とパラメーターを試す必要がありました。

モデルを設計する際には、主に次の 3 つの機能を考慮しました。

  1. 計算とメモリ使用量においてシーケンスの長さを効率的にスケーリングする機能。
  2. ファイル全体をインストルメント化するときにローカル環境とグローバル環境を考慮する機能。
  3. マルウェアマーカーの分析を支援する機能。

最後に、設計できる最も適切なマルウェア検出ネットワーク モデルを次の図に示します。

データとモデルのトレーニング

このネットワークをトレーニングおよび検証するために、2 セットのデータ セットを使用しました。最初のトレーニング セット グループ A は、オープン ソース データから収集しました。グループ A には、43,967 個の悪意のあるファイル サンプルと 21,854 個の無害なファイル サンプルが含まれています。 2 番目のグループ (グループ B) のサンプルは、産業用ウイルス対策ベンダーによって提供され、実際の攻撃シナリオにおける悪意のあるファイルと無害なファイル サンプル (合計 400,000 個のファイル サンプル、それぞれ半分ずつ) が含まれています。しかし、実験の後半では、1,011,766 個の悪意のあるファイル サンプルを含む 2,011,786 個の固有のバイナリ ファイル サンプルを含む、より多くのトレーニング コーパス (グループ B) を受け取りました。ニューラル ネットワーク モデルの収束をタイムリーに得るには、大量のデータ セットを使用してネットワークをトレーニングする必要があります。

トレーニングと分析の結果を下の図に示します。

結果から、私たちのモデルはグループ A のトレーニング データセットに最も適しており、次いでグループ B に適していることがわかります。しかし、より大きなコーパス(200 万のテスト文書)を使用してトレーニングを続けると、ネットワーク モデルが継続的に改善されることがわかりました。

要約する

マルウェア検出は確かに有望な研究分野であるため、この研究が機械学習コミュニティにマルウェア検出の分野をより積極的に探求するよう促すことを願っています。ディープラーニングは画像、信号、自然言語処理において目覚ましい成果と進歩を達成しているため、これらの技術をマルウェア検出などのまったく異なる分野に拡張できる可能性があります。

<<:  水滴事件の裏側:スマート監視下では逃げ場はなく、カモフラージュやマスク着用も無意味!

>>:  人工知能がとても人気ですが、機械学習とディープラーニングの違いがわかりますか?

ブログ    

推薦する

アンサンブル学習: 3人の頭脳は1人の頭脳よりも優れている

[51CTO.com からのオリジナル記事] 「靴屋が 3 人いれば、諸葛亮 1 人より優れている」...

2019年を迎え、人工知能技術の動向はどのように発展していくのでしょうか?

2018 年は過去のものとなりましたが、AI は依然として今年の主要なテクノロジー トレンドの 1...

自然言語処理のためのディープラーニングの概要: 基本概念から最先端の研究まで

自然言語処理入門導入自然言語処理 (NLP) は、言語を処理および理解することで特定のタスクを実行で...

...

...

...

1つのモデルで8つの視覚タスクを処理し、1つの文で画像と動画を生成できます。

[[437247]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...

ByteDance、最大6.9倍のパフォーマンス向上を実現した大規模モデルトレーニングフレームワークveGiantModelをオープンソース化

背景近年、NLPの応用分野では大きな進歩がありました。Bert、GPT、GPT-3などの超大規模モデ...

...

...

技術革命は初期の成果を達成した:AIはサプライチェーン管理の分野で2つの地位を獲得した

データ共有は依然として課題ですが、多くの組織はすでに AI の力をサプライ チェーン管理の 2 つの...

...

テンセントのロボット犬が本物の犬の仕事を奪う!彼は楽しくゲームをしたり、歩き回ったりすることができます。

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

Unity が開発者向け AI ソフトウェア マーケットプレイス AI Hub を立ち上げ、株価が 15% 上昇

6月28日、Unityは開発者向けAIソフトウェアマーケット「AI Hub」を正式に立ち上げ、AIソ...

新しいターミナルゲームプレイ: 「ゼロコード」スクリプトベースのガイダンス

著者 | 宋涛、尚賢、小斌 他アプリガイダンスは端末上でのマインドセット構築の重要な手段です。私たち...