YARA - это инструмент, предназначенный (но не ограничиваясь) для помощи исследователям вредоносных программ в выявлении и классификации образцов вредоносных программ.

яра-питон

С помощью этой библиотеки вы можете использовать YARA из своих программ Python. Он охватывает все функции YARA, от компиляции, сохранения и загрузки правил до сканирования файлов, строк и процессов.

Вот небольшой пример:

>>> 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)
[(10L, '$a', 'lmn')]

Установка

Самый простой способ установить YARA - использовать pip:

 $ pip install yara-python

Но вы также можете получить исходный код с GitHub и скомпилировать его самостоятельно:

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

Обратите внимание на --recursive вариант, используемый с git. Это важно, потому что нам нужно скачатьyara подпроект, содержащий исходный код дляlibyara(основная библиотека YARA). Также важно отметить, что два приведенных выше метода ссылкиlibyaraстатически в yara-python. Если вы хотите динамически ссылаться на общийlibyara использование библиотеки:

$ sudo python setup.py install --dynamic-linking

Чтобы эта опция работала, вы должны собрать и установить YARA отдельно перед установкой.yara-python.

Документация

Дополнительную информацию о том, как использовать yara-python, можно найти на https://yara.readthedocs.io/en/latest/yarapython.html.