期刊文献+

一种静态分析工具的优化方法 被引量:3

An Approach to Prioritize Warnings of Static Analysis
下载PDF
导出
摘要 当前,代码静态分析工具已被广泛应用于软件开发与安全测评中,这些工具可以对软件源代码或二进制代码进行分析,而无需执行它们.尽管静态分析工具可以发现其它测试方法难以发现的错误,但它们面临着同一个严重的问题:分析结果的误报率很高.在静态分析工具生成的警报中,许多警报都是虚假的,这些虚假的警报并不对应真实的安全漏洞或问题.在使用过程中,用户不得不消耗很多时间和资源,从众多的警报中把虚假的筛选出去,这大大降低了静态分析工具的可用性.本文提出一种针对静态分析工具的优化方法,将静态分析的结果与软件的版本历史综合考虑,为每一份静态分析的警报计算其优先级,优先级越高的警报,越有可能对应真实的安全漏洞或问题.在三个开源软件(Lucene,Cassandra,Hadoop)中,对本文方法进行了验证.实验结果表明,该方法可以把Find Bugs静态分析工具的精确性分别提高23%,36%和25%. Static code analysis tools are widely used today to analyze code without executing it,but they share a critical challenge:the low precision of reported warnings. Users have been suffering in the low precision of warnings, they must spend a lot of time sieving the warnings in order to identify the real defects out of false positive ones. In this paper, we propose a ranking approach for warnings issued by static analysis tools, based on the history of software revisions. We evaluated our approach in three open-source projects, Lu- cene,Cassandra and Hadoop,in which the warning precisions were improved by 23% ,36% and 25% respectively.
出处 《小型微型计算机系统》 CSCD 北大核心 2015年第4期648-653,共6页 Journal of Chinese Computer Systems
基金 国家自然科学青年基金项目(61100227)资助 国家"八六三"高技术研究发展计划重大项目(2011AA01A203)资助
关键词 静态分析 安全测评 警报优先级 FindBugs JAVA 自动测试 虚假警报 static analysis security testing warning priority ranking FindBugs java auto testing false positive
  • 相关文献

同被引文献20

  • 1AYEWAH N, HOVEMEYER D, MORGENTHAL- ER J D, et al. Using static analysis to find bugs[J]. IEEE Software, 2008,25(5) : 22-29.
  • 2RUTAR N, ALMAZAN C B, FOSTER J S. A com- parison of bug finding tools for Java[C]//In Proceed- ings of the 15th IEEE International Symposium on Software Reliability Engineering, Saint-Malo: IEEE, 2004:245-256.
  • 3AYEWAH N, PUGH W, MORGENTHALER J D, et al. Using FindBugs on production software[C]// Conference on Object-oriented programming systems, languages, and applications companion. New York: ACM, 2007 :805-806.
  • 4FLANAGAN C, LEINO K R M, LILLIBRIDGE M, et al. PLDI 2002: Extended static checking for Java [J]. ACM Sigplan Notices, 2013, 48(4) :22-33.
  • 5SHEN Haihao, ZHANG Sai, ZHAO Jianjun, et al. Xfindbugs: extended findbugs for aspectj [C]//Pro- ceedings of the 8th ACM SIGPLAN-SIGSOFT work- shop on Program analysis for software tools and engi- neering. Atlanta:ACM, 2008: 70-76.
  • 6SHEN Haihao, FANG Jianhong, ZHAO Jianjun. EFindBugs: Effective error ranking for FindBugs [C]//2011 Fourth IEEE International Conference on Software Testing, Verification and Validation. Berlin: IEEE, 2011: 299-308.
  • 7A1-AMEEN M N, HASAN M M, HAMID A. Mak- ing findbugs more powerful[C]//In Proceedings of the 2nd International Conference on Software Engineering and Service Science. Beijing : IEEE, 2011 : 705-708.
  • 8KAVANAUGH A, REESE D D , PEREZ-QUINO- NES M. Apache software foundation [ EB/OL]. ( 2007- 09-30) [2014-02-18].http ://jakarta.apache.org/hcel/.
  • 9HOVEMEYER D, PUGH W. Finding bugs is easy [J]. ACM Sigplan Notices, 2004,39(12):92-106.
  • 10梁婕,张淼,徐国爱,杨义先.基于静态分析技术的源代码安全检测模型[J].计算机应用研究,2008,25(9):2703-2705. 被引量:9

引证文献3

二级引证文献3

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部