基于静态检测的代码审计技术研究

来源 :贵州大学 | 被引量 : 12次 | 上传用户:pizaiyang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着应用软件的不断丰富,信息安全面临的挑战也日益严峻。一般来说,软件安全问题大都由代码缺陷引起。因代码缺陷产生的安全漏洞,很可能被攻击者利用,进而达到窃取信息、控制系统等目的。按检测过程中是否需要执行程序,软件安全缺陷检测可分为静态检测和动态检测两大类。然而,无论是静态检测技术还是动态检测技术都存在误报率和漏报率较高的问题,不能满足当前软件代码的安全需求。因此,如何实现高效准确的代码审计已成为当今国内外学者致力研究的一个热点问题。静态检测相对来说效率较高,但对常用的静态源代码扫描工具Its4、Rats、Flawfinder、Splint、Cppcheck进行实验,发现它们的误报率都非常高,导致单独使用某一个工具并不合适,然而不同工具的检测结果可以在不同程度和不同方面反映源代码存在的安全问题。在单个工具检测结果的误报率较高的情况下,如果能将采用不同静态分析原理的源代码扫描工具的检测结果进行综合利用,得到的结论将比只利用单个工具进行检测更具说服力。本文在对数据融合技术进行研究之后,将一种改进的D-S证据理论应用于静态代码审计技术当中,为基于静态检测的代码审计技术提供了一种新思路。首先,采用不同的静态源代码扫描工具对检测对象进行综合扫描,并对各个工具的检测结果进行标准化处理;然后,利用各工具的误报率和漏报率计算它们的可信度值,并把可信度值当作权值对原始证据进行加权平均;接着,对证据进行n-1次Dempster规则合成;最后,利用新的m函数值进行漏洞判决。实验表明,相比于单个工具,新方法在保证正确率的同时显著降低了误报率;相比于传统D-S证据理论,新方法的正确率更高且误报率的改善也更加明显,是一种性能更好的代码审计方法。
其他文献
随着科学技术的发展,科学数据的爆炸式增长给其存储和分析带来了巨大的压力,如何高效的存储和分析科学数据成为一个巨大的难题。一方面,科学数据模型一般以数组为主,传统关系
随着生物技术的发展,DNA计算随之产生。由于DNA计算机所具有的巨大并行性、海量存储以及低能耗等有点,将有望在某些领域弥补现有计算机的不足。DNA计算是利用DNA双螺旋结构和碱
现今随着Web信息指数化的增长,传统的基于整个Web的信息采集技术由于其采集的主题范围过于广泛,导致无法保证对信息的及时更新,并且较少考虑采集信息是否与查询主题相关,已经
Ad hoc网络也称无线自组网,是由一组带有无线通信收发装置的移动节点自组织而成的多跳网络。由于Ad hoc网络中节点的移动性、资源受限、同时充当路由器以及无网络中心等特点,
学位
近年来,随着科技学技术的飞速发展,人们的生活、工作、学习都向着现代化方向迈进。在教育领域,无论是教授方式、还是学习方式,都发生了巨大的变化。教授方式由以往的传统教师与学
当今的网络需要为用户提供更多、更快和更安全的服务。提供多样性服务需要以数据包分类为基础,数据包首先根据包头中的相关域(一般为源/目的IP地址、源/目的端口号和协议五个
近年来,世界各国先后建立了四通八达的交通运输网络,交通工具与道路建设的同步跃升,的确带来了一系列严峻的交通问题,导致了巨大的物质与经济损失。因此,仅靠修建道路与交通
随着信息化建设的不断深入,各政府部门、企事业单位都根据各自的业务需求建立各自的信任域(在同一安全策略管理范围内的域)并开发各自的应用系统。而信息化的发展使得这些单
无线传感器网络是一种基于大量具有传感功能的小型移动设备所构造的网络,主要用于收集、传播和处理传感信息。当前,由于微机电系统(MEMS)与无线网络技术的进步,使得人们能够