我尝试使用Yara安装androguard module 3.8.1。在安装过程中,我遇到了this issue,因此我将@reox给出的补丁应用于max_colors_cut_together { -1 }
文件,它解决了问题。之后,我使用命令行在androguard.c
上尝试了一个简单的Yara规则,该规则非常有效。然后,我尝试在python应用程序中使用Yara规则,因此我安装了yara-python并以这种方式使用它:
import "androguard"
使用不带import yara
dex_path = './classes.dex'
my_rule = './rule.yar'
json_data = load_json_data()
rule = yara.compile(my_rule)
matches = rule.match(filepath=dex_path, modules_data={'androguard': json_data})
print(matches)
模块的Yara规则时,match
函数会很好用,但是当我要应用导入androguard的规则时,import "androguard"
函数会出现错误:
match
我正在按照KB的顺序将一个简单规则应用于一个小文件。我认为问题出在androguard模块,因为当我删除yara.Error: could not map file "./classes.dex" into memory
时,它可以正常工作。任何想法?