PythonでYARAを使用するためには、まずpip
を使用してYARAをインストールする必要があります。以下のコマンドを実行します。
$ 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プログラムから使用するためのライブラリyara-python
は、YARAのすべての機能をカバーしています。これには、ルールのコンパイル、保存、ロードから、ファイル、文字列、プロセスのスキャンまでが含まれます。
以下に、YARAの基本的な使用例を示します。
import yara
rule = yara.compile(source='rule foo: bar {strings: $a = \"lmn\" condition: $a}')
matches = rule.match(data='abcdefgjiklmnoprstuvwxyz')
print(matches) # Output: [foo]
print(matches[0].rule) # Output: foo
print(matches[0].tags) # Output: ['bar']
print(matches[0].strings) # Output: [$a]
print(matches[0].strings[0].identifier) # Output: $a
print(matches[0].strings[0].instances) # Output: [lmn]
print(matches[0].strings[0].instances[0].offset) # Output: 10
print(matches[0].strings[0].instances[0].matched_length) # Output: 3
このように、PythonとYARAを組み合わせることで、強力なマルウェア解析ツールを作成することが可能になります。詳細なドキュメンテーションは、こちらから参照できます。.