1

我一直在阅读文档,我一直很难弄清楚这一点。翻译会有很大帮助。

我在网上看到了 Yara 的这个示例 Perl 规则:

rule BadBoy
{
strings:
 $a = "win.exe"
 $b = "http://foo.com/badfile1.exe"
 $c = "http://bar.com/badfile2.exe"
condition:
 $a and ($b or $c)
}

你将如何在 Python 中编写和编译这条规则?

4

1 回答 1

3

从python你首先需要import yara

直接来自文档:

然后,您需要在将 YARA 规则应用于您的数据之前对其进行编译,这些规则可以从文件路径编译:

rules = yara.compile()

您可以为格式化规则传递文件名,也可以插入一个字符串进行编译。

对于传递字符串,必须使用字典结构,键是数据的命名空间,值是属性。

import yara
rules = yara.compile(sources={
'identifier_for_instance_of rule':'rule BadBoy { 
                       'strings': [('$a', 'win.exe'),('$b', 'http://foo.com/badfile1.exe') , ('$c', 'http://bar.com/badfile2.exe')],
                       'condition': '$a and ($b or $c)'
                      }'})
于 2016-05-10T07:07:41.580 回答