基于文件同源性分析的嵌入式设备固件漏洞检测开题报告
2020-04-12 16:25:15
1. 研究目的与意义(文献综述)
嵌入式设备随处可见,手机、打印机、家用路由器、智能摄像头、网络摄像机、电脑组件及其外设都是常用的嵌入式设备。随着物联网技术的兴起,越来越多的嵌入式设备连入网络,其安全问题也日益突出。
嵌入式系统与传统的pc机系统不同,其通常由一个称为“固件”的软件组成。固件是指写入eeprom或flash等存储介质中的程序。通俗的理解就是固化的软件。与传统的软件相同,部分嵌入式设备中的固件也可能在缺陷。由于嵌入式设备制造领域存在“客制化”的生产模式,这就导致同一漏洞可能出现在不同的设备上。
在硬件生产的过程中,设备厂商通常只是固化一小段引导程序,而诸如操作系统、文件系统等则是先交由第三方分包商构建,再交给供应商代购。这就出现了一个现象:不同的设备厂商可能选择同一个分包商。由于分包商使用的开发工具、开发包、第三方库没有统一的标准,从而导致不同品牌的设备其运行的固件中很大概率包含相同的第三方库。因此,嵌入式设备会受到一些来自于共同的第三方库的已知漏洞的影响,同一个第三方库的漏洞可能会影响不同的设备厂商。这使得对嵌入式设备固件的漏洞检测存在大量的重复性工作。仅针对某个特定型号的设备或某个版本的固件的分析无法代表该系列所有固件的安全状态,必须找到一种合理的针对嵌入式设备固件的漏洞分析方法,有效地鉴别固件依赖库以及开发库之间的关联性,确定引入的相同或相似的开源代码的同源性,进而对固件出现的漏洞进行修复。
2. 研究的基本内容与方案
本课题的主要研究内容是基于文件同源性分析的固件家族归类及漏洞检测,包括固件家族分类、固件解包和特征文件提取、特征数据库建立以及基于二进制差量分析、模糊哈希、字符串常量匹配的特征文件近似相似性分析,最后根据分析结果对固件安全性做出评估。下面分别介绍二进制差量分析、字符串常量匹配和模糊哈希三种方法:
二进制差量分析和模糊哈希能够比较全面地分析二进制代码变化的部分,对基于单一体系结构下编译的固件第三方库的同源性分析效果较好。由于基于arm,mips,powerpc等不同体系结构的二进制文件差异比较大,因此针对跨架构下的同源性分析效果不明显。
字符串常量匹配法来源于字符串常量在编译过程中与体系结构无关,相同的源代码基于arm、mips等不同体系结构的交叉编译工具编译,字符串常量往往不发生改变。因此这种方法能够较好地适应跨体系结构之间的第三方库的同源性分析。
3. 研究计划与安排
2018/1/14—2018/3/5:确定选题,查阅文献,外文翻译和撰写开题报告;
2018/3/6—2018/4/30:系统架构、程序设计与开发、系统测试与完善;
4. 参考文献(12篇以上)
[1] 李登, 尹青, 林键,等. 基于同源性分析的嵌入式设备固件漏洞检测[j]. 计算机工程, 2017, 43(1):72-78.
[2] 常青, 刘中金, 王猛涛,等. vdns:一种跨平台的固件漏洞关联算法[j]. 计算机研究与发展, 2016, 53(10):2288-2298.
[3] cui a, costello m, stolfo s j. when firmware modifications attack: a case study of embedded exploitation[c]. ndss. 2013.