我想合并Clamav Python和Yara规则。目标是按需扫描我制定的Yara规则。我写了这个简单的脚本,工作正常
import pyclamd
cd=pyclamd.ClamdAgnostic()
x=cd.scan_file('/home/john/Desktop/workSpace/yara/2.pdf')
if x is False:
print ("no ")
else :
print ("Yes")
有没有一种方法可以使用yara规则但是通过pyclamd扫描相同的.pdf文件?
我找出答案。Clamav似乎可以读取 *.yara文件并在现有的病毒数据库中搜索。解决方案是将Yara规则放在/var/lib/clamav目录中。该代码需要进行一些修改,只是为了重新加载clamdagnostic()和voila。
import pyclamd
cd=pyclamd.ClamdAgnostic()
cd.reload()
x=cd.scan_file('/home/john/Desktop/workSpace/yara/2.pdf)
print (x)
如果规则为真,则您将看到带有使用规则的打印输出
{'/home/john/Desktop/workSpace/yara/2.pdf': ('FOUND', 'YARA.testFor2.UNOFFICIAL')}
否则输出将为null