网络与信息安全学报 ›› 2019, Vol. 5 ›› Issue (1): 1-14.doi: 10.11959/j.issn.2096-109x.2019001

• 综述 •    下一篇

面向源代码的软件漏洞静态检测综述

李珍1,2,3,4,邹德清1,2,3,4,5(),王泽丽1,2,3,4,金海1,2,3,4   

  1. 1 华中科技大学计算机科学与技术学院,湖北 武汉 430074
    2 华中科技大学服务计算技术与系统教育部重点实验室,湖北 武汉 430074
    3 华中科技大学集群与网格计算湖北省重点实验室,湖北 武汉 430074
    4 深圳华中科技大学研究院,广东 深圳 518057
    5 深圳华中科技大学研究院,广东 深圳 518057
  • 修回日期:2018-12-26 出版日期:2019-02-01 发布日期:2019-04-10
  • 作者简介:李珍(1981- ),女,河北保定人,华中科技大学博士生,主要研究方向为软件安全、漏洞检测。|邹德清(1975- ),男,湖南湘潭人,华中科技大学教授、博士生导师,主要研究方向为云计算安全、网络攻防与漏洞检测、软件定义安全与主动防御、大数据安全与人工智能安全、容错计算。|王泽丽(1995- ),女,湖北襄阳人,华中科技大学博士生,主要研究方向为区块链系统安全、智能合约安全。|金海(1966- ),男,上海人,华中科技大学教授、博士生导师,主要研究方向为计算机系统结构、虚拟化技术、集群计算、网格计算、并行与分布式计算、对等计算、普适计算、语义网、存储与安全。
  • 基金资助:
    科技部“网络空间安全”重点专项基金资助项目(2017YFB0802205);国家自然科学基金资助项目(61672249);深圳市基础研究(学科布局)基金资助项目(JCYJ20170413114215614)

Survey on static software vulnerability detection for source code

Zhen LI1,2,3,4,Deqing ZOU1,2,3,4,5(),Zeli WANG1,2,3,4,Hai JIN1,2,3,4   

  1. 1 School of Computer Science and Technology,Huazhong University of Science and Technology,Wuhan 430074,China
    2 Services Computing Technology and System Lab,Huazhong University of Science and Technology,Wuhan 430074,China
    3 Clusters and Grid Computing Lab,Huazhong University of Science and Technology,Wuhan 430074,China
    4 Shenzhen Huazhong University of Science and Technology Research Institute,Shenzhen 518057,China
    5 Shenzhen Huazhong University of Science and Technology Research Institute,Shenzhen 518057,China
  • Revised:2018-12-26 Online:2019-02-01 Published:2019-04-10
  • Supported by:
    The Ministry of Science and Technology’s “Network Space Security” Key Special Project(2017YFB0802205);The National Natural Science Foundation of China(61672249);The Shenzhen Fundamental Research Program(JCYJ20170413114215614)

摘要:

软件静态漏洞检测依据分析对象主要分为二进制漏洞检测和源代码漏洞检测。由于源代码含有更为丰富的语义信息而备受代码审查人员的青睐。针对现有的源代码漏洞检测研究工作,从基于代码相似性的漏洞检测、基于符号执行的漏洞检测、基于规则的漏洞检测以及基于机器学习的漏洞检测4个方面进行了总结,并以基于源代码相似性的漏洞检测系统和面向源代码的软件漏洞智能检测系统两个具体方案为例详细介绍了漏洞检测过程。

关键词: 软件漏洞, 源代码漏洞检测, 代码相似性, 深度学习

Abstract:

Static software vulnerability detection is mainly divided into two types according to different analysis objects:vulnerability detection for binary code and vulnerability detection for source code.Because the source codecontains more semantic information,it is more favored by code auditors.The existing vulnerability detection research works for source code are summarized from four aspects:code similarity-based vulnerability detection,symbolic execution-based vulnerability detection,rule-based vulnerability detection,and machine learning-based vulnerability detection.The vulnerability detection system based on source code similarity and the intelligent software vulnerability detection system for source code are taken as two examples to introduce the process of vulnerability detection in detail.

Key words: software vulnerability, vulnerability detection for source code, code similarity, deep learning

中图分类号: 

No Suggested Reading articles found!