计算机科学 ›› 2013, Vol. 40 ›› Issue (8): 119-123.

• 信息安全 • 上一篇    下一篇

基于语法解析树的函数漏洞发现方法

陈永艳,束洪春,戴伟   

  1. 昆明理工大学计算中心 昆明650500;昆明理工大学研究生院 昆明650500;昆明理工大学省计算机技术应用重点实验室 昆明650500
  • 出版日期:2018-11-16 发布日期:2018-11-16
  • 基金资助:
    本文受国家自然科学基金项目(11103005)资助

Function Vulnerability Detection Method Based on Parse Tree

CHEN Yong-yan,SHU Hong-chun and DAI Wei   

  • Online:2018-11-16 Published:2018-11-16

摘要: 大多数行业定制软件的漏洞检测较困难,而传统的静态漏洞检测方法会产生很多错误的和虚假的信息。针对函数调用前后存在的漏洞问题,提出了基于上下文无关的自顶向下与自底向上相结合的语法解析树的方法,它能够在对函数内部定义不了解或者部分了解的情况下,解析函数调用前后安全契约规则:前置规则和后置规则。同时通过扩展规则表示的XML文法来表示面向对象下,规则中的属性存在继承关系下的契约规则。实验表明,与同类型安全分析工具比较,该方法具有避免函数重复分析、规则可扩展性良好、尤其在自定义对象类和特定环境下自定义参数准确率高等优点。

关键词: 函数弱点,继承关系,契约规则,语法解析树

Abstract: Custom software vulnerability detection is difficult.Most of static vulnerability detection approach usually produces large amount of false information and positives results.A new method is able to understand the analyzed source code when a function is called.This paper proposed a method of combination top-down and bottom-up parsing tree which is based on CFL(context-free language).In a case of not understanding or partially understanding inside code of a function definition,it can analyze function contract before or after function called,named pre-condition and post-condition.Extending the rules of XML grammar on object-oriented,pre-condition and post-condition can deal with objects belonging to inheritance relationship’s class.The experiments show that,compared with the same type of security analysis tools,it can avoid repeat function analysis,has good rules scalability and high accuracy for custom defined object classes and parameters in custom environmental especially.

Key words: Function vulnerability,Inheritance relationship,Contract rules in inherent,Parse tree

[1] Coverity[CP/OL].http://www.coverity.com,2012
[2] CodeCheck[CP/OL].http://www.abraxas-software.com/,2012
[3] FlawFinder Home Page.http://www.dwheeler.comlflawf-inder/
[4] Bloch V J,Kohno J T T,McGraw G.ITS4:A Static Vulnerabili-ty Scanner for C and C++ Code[C]∥Proc.16th Computer Security Applications Conferences.New Orleans,LA,2000:257-266
[5] Bauer T,Lips H P,Thiele G,et al.Operational tests on HVDC thyristor modules in a synthetic test circuit for the sylmar east restoration project[J].IEEE Transactions on Power Delivery,1997
[6] 张晓琳,王国仁.用继承扩展XML-RL[J].小型微型计算机系统,2005,6(2):243-247
[7] 阳小奇,刘坚.一种基于契约的跨过程安全分析方法[J].西安电子科技大学学报:自然科学版,2006,3(3):390-394
[8] 陈海明,董韫美.上下文无关语言分析树的一种表示形式[J].计算机研究与发展,2000,7(10):1181-1184
[9] 陈再良,徐德智,陈学工,等.基于链式结构XML文档的生成方法[J].计算机工程,2006,2(10):59-61
[10] 肖袁.一种高效的XML多分支路径查询算法[J].计算机应用与软件,2010,27(7):153-155
[11] Swiler L P,Phillips C,Ellis D.Computer-attack Graph Generation Tool[C]∥Proceedings of the 2nd DARPA Information Survivability Conference & Exposition.Los Alamitos,California,USA:IEEE Computer Society,2001:307-321
[12] ISC.Internet Domain Survey.http://www.isc.org/ds/
[13] SCAP.Security Content Automation Protocol.http://scap.nist.gov/
[14] CVE.Common Vulnerabilities and Exposures.http://cve.mi-tre.org/
[15] CERT/CC.CERT/CC Statistics.http://www.cert.org/stats/
[16] 雷富兴,张来顺.基于Hoare逻辑的过程调用的形式化方法[J].计算机工程与设计,2011,2(1):197-201

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!