用正则表达式和Androguard编写yara规则

时间:2020-07-01 13:18:11

标签: yara androguard

我想用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方法。

有人可以提示我如何编写亚拉法则吗?

0 个答案:

没有答案