恶意软件分析

取证备忘单

在线服务

离线杀毒和检测工具

Yara

安装

准备规则

使用此脚本从 GitHub 下载并合并所有的 YARA 恶意软件规则:https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9 创建名为 rules 的目录并执行该脚本。这将创建一个名为 malware_rules.yar 的文件,其中包含所有的恶意软件 YARA 规则。

扫描

执行系统的彻底扫描是恶意软件分析中的一个重要步骤。扫描的目的是识别可能表明恶意软件存在的任何可疑文件、进程或网络连接。

有几种工具和技术可用于扫描,包括防病毒软件、网络监控工具和文件分析工具。这些工具可以帮助识别已知的恶意软件签名,检测异常行为,并分析可疑文件的结构和内容。

在扫描过程中,收集有关可疑文件或进程的尽可能多的信息非常重要。这包括文件哈希、进程ID、网络连接和其他相关细节。这些信息将有助于进一步的分析和调查。

扫描完成后,应仔细审查和分析结果。任何已识别的恶意软件或可疑活动都应进一步调查,以确定其性质、影响和潜在的缓解策略。

YaraGen: 检查恶意软件并创建规则

您可以使用工具YaraGen从二进制文件生成yara规则。查看这些教程:第1部分第2部分第3部分

Capa检测可执行文件(PE、ELF、.NET)中的潜在恶意功能。因此,它可以发现诸如Att&ck战术或可疑功能的事物,例如:

  • 检查OutputDebugString错误

  • 作为服务运行

  • 创建进程

Github仓库中获取它。

IOC(指标泄露)

IOC代表指标泄露。IOC是一组条件,用于识别一些潜在的不受欢迎的软件或已确认的恶意软件。蓝队使用这种定义来在其系统和网络中搜索此类恶意文件。 共享这些定义非常有用,因为当在计算机中识别出恶意软件并创建了该恶意软件的IOC时,其他蓝队可以使用它来更快地识别出该恶意软件。

创建或修改IOC的工具是IOC Editor 您可以使用诸如Redline的工具在设备中搜索定义的IOC。

Loki

Loki是一个用于简单指标泄露的扫描器。 检测基于四种检测方法:

Linux 恶意软件检测 ​Linux 恶意软件检测 (LMD) 是一个针对 Linux 的恶意软件扫描器,采用 GNU GPLv2 许可证发布,旨在解决共享托管环境中面临的威胁。它利用网络边缘入侵检测系统的威胁数据来提取正在攻击中使用的恶意软件,并生成用于检测的签名。此外,威胁数据还来自用户提交的 LMD 检查功能和恶意软件社区资源。

rkhunter

可以使用类似 rkhunter 的工具来检查文件系统中可能存在的 rootkit 和恶意软件。sudo ./rkhunter --check -r / -l /tmp/rkhunter.log [--report-warnings-only] [--skip-keypress]

FLOSS

FLOSS是一种工具,它将尝试使用不同的技术在可执行文件中查找混淆的字符串。

PEpper

PEpper检查可执行文件中的一些基本内容(二进制数据、熵、URL和IP地址,一些yara规则)。

PEstudio

PEstudio是一种工具,可以获取Windows可执行文件的信息,如导入、导出、头部,还会检查病毒总和并找到潜在的Att&ck技术。

Detect It Easy(DiE)

DiE是一种工具,用于检测文件是否被加密,并找到打包程序。

NeoPI

NeoPI是一个使用各种统计方法来检测文本/脚本文件中的混淆和加密内容的Python脚本。NeoPI的预期目的是帮助检测隐藏的Web Shell代码。

php-malware-finder

PHP-malware-finder尽其所能检测混淆/可疑代码,以及使用在恶意软件/ Web Shell中经常使用的PHP函数的文件。

Apple二进制签名

在检查一些恶意软件样本时,您应该始终检查二进制文件的签名,因为签名它的开发者可能已经与恶意软件有关。

检测技术

文件堆叠

如果你知道一个包含网页服务器文件的文件夹在某个日期之后最后更新过。检查网页服务器上所有文件的创建和修改日期,如果有任何可疑日期,检查该文件。

基准线

如果一个文件夹的文件不应该被修改,你可以计算文件夹中原始文件哈希值,并与当前文件进行比较。任何被修改的文件都是可疑的。

统计分析

当信息保存在日志中时,你可以检查统计数据,比如一个网页服务器的每个文件被访问的次数,因为其中可能有一个Web shell

最后更新于

这有帮助吗?