描述
敌人利用硬件设计缺陷的CPU实现瞬态指令执行暴露敏感数据和旁路/破坏控制限制资源的访问。通常,对手进行一个秘密通道攻击目标non-discarded microarchitectural变化引起的瞬态投机执行等执行分支预测,指令流水线,和/或无序的执行。瞬态执行结果的一系列指令(产品),构造隐蔽通道和访问/传输机密数据。
攻击的可能性
典型的严重性
的关系
此表显示了其他的攻击模式和高水平类别相关的这种攻击模式。这些关系被定义为ChildOf ParentOf,给类似的项目可能存在的洞察力在较高和较低的抽象级别。此外,关系如光束,PeerOf, CanAlsoBe定义显示类似的攻击模式,用户可能想要探索。
自然 |
类型 |
ID |
的名字 |
ChildOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
74年 |
操作状态 |
ChildOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
184年 |
软件完整性的攻击 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
696年 |
负载值注入 |
PeerOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
124年 |
共享资源操作 |
PeerOf |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
180年 |
利用错误配置访问控制的安全水平 |
PeerOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
212年 |
功能滥用 |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
141年 |
缓存中毒 |
此表显示了这种攻击模式的观点属于和顶级类别内的这一观点。
执行流程
探索
调查目标应用程序和相关的操作系统共享代码库:对手识别脆弱短暂的指令集和代码/函数调用触发以及指令集或代码片段(设备)来执行攻击。
技术 |
利用反汇编程序和调试器工具来检查和跟踪指令集执行的源代码和共享系统上的代码库。 |
探索缓存和识别的影响:利用工具来理解瞬态的影响在地址空间和CPU指令执行操作。
技术 |
运行操作系统或应用程序特定的工具,检查缓存的内容。 |
实验
引起条件确定瞬态指令集执行:对手确保特定代码/指令由CPU执行目标的过程,因此所需的瞬态指令执行。
从限制导致特定的秘密数据缓存地址空间:执行的指令集(产品)在目标地址空间中,最初通过执行adversary-chosen瞬态指令集,建立秘密通道和秘密数据传输通道缓存。
技术 |
Prediction-based——对手列车CPU不正确预测/推测指令执行的条件为真,因此执行adversary-chosen瞬态指令。这些prediction-based方法包括:模式历史表(PHT) /输入验证旁路,分支目标缓冲器(BTB) /分支目标注入,返回堆栈缓冲区(RSB) /返回地址注入,并存储加载(STL) /投机存储绕过。 |
异常/结合-对手CPU执行瞬态指令,引发一个异常访问允许访问内存空间通过无序执行。这些例外/结合方法包括:Supervisor-only绕过,虚拟翻译绕过系统注册旁路,FPU注册旁路,只读旁路,旁路保护关键绕过,边界检查。 |
利用
执行秘密通道攻击获得/访问机密数据:对手过程代码删除指令/数据共享缓存,等待目标进程重新插入他们回到缓存,通过计时方法确定位置的秘密数据。对手不断重复此过程,以识别和访问的有针对性的秘密数据。
技术 |
冲洗+重载-对手经常冲目标内存高速缓存线路使用专门的机器指令,并使用另一个进程来衡量时间的CPU负载受害者的秘密数据。 |
驱逐+时间-对手导致受害者受害者目标加载到缓存和措施时间过程加载这些数据,设定一个基准。对手就清除指定的高速缓存线路,导致受害者再次执行过程,和措施执行时间的变化,来确定访问高速缓存线路。 |
' +探针-对手质数缓存通过填充缓存线(s)或一组(s)与数据,一段时间后,受害者的过程就清除这个对手换成秘密数据。敌人然后探针/访问所有以前访问高速缓存线路检测缓存错过,确定数据,他们的攻击者被驱逐,取而代之的是秘密数据从受害者的过程。 |
先决条件
对手至少需要用户执行访问系统和恶意的程序/应用程序/过程无特权的代码滥用瞬态指令集执行的CPU。 |
技能要求
(级别:高) 各种CPU架构的详细知识和微码进行瞬态执行各种低级汇编语言代码指令/操作。 |
(级别:高) 编译后的二进制文件的详细知识和操作系统共享库的指令序列,和布局的应用程序和操作系统/内核地址空间数据泄漏。 |
所需资源
C2C机制或直接访问受害者系统,能够将恶意程序和收集秘密通道攻击数据。 |
瞬态的恶意程序能够触发执行指令或脆弱的指令序列的程序和执行一个秘密通道攻击受害者从受害者收集数据过程内存空间。最终,攻击者发现了一个秘密的速度成正比的计算资源受害者的机器。 |
指标
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 |
读取数据 |
|
访问控制 |
旁路保护机制 |
|
授权 |
执行未经授权的命令 |
|
缓解措施
实现:狗(动态分配的方式守卫)处理器缓存正确划分不同的程序/过程不共享资源 |
实现:KPTI(内核页表隔离)完全独立的用户空间和内核空间页表 |
配置:建筑设计微码限制滥用投机执行和无序的执行 |
配置:禁用SharedArrayBuffer Web浏览器 |
云虚拟机之间的配置:禁用即写即拷 |
配置:特权检查缓存刷新指令 |
实现:Non-inclusive缓存记忆,防止冲洗+重载攻击 |
例子,实例
web浏览器和用户权限执行JavaScript代码嵌入在一个恶意网站。系统没有禁用共享缓冲区的web浏览器并没有限制或检查用户进程执行冲洗或驱逐指令。Javascript代码执行脆弱短暂的指令在系统导致microarchitectural变化,建立秘密通道和敏感/秘密数据传输到共享缓存的地址空间的内核,web浏览器或另一个系统上的执行过程。 |
引用
[ref - 637]保罗•Kocher Jann喇叭,拉斯穆森(Anders Fogh,丹尼尔Genkin,丹尼尔·格鲁斯,沃纳哈斯,迈克汉堡,莫里茨Lipp, Stefan Mangard托马斯•Prescher迈克尔•施瓦兹和Yuval Yarom。“幽灵攻击:利用投机执行”。格拉茨科技大学,2019。< https://spectreattack.com/spectre.pdf>。 URL验证:2021-03-05。 |
[ref - 638],莫里茨Lipp丹尼尔花岗岩碎砾,托马斯•Prescher迈克尔•施瓦兹沃纳哈斯,拉斯穆森(Anders Fogh, Jann喇叭,Stefan Mangard保罗•Kocher Yuval Yarom和麦克丹尼尔•Genkin汉堡。“危机:阅读内核内存从用户空间”。格拉茨科技大学,2018。< https://meltdownattack.com/meltdown.pdf>。 URL验证:2021-03-05。 |
(ref - 639)克劳迪奥·白桂皮,乔·范·Bulck迈克尔•施瓦兹莫里茨Lipp,本杰明·冯·伯格,Frank Piessens德米特里•菲利普•Ortner Evtyushkin和丹尼尔·格鲁斯。“瞬态的系统评估执行攻击和防御”。格拉茨科技大学,2019-05-15。< https://arxiv.org/abs/1811.05441>。 URL验证:2021-03-05。 |
|
|
|
|
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2022-02-22
(版本3.7) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns |
|