北京航空航天大学学报 ›› 2019, Vol. 45 ›› Issue (4): 796-803.doi: 10.13700/j.bh.1001-5965.2018.0436

• 论文 • 上一篇    下一篇

基于程序建模的网络程序漏洞检测技术

邓兆琨, 陆余良, 黄钊, 黄晖, 朱凯龙   

  1. 国防科技大学 电子对抗学院, 合肥 230037
  • 收稿日期:2018-07-23 出版日期:2019-04-20 发布日期:2019-04-26
  • 通讯作者: 陆余良 E-mail:kivi_fruit@126.com
  • 作者简介:邓兆琨,男,硕士研究生。主要研究方向:网络空间安全、二进制软件分析、程序漏洞挖掘与分析;陆余良,男,教授,博士生导师。主要研究方向:网络空间安全、漏洞挖掘与利用、网络态势感知;黄钊,女,硕士研究生。主要研究方向:二进制软件分析;黄晖,男,博士。主要研究方向:二进制软件分析;朱凯龙,男,博士研究生。主要研究方向:二进制软件分析。
  • 基金资助:
    国家重点研发计划(2017YFB0802905)

Network program vulnerability detection technology based on program modeling

DENG Zhaokun, LU Yuliang, HUANG Zhao, HUANG Hui, ZHU Kailong   

  1. Electronic Engineering Institute, National University of Defense Technology, Hefei 230037, China
  • Received:2018-07-23 Online:2019-04-20 Published:2019-04-26
  • Supported by:
    National Key R & D Program of China (2017YFB0802905)

摘要: 研究和分析了网络程序漏洞检测方法,针对C/S结构下网络程序存在的二进制漏洞提出了一种基于程序建模的漏洞检测方法。该方法针对网络程序架构进行分析,通过抽取不同类型网络程序中的关键性系统函数,进行程序建模和检测系统执行模块开发。采用选择符号执行技术进行检测,通过函数挂钩的方式定制挂钩函数语义和函数执行触发的操作,引入符号化数据和引导符号执行过程。研究过程中基于该技术实现了一套网络程序漏洞检测系统,系统能够识别目标网络程序采用的I/O模型,根据目标网络程序的不同类型调取相应的系统执行模块,利用选择符号执行技术进行自动化漏洞检测过程。实验结果表明,相比于已有的检测工具,该系统在网络程序的漏洞检测方面针对性更强,程序代码的覆盖率更高,同时具有很好的可扩展性。

关键词: 网络程序, 漏洞检测, C/S结构, 架构模型, 符号执行

Abstract: By studying and analyzing the vulnerability detection method of network program, a vulnerability detection method based on program modeling was proposed, and this method is aimed at the binary network program vulnerability in the C/S structure. The method analyzes the network program architecture, extracts the key system functions in different types of network programs, and develops the program modeling and detection system execution module. The technique of selective symbolic execution is adopted for detection, the semantics of hook function and the operation of trigger are customized by means of function hooks, and the execution process of symbolic data and guiding symbol is introduced. Based on this technology, a network program vulnerability detection system is realized. This system can identify the target web application using the I/O model. According to the different types of target program, it can call the different detection modules and use selective symbolic execution technology to implement the automated vulnerability detection process. The experimental results show that, compared with the existing detection tools, the system is more targeted in the vulnerability detection of network programs with higher vulnerability detection rate and good scalability.

Key words: network program, vulnerability detection, C/S structure, architecture model, symbolic execution

中图分类号: 


版权所有 © 《北京航空航天大学学报》编辑部
通讯地址:北京市海淀区学院路37号 北京航空航天大学学报编辑部 邮编:100191 E-mail:jbuaa@buaa.edu.cn
本系统由北京玛格泰克科技发展有限公司设计开发