请仔细阅读以下内容。
本仓库包含用于《实用恶意软件分析与分类》(PMAT)课程的活跃恶意软件样本。这些样本有的是为模拟常见恶意软件特征而编写,有的则是真实世界的“野外捕获”样本。两类样本均具有危险性。任何时候都必须极其谨慎地处理这些样本。
下载本仓库内容(无论您是否已购买课程),即表示您同意最终用户许可协议。更多信息请参阅 EULA.md。
如果您是购买课程后来到这里的,欢迎!感谢您支持我作为内容创作者。请继续阅读下一节,了解实验仓库的使用方式。
如果您尚未购买课程,也欢迎!本课程的实验内容免费(并将始终免费),托管在 GitHub 上供有兴趣的人使用。但如果您不太清楚从何开始,或者有兴趣通过 9 小时以上的高质量视频内容学习恶意软件分析,请考虑购买课程!这些视频倾注了心血,旨在将您培养成一名有能力、有知识的恶意软件分析师。
如果您想购买课程并支持我作为内容创作者,也请考虑使用我的联盟链接!
本仓库的结构与课程视频对应。顶层目录包含章节名称,子目录是课程对应部分使用的样本。例如:
📦labs
┣ 📂0-1.HandlingAndSafety
┃ ┣ 📜Malware.Calc.exe.7z
┃ ┣ 📜md5sum.txt
┃ ┣ 📜password.txt
┃ ┗ 📜sha256sum.txt
┣ 📂1-1.BasicStaticAnalysis
┃ ┣ 📂Malware.PackedAndNotPacked.exe.malz
┃ ┃ ┣ 📜Malware.PackedAndNotPacked.exe.zip
┃ ┃ ┣ 📜md5sum.txt
┃ ┃ ┣ 📜password.txt
┃ ┃ ┗ 📜sha256sum.txt
┃ ┣ 📂Malware.Unknown.exe.malz
┃ ┃ ┣ 📜Malware.Unknown.exe.7z
┃ ┃ ┣ 📜README.txt
┃ ┃ ┗ 📜password.txt
...[略]...
上例中,0-1.HandlingAndSafety 目录包含 Malware.Calc.exe.7z 的压缩副本以及该样本附带的其他文件。它在课程的“处理与安全”部分使用。
在“处理与安全”样本的下方,1-1.BasicStaticAnalysis 目录包含该部分使用的两个样本。整个课程都遵循此结构,因此请查看当前所在的章节,然后视频会引用要处理的样本。
每个章节按主题细分:
本节涵盖基础的恶意软件处理与安全,包括解除恶意软件活性、以及传输与存储的安全实践。
本节涵盖初始分类、静态分析、初始执行以及基础分析的主要方法论。
本节涵盖高级恶意软件分析方法论,并介绍汇编、调试、反编译以及在汇编级别检查 Windows API。
本节涵盖不同的特殊类型恶意软件,例如恶意文档、C# 程序集和基于脚本的恶意软件。还包括移动平台恶意软件分析部分。
大决战让您对抗臭名昭著的真实世界恶意软件样本,需要您进行全面分析。
本节涵盖有效的报告编写、Yara 规则编写以及使用 Blue-Jupyter 自动化初始分类阶段的步骤。
课程终章包含一个毕业项目,您需要结合本课程所有相关技能,编写并发布关于课程中给定样本的开源信息。
课程总结包含延伸阅读、参考资料和有助于进一步学习的资源。
请注意: 某些样本会在不同章节中多次使用。请确认课程视频所指的样本,并确保手头有对应视频的正确样本。
课程中的挑战样本用作不同章节的小型毕业项目。每个标记为“挑战”的样本都包含一组关于该样本的问题以及一个 answers/ 目录。answers/ 目录中的 README 包含每个问题的简要答案。请尽量在不查看答案的情况下独立完成!
每个样本均已压缩并受密码保护。所有恶意软件样本的密码均为 infected。
在课程的最后几个部分之一,我将教授如何编写一份简单的恶意软件分析报告。该部分使用的模板在 此处。欢迎在本次课程或任何您想创建的恶意软件报告中自由使用该模板。

您可能会好奇,为什么根目录里有一张英俊猫咪的照片?
cosmo.jpeg
那是 Cosmo,我的猫。他不太擅长恶意软件分析,所以只是跟着学习,顺便蹭个热闹。我对他要求不高(毕竟他只是一只猫)。
cosmo.jpeg 有两个用途。
本课程中的恶意软件样本设计用于执行不同功能。有些旨在破坏数据,有些旨在窃取数据,有些则完全不触及您的数据。
cosmo.jpeg 充当普通终端用户主机上可能拥有的宝贵数据的占位符。本课程中的某些恶意软件样本会“窃取”他、“加密”他、“编码并外泄”他,等等。为了准确表示数据窃取或破坏可能的样子,课程中自定义编写的恶意软件样本将专门针对此文件。
这个文件大约 1.6MB,与 Cosmo 本人截然不同——他可不是一只笨重的猫。因此,它作为数据文件占位符应该很合适。
我从零开始编写了本课程的样本,力求尽可能安全。我深知,无论出于何种意图,将恶意软件样本发布到世界中都会带来风险。因此,为了降低这些样本被恶意使用的可能性,我将它们绑定到此特定文件。这是一种红队战术,确保有效载荷仅在环境中存在特定标识符时才会触发。在 FLARE-VM 桌面上存在 cosmo.jpeg 是大多数本课程恶意软件样本的触发条件。
完成本实验仓库的下载和解压后,请将 cosmo.jpeg 复制到 Windows FLARE-VM 主机的主用户帐户桌面上。就这样!