排序方式: 共有3条查询结果,搜索用时 0 毫秒
1
1.
在Linux内核等大型底层系统中广泛采用引用计数来管理共享资源.引用计数需要与引用资源的对象个数保持一致,否则可能导致不恰当引用计数更新缺陷,使得资源永远无法释放或者被提前释放.为检测不恰当引用计数更新缺陷,现有静态检测方法通常需要知道哪些函数增加引用计数,哪些函数减少引用计数.而手动获取这些关于引用计数的先验知识过于费时且可能有遗漏.基于挖掘的缺陷检测方法虽然可以减少对先验知识的依赖,但难以有效检测像不恰当引用计数更新缺陷这类路径敏感的缺陷.为此,提出一个将数据挖掘技术和静态分析技术深度融合的不恰当引用计数更新缺陷检测方法 RTDMiner.首先,根据引用计数的通用规律,利用数据挖掘技术从大规模代码中自动识别增加或减少引用计数的函数.然后,采用路径敏感的静态分析方法检测增加了引用计数但没有减少引用计数的缺陷路径.为了降低误报,在检测阶段再次利用数据挖掘技术来识别例外模式.在Linux内核上的实验结果表明,所提方法能够以将近90%的准确率自动识别增加或减少引用计数的函数.而且RTDMiner检测到的排行靠前的50个疑似缺陷中已经有24个被内核维护人员确认为真实缺陷. 相似文献
2.
通过静态检测发现源程序中的潜在缺陷,可以帮助程序员在软件发布之前发现并修补程序缺陷,提高软件的安全性。提出一种通过静态分析CIL代码来检测C#程序代码缺陷的方法。采用改进的深度优先搜索算法遍历目标程序的控制流程图,结合历史状态缓存机制,能够大幅度提高检测效率;另外,为便于实施别名分析,还提出一种基于内存区域的变量表示方法。基于所述分析方法,开发了一个C#源代码缺陷静态检测系统,并对实际开源项目进行了检测。实验结果表明,本系统能够高效、准确地检测C#程序中常见类型的缺陷。 相似文献
3.
近年来,利用含有已知漏洞的函数作为准则,通过查找相似代码实现来检测未知漏洞的方法已被证明是有效的.但是,一个含有漏洞的函数通常也包含一些与已知漏洞无关的语句,严重影响相似度计算的结果,从而引发误报和漏报.提出了一种利用补丁来提高这种相似性检测准确性的漏洞发现方法.结合漏洞的补丁信息,引入程序切片技术去除原来含有漏洞的函数中与漏洞无关的语句,利用获得的切片生成去噪的漏洞特征来进行潜在未知漏洞检测.该方法已经在一些真实的代码集中实施,并且实验结果证明该方法确实能够有效减弱漏洞无关语句的干扰,达到提高检测准确性的目的.该方法还成功检测到了3个未知漏洞且已经得到确认. 相似文献
1