在Yara规则中使用androguard模块时出现内存错误

2024-06-16 11:41:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试用androguard module安装Yara3.8.1。在安装过程中,我面对this issue,所以我将@reox提供的补丁应用到androguard.c文件中,它解决了这个问题。之后,我用命令行尝试了一个简单的Yara规则import "androguard",它工作得很好。然后我尝试在python应用程序中使用Yara规则,所以我安装了yara-python并以这种方式使用它:

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)

当使用不带import "androguard"模块的Yara规则时,match函数工作正常,但是当我想应用导入androguard的规则时,match函数会给出一个错误:

^{pr2}$

我对一个小文件应用一个简单的规则,以KB为单位。{androguard是正确的,因为当这个模块工作的时候。有什么想法吗?在


Tags: 模块文件pathimportjsondata规则my