用 Rust 重写的 YARA。
YARA-X 是 YARA 的重生版本,YARA 是一款专为恶意软件研究人员设计的模式匹配工具。这个新版本旨在比其前身更快、更安全、更易于使用。YARA-X 的最终目标是取代 YARA,成为恶意软件研究人员默认的模式匹配工具。
使用 YARA-X,你可以基于文本或二进制模式创建恶意软件家族(或任何你想描述的对象)的描述。每个描述(即规则)由一组模式和决定其逻辑的布尔表达式组成。让我们看一个例子:
rule silent_banker : banker {
meta:
description = "This is just an example"
threat_level = 3
in_the_wild = true
strings:
$a = {6A 40 68 00 30 00 00 6A 14 8D 91}
$b = {8D 4D B0 2B C1 83 C0 27 99 6A 4E 59 F7 F9}
$c = "UVODFRYSIHLNWPEJXQZAKCBGMT"
condition:
$a or $b or $c
}
上述规则告诉 YARA-X,任何包含这三种模式之一的文件都必须被报告为 silent_banker。这只是一个简单的例子,通过使用通配符、不区分大小写的字符串、正则表达式、特殊运算符以及许多其他特性,可以创建更复杂、更强大的规则,你可以在文档中找到相关说明。
请阅读此文。
请阅读此文。
是的,仍在维护。YARA 仍在持续维护,未来的版本将包含错误修复和次要功能。但是,不要期望有大型新功能或模块。所有增强 YARA 的工作,包括添加新模块,现在都将集中在 YARA-X 上。
YARA-X 已经成熟且稳定。在 VirusTotal,我们已经在生产环境中运行 YARA-X 很长时间,使用数万条规则扫描了数十亿个文件,并解决了差异和错误。这意味着 YARA-X 已经经过了实战检验。
请测试 YARA-X,如果你发现错误或希望实现某些功能,请随时提交 issue。
欢迎为 YARA-X 做出贡献!有关 Google 贡献者许可协议(CLA)要求、代码风格约定以及如何提交拉取请求的详细信息,请阅读 CONTRIBUTING.md。