我想用androguard创建一个yara规则。
import "androguard"
rule rule_name
{
meta:
description = "Lorem"
strings:
$str_reg = ...
condition:
(androguard.package_name($str_reg)) or
(androguard.app_name($str_reg)) or
(androguard.permission($str_reg))
}
$ str_reg应该是一个正则表达式。它应该是字符串“ SMS”,不区分大小写。 应当在软件包名称,应用名称或权限列表中检测所有以sms作为子字符串的apk。它还应检测子字符串,例如“ SMS”,“ sms”或“ Sms”。 问题是我只能编写简单的规则,例如:
rule rule_name
{
meta:
description = "Lorem"
condition:
(androguard.package_name(/sms/i)) or
(androguard.app_name(/sms/i)) or
(androguard.permission(/sms/i))
}
它仅满足“ sms”是子字符串(不区分大小写)的要求。但是我想要一个带有正则表达式的字符串变量(“ sms”是子字符串,不区分大小写),并且该变量应该传递给androguard方法。
有人可以提示我如何编写亚拉法则吗?