
恶意软件已成为全球组织面临的最紧迫威胁之一。简单如打开恶意电子邮件附件就可能导致数据泄露、运营中断或数百万美元的损失,尤其是在没有适当防御措施的情况下。
幸运的是,有大量恶意软件分析工具可帮助遏制这些网络威胁。如今的恶意软件不仅更普遍,而且更先进,通常使用人工智能来逃避传统检测方法并适应动态环境。
为了应对这些不断演变的威胁,安全团队依赖日益增长的恶意软件分析工具生态系统,这些工具旨在剖析、理解和中和恶意代码。在典型的事件响应中,数字取证或研究团队收集恶意软件样本,以逆向工程其行为并评估影响范围。
幸运的是,有几种强大且完全免费的开源恶意软件分析工具可用于帮助分析师完成此过程。
在本文中,我将介绍市场上12种常用恶意软件分析工具(无特定顺序):
PeStudio是一款优秀的工具,用于对恶意软件样本进行初步分类,并能快速提取任何可疑工件。
具体配置链接,可参考:
System Informer允许恶意软件分析师查看设备上运行的进程。这在运行恶意软件时非常有用,可以查看恶意软件创建了哪些新进程以及这些进程在磁盘上的运行位置。恶意软件经常尝试通过将自身复制到系统上的不同位置并重命名文件来逃避检测。像System Informer这样的工具可以实时揭示这种行为,使分析师更容易发现恶意软件如何试图隐藏其存在。
该工具还可用于从进程的内存中提取信息。这意味着如果运行了恶意软件,则可以使用System Informer检查内存中的字符串,内存中找到的字符串通常会返回有用信息,如IP地址、域名和恶意软件使用的用户代理。
具体配置链接,可参考:
Process Monitor是Microsoft的一款强大工具,可记录实时文件系统活动,如进程创建和注册表更改。当与System Informer一起使用时,这变得特别有用。例如,如果创建了一个新进程然后迅速终止,可能很容易错过,但ProcMon仍然可以捕获并记录该活动。借助内置过滤器和进程树视图,分析师可以快速跟踪创建了哪些进程、可执行文件从何处运行以及它们如何与父进程或子进程相关。
Process Monitor在分析恶意文档时尤其有用。Emotet背后的威胁行为者经常使用恶意Word文档作为攻击向量。Word文档将包含宏,当启用时,这些宏会调用攻击者的C2基础设施并下载Emotet负载。这些活动对受感染设备的用户均不可见。通过使用Process Monitor,您能够捕获打开的Word文档、查看启动的隐藏PowerShell进程以及运行的base64编码命令。
该工具的一个问题是,在几秒钟内,它可以快速记录超过100,000个事件。尽管过滤器很好,但总是有可能错过感兴趣的事件。但是,这些数据可以导出为CSV并导入到此列表中的下一个工具。
具体配置链接,可参考:
Process Monitor:Windows系统监控与故障排除利器
ProcDOT允许恶意软件分析师摄取Process Monitor的输出,并自动生成捕获数据的图形表示。只需将CSV上传到ProcDot并选择恶意软件的进程名称。您现在可以导航记录恶意软件活动的可视化图表,而不是创建过滤器并导航数十万个事件。
Process Monitor数据还可以通过将数据包捕获(PCAP)文件(由Wireshark等工具收集)摄取到ProcDOT中来丰富。
具体配置链接,可参考:
Autoruns是Microsoft的另一款工具,它将显示设备上安装的任何在机器启动时设置为启动的软件。恶意软件可能试图隐藏,但最终它必须执行。为了在系统重启后存活,它必须建立某种形式的持久性机制。
恶意软件可以使用几种技术来实现持久性,例如创建计划任务或向特定注册表运行项添加条目。在虚拟机中执行恶意软件后,像Autoruns这样的工具可以检测并突出显示任何新添加的持久性机制,使其成为恶意软件分析的宝贵资源。
具体配置链接,可参考:
全面掌握Autoruns:Windows自动启动项深度监控指南
6. Fiddler
恶意软件经常使用HTTP/HTTPS联系其C2服务器并下载其他恶意软件或外泄数据。使用像Fiddler这样充当Web代理的工具,可以捕获和分析此流量。这在分析使用宏下载负载的恶意文档时特别有用。通过运行Fiddler,恶意软件分析师可以识别文档中嵌入的硬编码域名,揭示恶意软件从何处下载。
下载链接:https://www.telerik.com/download/fiddler


