抗电路板级物理攻击的操作系统防御技术研究
发布时间:2021-01-10 21:25
计算设备处理和存储日益增多的敏感信息,如口令和指纹信息等,对安全性提出更高要求.物理攻击技术的发展催生了一种通过攻击电路板级硬件组件来获取操作系统机密信息的攻击方法:电路板级物理攻击.该类攻击具有工具简单、成本低、易流程化等特点,极容易被攻击者利用形成黑色产业,是操作系统面临的新安全威胁和挑战.在处理器上扩展内存加密引擎可抵抗该类攻击,但是目前大部分计算设备并未配备该硬件安全机制.学术界和产业界提出软件方式抗电路板级物理攻击的操作系统防御技术,该类技术已成为近年来的研究热点.深入分析了该类技术的研究进展,总结其技术优势和不足,并探讨其发展趋势.首先,介绍了电路板级物理攻击的定义、威胁模型、现实攻击实例.之后,介绍软件方式抗电路板级物理攻击的操作系统防御技术所依赖的一些基础技术.然后,对该类防御技术的研究进展按照保护范围进行分类总结和归纳.最后,分析了该类防御技术的优势与不足,给出工程实现建议,并探讨该类防御技术未来的研究趋势.
【文章来源】:软件学报. 2020,31(10)北大核心
【文章页数】:27 页
【部分图文】:
Fig.1Threatmodelfortheboardlevelphysicalattacks图1板级物理攻击威胁模型
CPU读取的就是正常片外RAM地址B处的内容.重放攻击:敌手将地址A处的内容替换为地址A以前某一时刻的内容.敌手在某一时刻将正常片外RAM地址A处的内容记录在恶意片外RAM地址A处.在之后的某一时刻CPU读取地址A处的内容时,敌手将数据总线切换到恶意片外RAM,这样CPU实际读取的是地址A以前的内容.1.2实际板级物理攻击现实世界中已经出现了众多板级物理攻击实例,攻破了DRAM接口、系统总线和DMA外设接口等硬件组件(如图2所示).Fig.2Illustrationofreal-worldboardlevelphysicalattacks图2实际板级物理攻击示意图具体攻击方法主要包含冷启动攻击、总线攻击以及DMA攻击.冷启动攻击[15]利用DRAM的断电存留特点[48](DRAM内存在断电1~2s内,大部分数据仍残留在内存上,并且通过给DRAM降温可以延长数据存留时间),通过物理断电重启设备并重刷固件的方式在设备上加载恶意攻击程序,利用该恶意程序获取DRAM内存的镜像,进一步分析该镜像即可获得内存中的密钥等机密信息.普林斯顿大学的研究团队[1]实际测量了低温下DRAM随温度变化数据的损失率,测量结果发现在–50℃温度下,掉电DRAM每隔10分钟仅损失1%的数据;在–196℃温度下,掉电DRAM每隔60分钟仅损失0.17%的数据.该团队成功实施了几种类型的攻击:低温下直接重启或断电重启后加载恶意内核来读取DRAM镜像,或直接将DRAM内存条移植到一个攻击计算机上来读取镜像,最终从DRAM镜像中获得了全盘加密系统的AES密钥以及RSA密钥等机密数据.德国埃尔朗根-纽伦堡大
来说操作系统的地址空间远远大于TLB所能保护的地址空间,因此同样存在由于部分地址空间没有被保护而受到攻击的缺陷,譬如以下攻击:(1)一旦CPU执行片外RAM中的指令,攻击者即通过总线向CPU注入清空TLB指令,使得锁定的TLB失效,而CPU再次建立地址映射时页表已经被攻击者篡改;(2)如果中断处理代码没有受到完整的保护,攻击者可以向CPU发起硬件中断,将未被保护的中断处理代码(即位于片外RAM中的代码)篡改为清空TLB指令或其他恶意代码来控制系统.Fig.4Anexampleofboardlevelphysicalattacks图4板级物理攻击实例第3.1节和第3.2节的密码算法保障和应用程序保护类工作无法从根本上抵抗板级物理攻击的主要原因在于防御组件无法对其所在的地址空间进行整体保护(如果防御组件实现为内核模块,那么其所在地址空间就是内核地址空间).虽然部分方案提出将所有的代码特别是管理代码全部放入片内存储的思路,但是图4描述的攻击表明这种思路对实际的操作系统内核是不可行的:由于操作系统内核体积较大无法全部放入片内存储,攻击者可以攻击未受保护的那些代码和数据,并且如果防御组件缺乏对页表、中断处理等关键数据和代码的保护则会加速攻击过程,而这恰恰是当前众多方案所缺乏的.针对该安全问题,学术界提出了全系统加密技术,该技术的思路是对防御组件所在的地址空间进行整体防护.一般来说防御组件位于内核层,因此这类工作基本上对操作系统内核进行了整体防护,并向上对应用层内存也进行了加密和完整性保护.根据技术实现思路的不同,全系统加密技术可分为轻量级操作系统全系统加密和基于请求分页系统的全系统加
本文编号:2969439
【文章来源】:软件学报. 2020,31(10)北大核心
【文章页数】:27 页
【部分图文】:
Fig.1Threatmodelfortheboardlevelphysicalattacks图1板级物理攻击威胁模型
CPU读取的就是正常片外RAM地址B处的内容.重放攻击:敌手将地址A处的内容替换为地址A以前某一时刻的内容.敌手在某一时刻将正常片外RAM地址A处的内容记录在恶意片外RAM地址A处.在之后的某一时刻CPU读取地址A处的内容时,敌手将数据总线切换到恶意片外RAM,这样CPU实际读取的是地址A以前的内容.1.2实际板级物理攻击现实世界中已经出现了众多板级物理攻击实例,攻破了DRAM接口、系统总线和DMA外设接口等硬件组件(如图2所示).Fig.2Illustrationofreal-worldboardlevelphysicalattacks图2实际板级物理攻击示意图具体攻击方法主要包含冷启动攻击、总线攻击以及DMA攻击.冷启动攻击[15]利用DRAM的断电存留特点[48](DRAM内存在断电1~2s内,大部分数据仍残留在内存上,并且通过给DRAM降温可以延长数据存留时间),通过物理断电重启设备并重刷固件的方式在设备上加载恶意攻击程序,利用该恶意程序获取DRAM内存的镜像,进一步分析该镜像即可获得内存中的密钥等机密信息.普林斯顿大学的研究团队[1]实际测量了低温下DRAM随温度变化数据的损失率,测量结果发现在–50℃温度下,掉电DRAM每隔10分钟仅损失1%的数据;在–196℃温度下,掉电DRAM每隔60分钟仅损失0.17%的数据.该团队成功实施了几种类型的攻击:低温下直接重启或断电重启后加载恶意内核来读取DRAM镜像,或直接将DRAM内存条移植到一个攻击计算机上来读取镜像,最终从DRAM镜像中获得了全盘加密系统的AES密钥以及RSA密钥等机密数据.德国埃尔朗根-纽伦堡大
来说操作系统的地址空间远远大于TLB所能保护的地址空间,因此同样存在由于部分地址空间没有被保护而受到攻击的缺陷,譬如以下攻击:(1)一旦CPU执行片外RAM中的指令,攻击者即通过总线向CPU注入清空TLB指令,使得锁定的TLB失效,而CPU再次建立地址映射时页表已经被攻击者篡改;(2)如果中断处理代码没有受到完整的保护,攻击者可以向CPU发起硬件中断,将未被保护的中断处理代码(即位于片外RAM中的代码)篡改为清空TLB指令或其他恶意代码来控制系统.Fig.4Anexampleofboardlevelphysicalattacks图4板级物理攻击实例第3.1节和第3.2节的密码算法保障和应用程序保护类工作无法从根本上抵抗板级物理攻击的主要原因在于防御组件无法对其所在的地址空间进行整体保护(如果防御组件实现为内核模块,那么其所在地址空间就是内核地址空间).虽然部分方案提出将所有的代码特别是管理代码全部放入片内存储的思路,但是图4描述的攻击表明这种思路对实际的操作系统内核是不可行的:由于操作系统内核体积较大无法全部放入片内存储,攻击者可以攻击未受保护的那些代码和数据,并且如果防御组件缺乏对页表、中断处理等关键数据和代码的保护则会加速攻击过程,而这恰恰是当前众多方案所缺乏的.针对该安全问题,学术界提出了全系统加密技术,该技术的思路是对防御组件所在的地址空间进行整体防护.一般来说防御组件位于内核层,因此这类工作基本上对操作系统内核进行了整体防护,并向上对应用层内存也进行了加密和完整性保护.根据技术实现思路的不同,全系统加密技术可分为轻量级操作系统全系统加密和基于请求分页系统的全系统加
本文编号:2969439
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2969439.html