
モジュール型ファイルスキャン・分析フレームワーク
MultiScannerは、ユーザーが一連のファイルを評価する際に、ツール一式を自動的に実行し、出力を集約するファイル分析フレームワークです。ツールは、カスタムビルドのPythonスクリプト、Web API、別のマシン上で動作するソフトウェアなどです。ツールは、MultiScannerフレームワーク内で実行されるモジュールを作成することで組み込まれます。
モジュールは迅速に記述でき、フレームワークに簡単に組み込めるように設計されています。現在作成・保守されているモジュールはマルウェア分析に関連していますが、フレームワークの対象範囲はそれに限定されません。モジュールの一覧はmodules/をご覧ください。説明と設定オプションはAnalysis Modulesのページにあります。
MultiScannerは、サンプルの保存、分析、レポート表示のための分散ワークフローもサポートしています。この機能には、Webインターフェース、REST API、分散ファイルシステム(GlusterFS)、分散レポート保存/検索(Elasticsearch)、分散タスク管理(Celery / RabbitMQ)が含まれます。詳細はアーキテクチャを参照してください。
MultiScannerは、コマンドラインインターフェース、Python API、またはWebインターフェースを備えた分散システムとして使用できます。詳細なインストール情報と使用方法については、ドキュメント(インストール、使用方法)を参照してください。
まだインストールしていない場合は、Python(2.7または3.4+)をインストールしてください。
次に、以下を実行します(<file> は実際にスキャンしたいファイルに置き換えてください):
$ git clone https://github.com/mitre/multiscanner.git
$ cd multiscanner
$ sudo -HE ./install.sh
$ multiscanner init
これにより、デフォルトの設定が生成されます。config.ini を確認して、どのモジュールが有効になっているかを確認してください。詳細は設定を参照してください。
これでファイルをスキャンできるようになります(<file> は実際にスキャンしたいファイルに置き換えてください):
$ multiscanner <file>
以下のコマンドを実行すると、MultiScannerのすべてのコマンドラインオプションの一覧が表示されます:
$ multiscanner --help
注意: RedHatまたはDebianベースのLinuxディストリビューションを使用していない場合は、install.shスクリプトを実行する代わりに、pipをインストールし(まだの場合)、以下のコマンドを実行してください:
$ pip install -r requirements.txt
import multiscanner
multiscanner.config_init(filepath)
output = multiscanner.multiscan(file_list)
results = multiscanner.parse_reports(output, python=True)
まだインストールしていない場合は、Docker と Docker Compose の最新版をインストールしてください。
$ git clone https://github.com/mitre/multiscanner.git
$ cd multiscanner
$ docker-compose up
すべてのサービスが起動して実行されるまで少し待つ必要があるかもしれませんが、その後Webブラウザで http://localhost:8000 にアクセスすると、Webインターフェースを使用できます。
注意: これは本番環境で使用すべきではありません。あくまで本格的なインストールのイメージを紹介するものです。詳細はこちらを参照してください。
詳細については、ReadTheDocs上の完全なドキュメントを参照してください。