我尝试使用 YARA 检测 Babyk 勒索软件。
rule babuk_detect
{
meta:
description = "Babyk detection"
strings:
$a= "MZ"
$b= "CryptGenRandom"
$c= ".babyk"
condition:
$a or $b or $c
}
使用 Pe-studio,我看到以 ASCII 形式调用 CryptGenRAndom,因此检测到这一点没有问题。但是,未检测到 c 变量。 Pe-studio 告诉我这个是用 Unicode 编码的。你们知道如何让 YARA 检测以 unicode 编码的字符串吗?
我尝试在十六进制编辑器中打开文件以获取 YARA 变量的十六进制形式。我还尝试用 UTF-8 编码替换该字符串。但没有任何作用
我找到了检测它的方法。我只需在变量 c 中的字符串定义后添加“wide”即可。
但是结果不太可读:
.\x00b\x00a\x00b\x00y\x00k\x00
我的意思是它有效,因为它不是很长,但在较长的字符串上可能很难阅读。我在 yara 帮助上没有看到任何更改输出格式的选项。你有想法吗?