YARAは、マルウェア研究者とセキュリティエンジニアがバイナリパターンを識別し、それに対応するルールを作成するためのツールです。PythonプログラムからYARAを使用するためには、yara-pythonというライブラリが必要です。

インストール

YARA-Pythonのインストールは非常に簡単で、pipを使用して行うことができます。

$ pip install yara-python

また、GitHubからソースを取得して自分でコンパイルすることも可能です。

$ git clone --recursive https://github.com/VirusTotal/yara-python
$ cd yara-python
$ python setup.py build
$ sudo python setup.py install

使用方法

以下に、YARA-Pythonを使用してルールをコンパイルし、ファイル、文字列、プロセスをスキャンする例を示します。

import yara
rule = yara.compile(source='rule foo: bar {strings: $a = \"lmn\" condition: $a}')
matches = rule.match(data='abcdefgjiklmnoprstuvwxyz')
print(matches)  # [foo]
print(matches[0].rule)  # foo
print(matches[0].tags)  # ['bar']
print(matches[0].strings)  # [$a]
print(matches[0].strings[0].identifier)  # $a
print(matches[0].strings[0].instances)  # [lmn]
print(matches[0].strings[0].instances[0].offset)  # 10
print(matches[0].strings[0].instances[0].matched_length)  # 3

このように、YARA-PythonはPythonプログラムからYARAの全機能を利用することを可能にします。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です