6个版本 (破坏性更新)

0.6.0 2024年7月30日
0.5.0 2024年6月30日
0.4.0 2024年5月29日
0.3.0 2024年5月17日
0.1.0 2024年4月4日

#4 in #yara

Download history 152/week @ 2024-05-01 95/week @ 2024-05-08 357/week @ 2024-05-15 239/week @ 2024-05-22 343/week @ 2024-05-29 382/week @ 2024-06-05 302/week @ 2024-06-12 299/week @ 2024-06-19 427/week @ 2024-06-26 208/week @ 2024-07-03 285/week @ 2024-07-10 676/week @ 2024-07-17 363/week @ 2024-07-24 431/week @ 2024-07-31 256/week @ 2024-08-07

每月下载量 1,784
2 个crate中使用 (通过 yara-x)

BSD-3-Clause

5KB

tests coverage Crates.io Crates.io MSRV

YARA-X

YARA-X是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-X与YARA相比如何?

阅读这篇

在规则级别有哪些区别?

阅读这篇

YARA是否仍在维护?

是的,仍在维护。YARA仍然在维护,未来的版本将包括错误修复和较小的新功能。但是,不要期望有新的大型功能或模块。所有增强YARA的努力,包括添加新模块,现在将集中在YARA-X上。

YARA-X的现状如何?

YARA-X仍然处于测试阶段,但已经足够成熟和稳定,可以用于命令行界面或一次性Python脚本。虽然API可能还会进行一些小的修改,但基础方面已经建立。

在VirusTotal,我们已经与YARA并行运行YARA-X一段时间了,使用成千上万的规则扫描数百万个文件,并解决两者之间的差异。这意味着YARA-X已经过实战检验。这些测试甚至发现了YARA的bug!

请测试YARA-X,如果您发现bug或希望实现的功能,请毫不犹豫地提交问题

依赖项

~1.7–3.5MB
~67K SLoC