Proofpoint发布创新威胁狩猎检测方法:PDF对象哈希
主要发现
- Proofpoint创建了一种名为"PDF对象哈希"的新型开源工具,用于基于PDF中独特特征创建威胁检测规则
- 该技术可帮助识别相关文档,并在威胁行为者依赖PDF传播恶意软件或凭据网络钓鱼有效载荷时实现归因
- Proofpoint内部使用此工具帮助追踪多个威胁行为者
- 该工具现已在GitHub上提供
概述
PDF格式被威胁行为者广泛用于启动恶意活动。在电子邮件活动中,Proofpoint研究人员观察到PDF以多种方式分发。例如,威胁行为者经常分发包含指向恶意软件或凭据网络钓鱼URL的PDF;包含指向恶意网页二维码的PDF;或包含虚假银行详细信息或发票以促成商业电子邮件泄露(BEC)活动的PDF。
由于PDF格式的复杂性以及威胁行为者利用它的多种方式,检测恶意PDF文件的范围从简单到几乎不可能。Proofpoint研究人员识别了利用PDF的显著活动,并创建了一种名为PDF对象哈希的新工具,旨在追踪和检测威胁行为者使用的PDF的独特特征。即使攻击链或传递方法发生变化,该工具也能通过识别可能与特定威胁行为者相关的PDF来支持归因。
PDF对象哈希
PDF格式复杂,在创建新检测签名时可能引发问题。检测工程师面临的一个挑战是,出于兼容性原因,PDF规范允许多种方式来表示在查看时外观相同的PDF。这为威胁行为者提供了多种选择,在其恶意PDF中引入随机变化,使得威胁检测工程师难以编写能够处理所有变体的模式匹配签名。变化选项的示例如下:
- 六种不同的有效空白字符
- 交叉引用表(类似于目录)可以以纯文本存储,或以压缩形式存储在单独格式中
- 对象的参数值可以嵌入该对象中,或在另一个对象中引用
此外,某些对象在文档中以明文形式存在,而其他对象则在"流对象"中被压缩。流对象是PDF中的压缩对象,PDF查看器仍可访问。这意味着安全从业者试图警报的域名可能不可见,除非检查这些压缩流。虽然大多数检测工程师认识到像URI或诱饵图像这样的元素可能频繁变化,但PDF格式包含许多额外的格式特定障碍,在分析文件时必须考虑这些障碍。
防御PDF威胁的一个具体挑战发生在文件加密时。当PDF文件被加密时,文档的整体结构仍然可见,但单个对象的详细信息或参数被隐藏。以下截图演示了当PDF加密时,诸如URI字符串之类的对象如何被隐藏,而在未加密时可见。
Proofpoint研究人员创建了独特的PDF对象哈希检测方法,以应对PDF格式带来的挑战。我们不依赖更脆弱或临时的检测方法,如文件哈希、URL、诱饵图像和元数据值,而是能够专注于文档的结构。虽然存在使用像dhash这样的技术来比较图像相似性的更强大检测方法,但PDF对象哈希适用于文档的整体结构,使我们能够忽略特定的诱饵图像。通过检查对象的类型和它们出现的顺序 - 同时忽略它们的特定参数和细节 - 我们可以创建代表PDF文档整体结构的"骨架"或"模板"。然后使用这些对象类型通过哈希它们的值来创建PDF的独特"指纹"。这样做使我们能够搜索广泛的PDF文件,以检测和识别可能匹配该"指纹"的其他文件。
该过程从解析文档开始,跟踪所有使用中的对象位置,然后为每个对象解析出"类型"。以下是我们提取的一些类型:
- Pages
- Catalog
- XObject/Image
- Annots/Link
- Page
- Metadata/XML
- Producer
- Font/Type1
然后我们按顺序连接对象并哈希该值,创建我们称之为PDF对象哈希的内容。这与PE文件中的imphash工作原理类似。然后我们可以基于这些哈希进行聚类,以帮助识别特定文档可能发生的变体和图像诱饵更新。这对于识别图像诱饵已更新或URI已更改但整体文档仍然相似的文档非常有用,这可能表明威胁组织独有的构建器或过程。
PDF对象哈希可以是一种可靠的方式,生成可用于其他检测逻辑的信号,以帮助创建更强大的规则,并将PDF文件聚类成组以进行更集中的分析。Proofpoint研究人员已在内部使用该工具以高置信度识别文档和相关活动,在许多情况下改进了归因。
活动示例
为了说明PDF对象哈希如何帮助威胁狩猎和分析,我们可以看看两个有趣的威胁行为者。
被称为UAC-0050的威胁集群以乌克兰为目标,经常分发传递恶意软件的加密PDF。在他们的活动中,消息包含带有指向NetSupport RAT的URL的PDF文件。该URL通常下载压缩的JavaScript文件,如果执行,将安装NetSupport RAT有效载荷。
因为这些恶意PDF文件被加密,许多网络安全工具和其他PDF解析系统无法提取嵌入内容,包括URI、诱饵图像和与文档内容相关的参数。无论加密如何,PDF都保留内部文档结构(例如,对象和属性的层次结构),可以解析以揭示这些对象在文件中的组织方式和相互关系。使用PDF对象哈希,Proofpoint为这些PDF开发了独特的签名,而无需解密或分析其内部对象的具体内容。这种方法允许快速识别可能共享相同结构的其他相关PDF文档,同时也允许我们谴责和防止有效载荷传递。
另一个当前使用PDF并通过PDF对象哈希追踪的行为者是UNK_ArmyDrive。自2025年5月起被Proofpoint追踪,该行为者被认为在印度运作,并有使用PDF作为其攻击链一部分的历史。虽然Proofpoint对该组织有传统检测覆盖,但我们也通过PDF对象哈希增强了该覆盖。这样做提供了来自其文档中静态特征的额外信号,我们可以使用这些信号来查找如果该组织转向现有诱饵之外可能被遗漏的样本。
PDF对象哈希的开源项目可以在Proofpoint Emerging Threats公共GitHub中找到:https://github.com/EmergingThreats/pdf_object_hashing