マルウェアモデラー

良性と悪性の予測のためのロジスティック回帰モデルをトレーニングするための機械学習アプリケーションおよびライブラリと、関連ツールです。
このコードはベータ品質であり、バグが含まれる可能性があります。
基本的な手順は4つあります。
- 特徴抽出: 上位 k 個の n-gram を見つけます。k は約10万から100万、n は8にする必要があります。
- データセットファイルの作成: マルウェアと正常なソフトウェアのコレクションから、特徴量化されたサンプルをデータセットファイルとして作成します。
- モデルのトレーニング: トレーニングデータに基づいてモデルをトレーニングします。オプションで層化n分割交差検証 (
train --folds N) を使用し、最良の分割のモデルのみを保持します。
- 評価: テストデータまたは検証データ (ホールドアウトデータ) に対してモデルを評価します。
さらに:
- 類似度特徴を使用して、トレーニングに使用するサンプルに十分なバリエーションがあることを確認できます。
- N-gram特徴、データセットファイル、モデルはファイルタイプに関連付けられています。
- モデルは k 個の特徴をより少ない数に削減できるため、モデルがさらに特徴選択を行い、より良いモデルを作成できる可能性があります。
- モデルは1つのファイルタイプに対してのみ作成する必要があります。つまり、EXE用のモデル、PDF用のモデル、ELF用のモデルなどです。
- トレーニングデータは、多数のサンプルを含むバランスの取れたコレクションに基づく必要があります。良性と悪性のサンプルが同数で、少なくとも数十万は必要です。
- これらはシンプルなモデルであり、トレーニングデータの質にのみ依存します。悪いデータ、誤ってラベル付けされたデータ、または類似しすぎたデータは、価値のないモデルを生み出します。
以下の研究に基づいています:
- Edward Raff、William Fleming、Richard Zak、Hyrum Anderson、Bill Finlayson、Charles K Nicholas、Mark McLean、William Fleming、Charles K Nicholas、Richard Zak、Mark Mclean。KiloGrams: Very Large N-Grams for Malware Classification. Proceedings of KDD 2019 Workshop on Learning and Mining for Cybersecurity (LEMINCS'19) 所収。2019年。記事。
- William Fleshman、Edward Raff、Richard Zak、Mark McLean、Charles Nicholas。Static Malware Detection & Subterfuge: Quantifying the Robustness of Machine Learning and Current Anti-Virus。2018 13th International Conference on Malicious and Unwanted Software (MALWARE) 所収。2018年10月、1–10。最優秀論文賞。記事、Arvix、DOI。
- Edward Raff、Charles Nicholas。Hash-Grams: Faster N-Gram Features for Classification and Malware Detection. Proceedings of the ACM Symposium on Document Engineering 2018 所収。2018年。記事、DOI。
- Richard Zak、Edward Raff、Charles Nicholas。What can N-grams learn for malware detection? 2017 12th International Conference on Malicious and Unwanted Software (MALWARE) 所収。2017年10月、109–118。記事、DOI。
- Edward Raff、Richard Zak、Russell Cox、Jared Sylvester、Paul Yacci、Rebecca Ward、Anna Tracy、Mark McLean、Charles Nicholas。An investigation of byte n-gram features for malware classification. Journal of Computer Virology and Hacking Techniques、2016年9月。記事、DOI。
追加ツール:
- ファイルタイプに基づいてZipアーカイブからファイルを抽出します。VirusShareのファイルを扱う際に便利です。
- ファイルタイプ別にZipアーカイブ内のファイルの概要を取得します。
- ディレクトリ内のファイル同士のバイトレベルの類似性をチェックし、バリエーション豊かなデータセットの構築を支援します。
- マルウェアとグッドウェアのディレクトリを、バランスの取れたグッドウェア訓練用、マルウェア訓練用、グッドウェアテスト用、マルウェアテスト用に分割します。
追加の注意事項: