【51CTO.com快译】市面上有众多不同的工具来检测企业网络面临的威胁。其中一些检测基于网络特征,而另一些检测基于公司端点或服务器上的文件或行为。这些解决方案大多使用现有规则来检测危险,但愿这些规则经常更新。但是当安全人员想要添加自定义规则用于检测或使用特定规则在端点上执行自己的事件响应时,会发生什么?这时候YARA 派得上用场。
一、YARA简介
YARA 是一个免费开源工具,旨在帮助安全人员检测和分类恶意软件,但它不应仅限于这一种用途。YARA规则还可以帮助检测特定文件或您可能想要检测的任何内容。
YARA是二进制代码,可以针对文件启动,将YARA规则作为变量。它适用于Windows、Linux和Mac操作系统。如果使用YARA-python扩展,它也可以在Python脚本中使用。
YARA规则是文本文件,包含满足时触发检测的项目和条件。这些规则可以针对单个文件、包含几个文件的文件夹甚至整个文件系统来启动。
二、YARA的用途
您可以通过以下几种方式使用YARA。
1.恶意软件检测
YARA的主要用途以及它在2008年创建的初衷是检测恶意软件。您要明白它不像传统的防病毒软件那样工作。后者主要检测二进制文件中几个字节的静态特征或可疑文件行为,而YARA可以通过使用特定的组件组合来扩大检测范围。因此,可以创建YARA规则以检测整个恶意软件家族,而不仅仅是单个变种。能够使用逻辑条件来匹配规则使其成为一种检测恶意文件的非常灵活的工具。
此外值得一提的是,在这种情形下,不仅可针对文件使用YARA规则,还可针对内存转储内容使用YARA规则。
2.事件处理
在事件发生期间,安全和威胁分析员有时需要快速检查某个特定文件或内容是否隐藏在端点甚至整个公司网络上的某个地方。无论文件位于何处,检测文件的一种解决方案是构建和使用特定的YARA规则。
3.内容快速分类
使用YARA规则可以在需要时进行真正的文件分类。可以使用YARA规则优化对恶意软件进行分类。然而,规则需要非常精确以避免误报。
4.入站网络连接分析
可以在网络环境中使用YARA,以检测发送到需要保护的公司网络的恶意内容。YARA规则可以针对电子邮件来启动,尤其是针对附件,或者网络的其他部分,比如反向代理服务器上的HTTP通信。当然,它可以用作现有分析软件的补充。
5.出站网络通信分析
可以使用YARA规则分析出站通信,以检测出站恶意软件通信,也可以尝试检测数据泄露。使用基于自定义规则的特定的YARA规则来检测公司的合法文档可以用作数据丢失防护系统,并检测可能存在的内部数据泄漏。
6.EDR集成
YARA是一个成熟的产品,因此几种不同的EDR(端点检测和响应)解决方案允许将个人的YARA 规则集成到其中,因而更容易只需点击一下即可在所有端点上运行检测。
三、如何安装 YARA?
YARA可用于不同的操作系统:macOS、Windows和Linux。
如何在 macOS上安装YARA?
YARA可以使用Homebrew安装在macOS 上。只需输入并执行命令:
- brew install YARA
完成此操作后,YARA就可以在命令行中使用了。
如何在Windows上安装YARA?
YARA提供易于使用的Windows二进制文件。一旦从网站下载zip文件后,它可以在任何文件夹中解压缩,包含两个文件:Yara64.exe和Yarac64.exe(或Yara32.exe和Yarac32.exe,如果您选择文件的32位版本)。
然后它可以在命令行上工作了。
如何在Linux上安装YARA?
YARA可以直接从其源代码来安装。在此处下载(https://github.com/VirusTotal/yara/releases/),只需点击源代码(tar.gz)链接,然后解压缩文件并编译它。举例来说,我们将在Ubuntu系统上使用YARA 4.1.3版,这是截止本文发稿时的最新版本。
请注意,有几个软件包是强制性的,应在安装YARA之前安装:
- sudo apt install automake libtool make gcc pkg-config
完成后,运行文件的提取和安装:
- tar -zxf YARA-4.1.3.tar.gz
- cd YARA-4.1.3
- ./bootstrap.sh
- ./configure
- make
- sudo make install
YARA易于安装,最困难的部分是学习如何编写高效的YARA规则,我将在下一篇文章中解释。
原文Cybersecurity: Increase your protection by using the open-source tool YARA,作者:Cedric Pernet
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】