このトピックでは、Malware AnalysisサービスがインストールされているNetWitness SuiteホストでカスタムYARAコンテンツを有効化する手順について説明します。ビルトインのセキュリティ侵害インジケータに加えて、Malware Analysisでは、YARAで記述されたセキュリティ侵害インジケータもサポートしています。YARAは、マルウェアの調査担当者がマルウェアのサンプルの特定や分類を行えるようにするためのルール言語です。RSAでは、YARAベースの組み込み型IOC(セキュリティ侵害インジケータ)をRSA Liveで公開しています。これらは、サブスクライブされたアプライアンスに自動的にダウンロードされてアクティブ化されます。
高度なスキルと知識を持つユーザは、YARAルールを編集してアプライアンスに配置することによって、RSA Malware Analysisに検出機能を追加したり、編集したYARAルールをRSA Liveでパブリッシュしたりすることができます。このセクションでは、アプライアンスを構成する管理者がカスタムYARAコンテンツの作成を有効化する手順について説明します。
前提条件
これは高度な構成タスクであり、このタスクを行うには、GCC(GNUコンパイラ コレクション)、C++ Python開発ライブラリを構成してYARAをビルドするための十分な権限と知識が必要です。また、標準のYARAドキュメントを熟知している必要があります。次のコンポーネントが必要です。
- PCRE(Perl-Compatible Regular Expression)ライブラリ:pcre-8.33.tar.bz2
- YARA 1.7(リビジョン:167)スタンドアロンYARAコマンド ライン:yara-1.7.tar
- Python用YARA拡張機能:yara-python-1.7.tar.gz
- YARAルールのドキュメント:YARA User's Manual 1.6.pdf
コンポーネントはこちらからダウンロードできます。https://code.google.com/p/yara-project/downloads/list
注:本書の執筆時点では、YARA 2.0が利用可能ですが、Malware Analysis 10.5ではサポートされていません。
CentOsベースのアプライアンスでYARAをビルドするために必要なライブラリとアプリケーションのインストール
CentOSを実行しているホストでYARAをビルドする前提条件として、make、GNUコンパイラ コレクション、C++ Python開発ライブラリをアプライアンスにインストールする必要があります。YARAのビルドに必要なアプリケーションとライブラリをインストールするには、次の手順を実行します。
- 次のコマンドを実行し、/etc/yum.repos.dフォルダに標準のYUM repoが存在し、その他のrepoファイルが存在しないことを確認します。
ls -al /etc/yum.repos.d
次のような結果が表示されます。
-rw-r-r-. 1 root root 1926 Jun 26 2012 CentOS-Base.repo
-rw-r-r-. 1 root root 637 Jun 26 2012 CentOS-Debuginfo.repo
-rw-r-r-. 1 root root 626 Jun 26 2012 CentOS-Media.repo
-rw-r-r-. 1 root root 2593 Jun 26 2012 CentOS-Vault.repo - アプライアンスにmakeをインストールするには、以下のコマンドを入力します。
- yum search make
次のメッセージが返されます。make.x86_64 : A GNU tool which simplifies the build process for user - yum install make.x86_64
- yum search make
- GCCをインストールし、テストするには、次のコマンドを実行します。
- yum search gcc
次のメッセージが表示されます。
gcc-c+.x86_64 : C+ support for GCC
gcc.x86_64 : Various compilers (C, C++, Objective-C, Java, ...) - 以下のコマンドを実行します。
yum install gcc.x86_64
yum install gcc-c++.x86_64 - gccコマンドをテストするには、以下のコマンドを実行します。
gcc -v
cc -v
- yum search gcc
- アプライアンスにC++ Python開発ライブラリをインストールするには、以下のコマンドを実行します。
- yum search python dev
次のメッセージが返されます。
python-devel.x86_64 : The libraries and header files needed for Python development - yum install python-devel.x86_64
- yum search python dev
Yaraのセットアップ
Malware Analysisを実行しているNetWitness SuiteホストでYARAをビルドできるGCCおよびC++ Python開発ライブラリを作成するには、次の手順を実行します。
- 次のいずれかの操作を実行します。
- インストール先のホストがMac OSを実行している場合は、Mac OS用のxCodeをインストールします。
- インストール先のホストがCentOSを実行している場合は、YUMコマンド ラインを使用して、make、GCC、C++ Python開発ライブラリをインストールします。
- PCREライブラリをインストールするため、ターミナル ウィンドウを開き、以下のコマンドを実行します。
tar -xvf pcre-8.33.tar.bz2
cd pcre-8.33
./configure
make
sudo make install - スタンドアロンYARAコマンド ラインをインストールするため、以下のコマンドを実行します:
tar -xvf yara-1.7.tar
cd yara-1.7
./configure
make
sudo make install - スタンドアロンYARAコマンド ラインをテストします。
- 次のコマンドを実行します:
yara - コマンドが成功した場合は、ステップ7に進みます。コマンドが失敗し、「yara: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory」というエラーが返された場合は、次のコマンドを実行して/etc/ld.so.confファイルまたはLD_LIBRARY_PATH環境変数を確認します。
ldconfig -v
- 次のコマンドを実行します:
- Python用YARA拡張機能をインストールするには、以下のコマンドを実行します。
tar -xvf yara-python-1.7.tar.gz
cd yara-python-1.7
python setup.py build
sudo python setup.py install - YARA拡張機能をテストする方法
- 次のコマンドを実行します:python
- Pythonプロンプト(>>>)で、以下のコマンドを実行します。
import yara
exit()
この構成が完了すると、アナリストは、「調査およびマルウェア解析ガイド」の「カスタムYARAコンテンツの実装」の説明に従って、Malware Analysisホストで使用できるカスタムYARA IOCを作成できます。