基于arm嵌入式系统底层漏洞挖掘技术研究

基于arm嵌入式系统底层漏洞挖掘技术研究

ID:24849906

大小:49.50 KB

页数:4页

时间:2018-11-16

基于arm嵌入式系统底层漏洞挖掘技术研究_第1页
基于arm嵌入式系统底层漏洞挖掘技术研究_第2页
基于arm嵌入式系统底层漏洞挖掘技术研究_第3页
基于arm嵌入式系统底层漏洞挖掘技术研究_第4页
资源描述:

《基于arm嵌入式系统底层漏洞挖掘技术研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于ARM嵌入式系统底层漏洞挖掘技术研究杨世德,梁光明,余凯(国防科学技术大学电子科学与工程学院,湖南长沙410073)摘要:随着针对嵌入式系统的攻击事件不断发生,安全指标在嵌入式系统设计过程中得到了越来越广泛的关注。传统的嵌入式系统安全分析主要针对嵌入式操作系统和应用软件,很少关注底层硬件安全。通过分析嵌入式系统底层运行机制,建立和提出一种基于ARM嵌入式系统底层硬件漏洞挖掘模型和方法。.jyqkakemenuconfig配置该选项,将驱动程序直接编译进Linux内核中。(2)以可加载内核模块LKM(LoadableKernelMod?ule)的方式安装驱

2、动程序。通过使用已经运行于嵌入式系统的Linux内核相应的源码,将驱动程序编译成内核模块,加载内核模块。本文研究的是第2种方式。相比于第1种方式,以加载内核模块的方式安装驱动程序可在需要时动态的加载,且不需要重新编译内核,不会使内核过于庞大和浪费内存资源。以系统调用read为例,Linux内核模块工作原理如图2所示。3基于测试的硬件漏洞挖掘模型Linux内核模块提供了在用户空间操作底层寄存器的途径,而嵌入式系统存储器种类繁多、容量较大,如何从中选取出对嵌入式系统运行起关键作用的寄存器也是本文研究的重点[5]。本文提出了一种基于测试的硬件漏洞挖掘模型,如图3所

3、示。基于测试的硬件漏洞挖掘目标为:从嵌入式系统存储体系中搜索对嵌入式系统运行起核心作用的寄存器;挖掘可导致嵌入式系统运行出错的寄存器配置。在基于测试的硬件漏洞挖掘模型中,关键技术是测试向量构建、确定适度函数和异常自动监测。典型的测试向量生成方法有两类,基于变异的测试向量生成方法和基于生成的测试向量生成方法。4基于内核模块的硬件寄存器访问机制漏洞为防止对资源的未经授权的访问,ARM微处理器划分为不同的操作模式[6]。不同的工作模式运行不同级别的程序和享有不同的操作权限,Linux用户程序工作在ARM微处理器SVC模式,内核程序工作在ARM微处理器USR模式。例

4、如,SVC模式可以控制内存映射方式、特殊寄存器、中断和DMA等,而usr模式则不可以。驱动程序是在“内核空间”中运行,而应用程序是在“用户空间”中运行[7]。通过系统调用和硬件中断可以完成由“用户空间”到“内核空间”的转换。两个空间分别引用不同的地址映射。即程序代码使用不同的地址空间。由此可见,想直接通过指针把“用户空间”的数据地址传递给“内核空间”是不可能的,必需通过Linux提供的一些函数实现地址空间的转换,如get_user,put_user,copy_from_user,copy_to_user等。通过上述分析,可以找出一种在用户空间对硬件寄存器操作

5、的方法,即通过可加载内核模块的方法操作硬件寄存器。内核模块运行于内核空间,此时ARM处理器处于svc模式,有权限对硬件寄存器进行读/写操作。本文设计一个可对看门狗寄存器进行更改的内核模块,动态加载到嵌入式Linux系统中,通过应用程序调用此内核模块实现激活看门狗电路、重启嵌入式系统的操作。内核模块open函数中定义的对看门狗寄存器的操作代码如图4所示。以上内核模块代码即为用户程序中系统调用函数open的最终实现代码。Linux中,无论是内核程序还是应用程序,都只能对虚拟地址进行操作。图中代码完成看门狗寄存器物理地址到虚拟地址的映射和赋值工作。通过分别对看门狗

6、定时器数据(entationandsoftwaretesting[J].puter,1978,11(4):3?8.简介:杨世德(1991—),男,内蒙古鄂托克前旗人,硕士研究生。主要研究方向为通信网信息安全。梁光明(1970—),男,湖南涟源人,博士,硕士生导师。主要研究方向为通信网信息安全。余凯(1990—),男,安徽安庆人,硕士研究生。主要研究方向为通信网信息安全。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。