对漏洞和攻击进行划分和分类对于理解如何利用漏洞以及如何通过不同步骤(包括侦察、漏洞检测、利用、提权、横向移动和数据盗取)利用漏洞非常重要。
这篇文章的重点是如何在CVE、CAPEC、CWE和ATT&CK漏洞和攻击分类之间建立桥梁/关联,以便更好地理解攻击向量和方法。
全球最重要和公认的漏洞划分和分类法是CVE Program — Common Vulnerability and Exposures,其定义为:
“CVE®Program的使命是识别、定义和编目公开披露的网络安全漏洞。目录中的每个漏洞都有一个CVE记录。这些漏洞被发现,然后由来自世界各地与CVE计划合作的组织分配和发布。合作伙伴发布CVE记录,以传达对漏洞的一致描述。信息技术和网络安全专业人员使用CVE记录来确保他们正在讨论相同的问题,并协调他们的努力,优先考虑和解决漏洞。”
CVE是一个对漏洞进行分类的术语表。术语表分析漏洞,然后使用通用漏洞评分系统(Common Vulnerability Scoring System, CVSS)评估漏洞的威胁级别,主要是从技术角度进行评估。
通用漏洞评分系统(Common Vulnerability Scoring System, CVSS)是一个开放的框架,用于交流软件漏洞的特征和严重程度。CVSS由三个指标组组成:基础(Base)、时间(Temporal)和环境(Environmental)。基础指标产生一个从0到10的分数,然后可以通过给时间和环境指标打分来修改这个分数。CVSS分数也表示为矢量字符串,是一个用于计算分数值的压缩文本表示。因此,CVSS很适合作为工业、组织和政府的一个标准指标系统,这些机构需要为脆弱优先级确定精确和一致的脆弱严重性分数。国家漏洞数据库(National Vulnerability Database,NVD)为几乎所有已知的漏洞提供CVSS分数。
NVD支持通用漏洞评分系统(CVSS) v2.0和v3.X标准。NVD提供CVSS“基本分数”,它代表每个漏洞的固有特征。NVD目前不提供“时间分数”(由于漏洞外部事件而随时间变化的度量)或“环境分数”(自定义分数以反映漏洞对您的组织的影响)。NVD确实为CVSS v2和v3提供了一个CVSS计算器,允许您添加时间和环境得分数据。
在CVSS分数3.1中,这些是分数的基本分数的组成部分:
图1 通用漏洞评分系统v3.1:规范文档
Base指标组表示漏洞的内在特征,这些特征随时间和用户环境而变化。它由两组指标组成:可利用性指标(Exploitability)和影响指标(Impact)。
可利用性指标反映了漏洞被利用的容易程度和技术手段。也就是说,它们代表了易受攻击的事物的特征,我们正式称其为易受攻击的组件。
影响指标反映了成功利用的直接结果,并将结果表示为遭受影响的事物,我们正式地将其称为受影响的组件。
虽然易受攻击的组件通常是软件应用程序、模块、驱动程序等(也可能是硬件设备),但受影响的组件可能是软件应用程序、硬件设备或网络资源。这个属性是由Scope指标捕获的,它反映了一个组件中的漏洞是否会影响到组件本身之外的资源。
时间指标组反映了漏洞的特征,这些特征可能随时间而变化,但不会跨越用户环境。例如,使用简单的漏洞利用工具包会增加CVSS得分,而创建官方补丁会降低它。
环境指标组表示与特定用户环境相关且唯一的漏洞的特征。考虑因素包括安全控制的存在,这可能会减轻成功攻击的部分或全部后果,以及技术基础设施中易受攻击的系统的相对重要性。
MITRE CAPEC是已知攻击模式的综合字典,攻击者利用软件应用程序,硬件设备和物联网设备中的弱点。美国国土安全部最初于2007年发布了该标准,旨在通过开发阶段的安全意识来提高软件保障。截至2023年的当前版本是3.9版本,有559种攻击模式。CAPEC攻击模式分为6个攻击“域”(Domains)和9个攻击“机制”。
攻击领域:
l 软件(Software)
l 硬件(Hardware)
l 通信(Communication)
l 供应链(Supply Chain)
l 社交工程(Social Engineering)
l 物理安全(Physical Security)
攻击机制:
l 进行欺骗性的互动(Engage in Deceptive Interactions)
l 滥用现有功能(Abuse Existing Functionality)
l 操作数据结构(Manipulate Data Structures)
l 操作系统资源(Manipulate System Resources)
l 注入意外项目(Inject Unexpected Items)
l 运用概率技术(Employ Probabilistic Techniques)
l 操纵时间和状态(Manipulate Timing and State)
l 收集和分析信息(Collect and Analyze Information)
l 破坏访问控制(Subvert Access Control)
CAPEC简介中的信息是广泛的。例如,CAPEC包括用于跟踪和关联的ID、攻击名称、高级描述、攻击执行过程、攻击先决条件、严重性范围和分数、攻击者技能要求、攻击成功率,以及到CWE (Common Weakness Enumeration)的映射。
对于每个攻击模式,CAPEC分类法都包含到相关CWEs的全面映射,这些CWEs又可以映射到CVE,但它也包含到ATT&CK TTPs的直接映射。这是CAPEC、CWEs和ATT&CK TTP之间详细映射的一个清晰示例: https://capec.mitre.org/data/definitions/636.html。
映射到CWE极大地扩展了CAPEC的功能,因为CWE可以从CVE产品漏洞关联到高级攻击模式。
高级攻击信息和特定产品漏洞之间的遍历增强了威胁情报和缓解工作。论文“Linking Threat Tactics, Techniques, and Patterns with Defensive Weaknesses, Vulnerabilities and Affected Platform Configurations for Cyber Hunting”提供了将CAPEC拼接到MITRE ATT&CK和CWE、CVE、CVSS和CPE数据的详细描述。
下图可视化了CAPE是如何从高级信息扩展到低级信息的。
图2 来源: fnCyber, “CAPEC – Common Attack Patterns Enumeration and Classification”
案例:让我们看看2020年发现的CVE-2020-16875。NIST丰富的CVE细节包括“弱点枚举”字段,表示相关的CWE类别和其他有价值的信息,如供应商建议和补救信息、CVSS(通用漏洞评分系统)和CPE(通用平台枚举),将漏洞映射到特定产品。
在这种情况下,CVE的严重性评分为7.2,影响2013年至2019年之间的Microsoft Exchange Server软件版本(累积更新)。列出的CWE类别是CWE-74下游组件使用的输出中特殊元素的不当中和(Improper Neutralization),以及CWE-269权限管理不当。
此外,CWE到CAPEC揭示了与不适当的输入处理和CAPEC-233(特权提升)有关的几个类别。完整的CAPEC、CWE和CVE数据可从MITRE公开获得。
MITRE ATT&CK将网络攻击活动的各种战术与特定技术和程序(TPP)联系起来。该框架允许深入了解网络攻击元素链,以了解恶意的最终目标。
像ATT&CK一样,CAPEC从战术、技术和程序(TTP)的角度来研究攻击模式。然而,在559个CAPECs中,有112个通过“与ATT&CK分类映射相关”字段直接映射到ATT&CK的战术和技术。因此,需要同时使用ATT&CK和CAPEC以获得全面的安全性观点。
这种映射连接了对抗性视角(外部)和安全性视角(内部)。当从ATT&CK战术开始时,将ATT&CK映射到CAPECs,可以通过CWE、CVE和CPE细节将攻击者的策略与现有产品连接起来,并通过CWE分类将软件开发漏洞类别连接起来。
每天都有新的软件漏洞通过CVE被披露。修补CVE是一种反应性方法。然而,一个防弹的网络防御需要积极主动。CAPEC为安全工程和安全编排提供检测和响应所需的威胁情报;此外,CAPEC攻击模式可用于构建高级威胁透视图。将CAPEC、CWE、CVE和CPE数据关联起来,可以在高级信息(如攻击模式)和低级信息(如具有已知信息漏洞的受影响产品)之间进行遍历,反之亦然。
最后,CAPEC包括映射到CWE分类的攻击模式,无论它们是否映射到CVE——这表明一些CAPEC攻击模式只能通过策略或软件配置来缓解,因为它们不代表软件代码中的漏洞,而是一个弱的实现或配置。
CAPEC攻击模式列表包括对ATT&CK TTPS的直接引用——CAPEC攻击模式,反过来可以映射到CWE,然后映射到CVE漏洞。
自动化CVE和ATT&CK框架TTP的映射使漏洞管理人员能够专注于修复漏洞,并主动保护企业免受外部和内部威胁。
完成CVE和ATT&CK框架TTP的映射后,网络安全分析人员具备了规范化的漏洞分析能力和多样化的漏洞缓解能力,但还需要更进一步将规则固化并打造成一款终端运行工具,才能有效的与企业的安全运营、漏洞管理紧密结合起来,更全面的了解企业整个网络系统的风险。
在实践过程中,知识图谱能够充分将CAPEC、CWE、CVE和CPE数据进行关联组织。发挥图数据库的结构优势,提供了基于图的统计、分析和推理方法供网络安全分析人员进行数据挖掘和制定决策,支撑攻击技战术分析、漏洞分析研判和应急响应任务的展开。
图3 使用Neo4j进行安全知识图谱实践
同时,得益于推理预测能力,知识图谱能够提供特定环境和场景下威胁行为的关联知识,评估威胁行为的影响范围和深度,对潜在威胁做出预警,并给出合理的应对方案。
参考文献:
https://www.nopsec.com/blog/mapping-cves-and-attck-framework-ttps-an-empirical-approach/