Wireshark是捕获和分析网络流量的首选工具。与像Fiddler这样主要关注HTTP和HTTPS的Web代理不同,Wireshark支持跨多种协议和网络层的深度数据包检查。在分析数据包捕获时,分析师甚至可以直接从PCAP中提取恶意软件下载的文件,为了解负载及其行为提供宝贵见解。
下载链接:https://www.wireshark.org/#download

到目前为止涵盖的工具对初学者友好,非常适合刚入门恶意软件分析的人。然而,x64dbg标志着复杂性的显著提升。专为手动调试和反向工程设计,x64dbg需要扎实的汇编语言理解。虽然学习曲线陡峭,但掌握此工具使分析师能够以手术精度手动解包和剖析恶意软件。它允许您专注于特定功能和API调用,提供对恶意软件真实操作方式的深入见解。
下载链接:https://x64dbg.com/

EMBER(Endgame Malware BEnchmark for Research)是一个开源数据集和机器学习模型,专为静态恶意软件检测设计。它提供从Windows PE文件中预提取的丰富特征集以及基线LightGBM分类器。虽然EMBER不是像此列表中其他工具那样的交互式分析工具,但它广泛用于训练和评估大规模分类恶意软件的机器学习模型。
安全研究人员和工程师可以使用EMBER探索AI如何基于静态属性检测恶意软件,而无需手动引爆或反向工程样本。
链接地址:https://github.com/elastic/ember.git
Ghidra由美国国家安全局(NSA)开发,是一款强大的反向工程工具,称为反汇编器,与像x64dbg这样的调试器不同。使用Ghidra,您可以探索汇编代码的结构和功能而无需执行它,从而在受控的非运行时环境中对恶意软件样本进行静态分析。
Ghidra的突出特点之一是其反编译器,它试图将低级汇编翻译成高级、人类可读的格式,类似于原始源代码。这使得分析师更容易理解恶意软件的邏輯、变量和控制流,提供更清晰的图片显示恶意软件的设计目的——而无需运行它。
链接地址:https://ghidralite.com/

Cuckoo Sandbox是一款用于自动化恶意软件分析的强大工具。典型设置涉及在Linux主机(通常是Ubuntu)上运行主Cuckoo应用程序,其中嵌套了Windows 7虚拟机(VM)。VM配备了Cuckoo代理,该代理与主机通信以传递行为数据。当提交恶意软件样本时,代理在VM内监控其活动,分析完成后Cuckoo生成详细报告。
Cuckoo在事件响应期间尤其有价值,因为它允许安全团队快速收集恶意软件行为的见解,包括丢弃的文件、注册表更改和网络活动。它可以与手动分析结合使用,以最大化从样本中提取的信息。
这里介绍一个在线的cuckoo sandbox,链接地址:https://sandbox.pikker.ee/,本地安装太麻烦了要求python2、virtual box,我就放弃了




Malconv是一个开源深度学习模型,使用原始字节序列对Windows可执行文件进行分类。与依赖预定义特征或签名的传统方法不同,MalConv使用卷积神经网络(CNN)直接从二进制结构学习。这使其成为探索AI如何以更通用和可扩展的方式检测恶意软件的宝贵工具。
MalConv对于尝试AI驱动检测技术或构建不依赖静态入侵指标的自定义恶意软件分类器的团队特别有用。
链接地址:https://github.com/j40903272/MalConv-keras.git