高级持续性威胁(APT)分析与防御策略
在当今数字化时代,网络安全面临着诸多挑战,高级持续性威胁(APT)是其中最为棘手的问题之一。本文将深入剖析六种不同的 APT 组织的攻击行为,并探讨相应的防御策略。
1. APT 组织背景信息
部分 APT 组织的活动时间较长,例如有组织可能在报告前已运作长达 3 年。某些组织的攻击成功部分归因于其独特的恶意软件传播方式,甚至能通过离线 USB 设备在机器间传播。有迹象表明部分攻击与黎巴嫩有关,且多数受害者互联网服务提供商(ISP)也位于黎巴嫩。
此外,“透明部落”(Transparent Tribe)组织针对沙特和哈萨克斯坦大使馆内的军事人员和印度外交官发动了有针对性的攻击。该组织利用钓鱼邮件分两步将恶意软件下载到目标设备上,有研究认为其可能来自巴基斯坦,且在多次攻击中使用相同的 shellcode 来利用微软 Word 的漏洞。
2. 攻击行为建模方法
为了更好地分析 APT 组织的攻击行为,我们采用了两种建模方法:钻石模型(Diamond Model)和网络杀伤链(Cyber Kill Chain,CKC)。
- 钻石模型 :该模型将攻击过程分为四个部分,即对手、受害者、能力和基础设施。通过分析各组件之间的关系,我们可以了解攻击者的动机、攻击步骤以及受害者的情况。例如,我们可以思考攻击者的身份、位置、系统与他们的基础设施和能力之间的联系,以及受害者在组织中的地位、被攻击方式和采取的行动与他们的基础设施和能力的关系。
graph LR
A(对手) --> B(受害者)
A --> C(能力)
A --> D(基础设施)
B --> C
B --> D
C --> D
-
网络杀伤链
:这是一种成熟的技术,用于描绘网络威胁,美国军方等也在使用。它包括以下几个阶段:
-
预攻击阶段
:
- 侦察(Reconnaissance) :攻击者收集受害者组织、系统和人员的信息。防止风险相关材料公开可避免攻击者获取有害信息。
- 武器化(Weaponisation) :攻击者准备恶意代码以供部署。不同的攻击者群体可能使用特定的代码嵌入技术,这为检测提供了机会。
- 交付(Delivery) :攻击者通过互联网服务或硬件媒体设备将恶意有效载荷发送给受害者。
-
攻击阶段
:
- 利用(Exploitation) :攻击者利用已知或零日漏洞执行有效载荷。
- 安装(Installation) :攻击者安装后门,以便反复进入目标系统并获得持久访问权。
-
攻击后阶段
:
- 命令与控制(Command and Control) :攻击者获得对系统的持久访问权。
- 意图行动(Actions on Intent) :攻击者采取行动实现其目标,如窃取数据、加密文件或破坏文件。
-
预攻击阶段
:
3. 可操作情报与防御能力映射
针对每个 APT 组织在杀伤链上的攻击向量,我们考虑了攻击缓解和预防措施。对于每个 APT,我们将杀伤链的各个阶段与妥协指标、战术、技术和程序进行映射,以帮助受害者做出充分的响应,具体方式如下:
1.
检测(Detect)
:通过分析已知的恶意活动并与日志中的经验数据进行比较来发现威胁。
2.
拒绝(Deny)
:部署工具和代理以防止妥协。
3.
破坏(Disrupt)
:应用技术阻碍恶意行为者的努力并干扰其预期目的。
4.
降级(Degrade)
:受害者采取行动降低攻击者的速度,减缓其计划活动的有效性。
5.
欺骗(Deceive)
:故意使用欺骗手段误导攻击者,使其做出错误决策。
6.
摧毁(Destroy)
:受害者对攻击者进行进攻性响应。
通过将防御因素与杀伤链进行映射,我们为每个 APT 生成了杀伤链行动矩阵,这些矩阵突出了可采取的防御行动,并为可操作情报提供了模型。
4. 攻击活动图
以下是六个 APT 组织的攻击活动图,展示了它们在网络杀伤链各阶段的活动以及钻石模型分析:
| APT 组织 | 侦察 | 武器化 | 交付 | 利用 | 安装 | 命令与控制 | 意图行动 |
|---|---|---|---|---|---|---|---|
| Shell_Crew | 扫描 Web 应用程序漏洞 | 准备或获取已知 Web 应用程序漏洞的利用程序 | 对已知 Web 应用程序漏洞执行利用程序并获取管理员凭据 | 利用凭据创建计划任务下载恶意工具 | 在多个位置安装恶意工具 | 实现远程桌面协议以实现后门访问并创建 HTTP 代理 | 收集商业机密、密码哈希和其他企业数据并发送到目标地址 |
| NetTraveler | 确定钓鱼邮件的最佳构造 | 准备包含已知漏洞利用的 Office 文档 | 发送钓鱼邮件 | 根据利用情况在特定目录放置恶意文件 | 执行特定文件 | 通过约 40 个恶意注册的域名维持命令与控制 | 编码并外渗特定类型的数据 |
| ProjectSauron | 识别系统管理员和他们使用的软件以确定要修改的目标软件更新 | 修改现有软件更新脚本以包含恶意有效载荷和下载器 | 随软件更新将下载器交付给受害者机器 | 从硬编码 IP 地址下载有效载荷 | 搜索加密网络通信软件信息 | 与 C2 直接通信并采用 DNS 隧道和电子邮件等独特方法 | 通过小 DNS 数据包外渗系统信息和网络配置数据,通过硬编码电子邮件服务器发送 Base64 编码数据 |
| CopyKittens | 仔细研究目标以获取个人及其在政府机构中的职位信息 | 准备包含恶意 OLE 对象的钓鱼邮件 | 诱使受害者运行宏或执行 .scr 文件以启动感染过程 | 从远程服务器下载图像文件以通知攻击者目标已被触及,检查目标机器是否处于虚拟化环境 | 下载并在内存中运行“Matryoshka”恶意软件,将加载器保存到 Windows 注册表键 | 通过 DNS 数据包与 C&C 通信 | 外渗包括密码、截图和键盘记录在内的数据 |
| Volatile Cedar | 选择特定的面向公众的 Web 服务器作为目标并扫描已知漏洞 | 利用 Web 服务器的已知漏洞使用 Web shell | 通过 Web shell 下载名为 Explosive 的恶意软件 | 通过 Explosive 木马从多个 C&C 服务器执行命令,启动键盘记录、屏幕记录和数据捕获过程 | 结合 AV 检测、进程内存使用和单独的 DLL 以避免检测并保持持久性 | 使用多个命令与控制服务器,大文件外渗时使用 SSH,根据目标工作时间保持无线电静默 | 外渗数据并感染 USB 设备以进一步传播 |
| Transparent Tribe | 非常有选择性地针对印度大使馆和军队,发布针对印度军事人员兴趣的博客 | 准备包含漏洞利用的钓鱼邮件和文档 | 发送钓鱼邮件,受害者运行利用程序启动下载器 | 下载器下载远程访问木马到受害者机器 | 执行 MSIL/Crimson 木马,允许攻击者运行多达 40 个命令 | 根据 MSIL/Crimson 的变体使用不同的 C&C 服务器 | 根据攻击者的指令通过木马外渗数据 |
5. 行动矩阵
针对每个 APT 组织,我们生成了相应的行动矩阵,以指导防御工作。以下是部分 APT 组织的行动矩阵示例:
-
Shell_Crew
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | NIDS | 打补丁 | | | | |
| 武器化 | 威胁情报 | | | | | |
| 交付 | AV | AV | | | | |
| 利用 | HIDS | 应用程序白名单 | | | | |
| 安装 | 审计日志 | 权限分离 | 内联 AV | | | |
| 命令与控制 | NIDS | 路由器 ACL | 排队 | | | |
| 意图行动 | 日志监控 | 安全密码 | 蜜罐 | 事件响应 | | -
NetTraveler
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | | | | | | |
| 武器化 | 威胁情报 | 打补丁 | | | | |
| 交付 | 员工培训 | | | | | |
| 利用 | HIDS | | | | | |
| 安装 | HIDS | 权限分离 | 应用程序白名单 | 端点恶意软件保护 | | |
| 命令与控制 | NIDS | DNS 重定向 | | | | |
| 意图行动 | 防火墙 ACL | 自适应区域防御 | | | | |
这些行动矩阵为防御网络免受 APT 攻击提供了指导。不同 APT 组织的行动矩阵存在一些共性,特别是在检测和拒绝阶段。这表明即使网络威胁情报未能识别特定的攻击者,潜在的受害者也可以使用矩阵中列出的工具和策略来制定通用的防御计划。在网络杀伤链的任何阶段,我们能做的检测工作越多,就越有机会阻止攻击者实现其目标。
6. 各 APT 组织行动矩阵详细分析
除了前面提到的 Shell_Crew 和 NetTraveler,下面继续分析其他 APT 组织的行动矩阵。
-
ProjectSauron
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | 威胁情报 | | | | | |
| 武器化 | 文件哈希比较 | | | | | |
| 交付 | 自适应区域防御 | | | | | |
| 利用 | 防火墙 ACL | 权限分离 | | | | |
| 安装 | NIDS | 加密 | 端点恶意软件保护 | | | |
| 命令与控制 | 日志监控 | 排队 | DNS 沉洞 | | | |
| 意图行动 | 日志监控 | 加密 | DNS 沉洞 | | | |
ProjectSauron 利用软件更新进行攻击,防御重点在于验证软件更新文件的真实性。文件哈希比较可以确保下载的更新文件与官方非恶意版本一致。自适应区域防御能在交付阶段阻止恶意下载器进入系统。
-
CopyKittens
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | 威胁情报 | | | | | |
| 武器化 | 限制可用开源情报 | | | | | |
| 交付 | 应用程序白名单 | 员工培训 | | | | |
| 利用 | NIDS | 防火墙 ACL | | | | |
| 安装 | 日志监控 | 内联 AV | | | | |
| 命令与控制 | NIDS | DNS 沉洞 | | | | |
| 意图行动 | 加密 | | | | | |
CopyKittens 依赖钓鱼邮件和内存运行的木马,限制开源情报可减少攻击者获取信息的途径。应用程序白名单和员工培训能在交付阶段防止恶意文件进入系统。日志监控和内联 AV 可在安装阶段检测和阻止恶意软件。
-
Volatile Cedar
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | NIDS | | | | | |
| 武器化 | 威胁情报 | | | | | |
| 交付 | 打补丁 | 蜜罐 | | | | |
| 利用 | 日志监控 | 内联 AV | | | | |
| 安装 | 打补丁 | 内联 AV | 自适应区域防御 | | | |
| 命令与控制 | NIDS | 服务质量 | | | | |
| 意图行动 | 加密 | | | | | |
Volatile Cedar 针对 Web 服务器漏洞进行攻击,打补丁可以修复已知漏洞。蜜罐可用于诱捕攻击者,日志监控和内联 AV 能在利用和安装阶段检测和阻止恶意软件。自适应区域防御可在安装阶段保护关键网络区域。
-
Transparent Tribe
| CKC 阶段 | 检测 | 拒绝 | 破坏 | 降级 | 欺骗 | 摧毁 |
| — | — | — | — | — | — | — |
| 侦察 | | | | | | |
| 武器化 | | | | | | |
| 交付 | | | | | | |
| 利用 | | | | | | |
| 安装 | | | | | | |
| 命令与控制 | | | | | | |
| 意图行动 | | | | | | |
Transparent Tribe 利用针对性的钓鱼邮件进行攻击,有效的威胁情报和员工培训至关重要。威胁情报可帮助识别钓鱼邮件的特征,员工培训能提高员工识别和报告可疑邮件的能力。
7. 防御策略总结与建议
通过对六个 APT 组织的分析,我们可以总结出一些通用的防御策略:
-
检测方面 :
- 利用 NIDS(网络入侵检测系统)和 HIDS(主机入侵检测系统)在网络和主机层面进行实时监测。
- 进行日志监控,及时发现异常活动。
- 运用威胁情报,了解最新的攻击趋势和特征。
-
拒绝方面 :
- 及时打补丁,修复系统和软件的已知漏洞。
- 实施应用程序白名单,只允许运行已知安全的程序。
- 进行员工培训,提高员工的安全意识和识别钓鱼邮件的能力。
-
破坏方面 :
- 运用防火墙 ACL(访问控制列表)限制网络访问。
- 采用 DNS 沉洞技术,阻止恶意域名的访问。
-
降级方面 :
- 实施排队策略,减缓攻击者的攻击速度。
- 运用服务质量(QoS)技术,保障关键业务的正常运行。
-
欺骗方面 :
- 部署蜜罐,诱使攻击者陷入虚假环境。
-
摧毁方面 :
- 制定有效的事件响应计划,在发现攻击后及时采取行动。
8. 防御流程示意图
下面是一个简单的防御流程 mermaid 流程图,展示了在网络杀伤链各阶段的防御步骤:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(侦察):::process --> B(检测: 威胁情报、NIDS):::process
B --> C(拒绝: 打补丁、限制开源情报):::process
C --> D(武器化):::process
D --> E(检测: 威胁情报、文件哈希比较):::process
E --> F(拒绝: 打补丁、应用程序白名单):::process
F --> G(交付):::process
G --> H(检测: AV、员工培训):::process
H --> I(拒绝: 自适应区域防御、蜜罐):::process
I --> J(利用):::process
J --> K(检测: HIDS、日志监控):::process
K --> L(拒绝: 权限分离、防火墙 ACL):::process
L --> M(安装):::process
M --> N(检测: 日志监控、内联 AV):::process
N --> O(拒绝: 加密、自适应区域防御):::process
O --> P(命令与控制):::process
P --> Q(检测: NIDS、日志监控):::process
Q --> R(拒绝: 路由器 ACL、DNS 重定向):::process
R --> S(意图行动):::process
S --> T(检测: 日志监控):::process
T --> U(拒绝: 安全密码、加密):::process
U --> V(破坏: 蜜罐、事件响应):::process
这个流程图展示了从侦察到意图行动的整个网络杀伤链过程,以及在每个阶段相应的检测、拒绝、破坏等防御步骤。通过这种系统性的防御策略,可以有效降低 APT 攻击对网络的威胁。
总之,面对日益复杂的 APT 攻击,我们需要采用综合的防御策略,结合多种技术手段和管理措施,才能更好地保护网络安全。同时,持续的监测和更新防御策略也是必不可少的,以应对不断变化的攻击手段。
超级会员免费看
2万+

被折叠的 条评论
为什么被折叠?



