SQVDT: A scalable quantitative vulnerability detection technique for source code security assessment

被引:10
作者
Akram, Junaid [1 ]
Luo, Ping [1 ]
机构
[1] Tsinghua Univ, Sch Software, Key Lab Informat Syst Secur, Beijing, Peoples R China
关键词
big code; clone detection; code vulnerability detection; software reuse; software security and maintenance; SOFTWARE; CLONES;
D O I
10.1002/spe.2905
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Vulnerability detection and exploit is becoming a very important part of security, especially in malware code delivery, hacking a system, efforts to create patches, improving the source code, or updating a software. Vulnerabilities in applications, including browsers, media players, online services, document readers, and so forth. are often exploited and cause a serious damage. In this article, we propose a vulnerability detection technique to detect vulnerabilities in software, as well as shared libraries at source code level. We crawl the vulnerable source code by tracing and locating the patch files from different web sources according to their CVE-numbers and built a fingerprint index of 2931 vulnerable files. Then we developed a vulnerability detection approach based on code clone detection technique and detect hundreds of vulnerabilities in thousands of GitHub open source projects, which are not noticed before as vulnerable. We detected vulnerabilities in some very famous recently available software, including latest version of Linux, HTC-kernel, FindX-8.1-kernel, and in 7-TB of C/C++ source code (152,823 open source projects). In this study, we discuss some of the very high severity level (CVSS) vulnerabilities that are detected by our approach. Furthermore, we performed an empirical evaluation and verification on these vulnerabilities, including intraproject clone vulnerabilities, copied-kernel clone vulnerabilities, and library-used clone vulnerabilities. Our technique is very fast, efficient, reliable, practical, scalable, and can be implemented at industrial level. The comparison with the state-of-the-art tools shows the effectiveness of our approach.
引用
收藏
页码:294 / 318
页数:25
相关论文
共 36 条
[1]  
AKRAM J, 2019, INT J INF COMPUT SEC, V11, P1
[2]   How to build a vulnerability benchmark to overcome cyber security attacks [J].
Akram, Junaid ;
Ping, Luo .
IET INFORMATION SECURITY, 2020, 14 (01) :60-71
[3]   IBFET: Index-based features extraction technique for scalable code clone detection at file level granularity [J].
Akram, Junaid ;
Mumtaz, Majid ;
Luo, Ping .
SOFTWARE-PRACTICE & EXPERIENCE, 2020, 50 (01) :22-46
[4]   VCIPR: Vulnerable Code is Identifiable When a Patch is Released (Hacker's Perspective) [J].
Akram, Junaid ;
Liang, Qi ;
Ping, Luo .
2019 IEEE 12TH CONFERENCE ON SOFTWARE TESTING, VALIDATION AND VERIFICATION (ICST 2019), 2019, :402-413
[5]   DroidCC: A Scalable Clone Detection Approach for Android Applications to Detect Similarity at Source Code Level [J].
Akram, Junaid ;
Shi, Zhendong ;
Mumtaz, Majid ;
Ping, Luo .
2018 IEEE 42ND ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), VOL 1, 2018, :100-105
[6]  
Akram Junaid, 2018, P SEKE 2018 30 INT C, P354
[7]   Measuring, analyzing and predicting security vulnerabilities in software systems [J].
Alhazmi, O. H. ;
Malaiya, Y. K. ;
Ray, I. .
COMPUTERS & SECURITY, 2007, 26 (03) :219-228
[8]   Tracing known security vulnerabilities in software repositories - A Semantic Web enabled modeling approach [J].
Alqahtani, Sultan S. ;
Eghan, Ellis E. ;
Rilling, Juergen .
SCIENCE OF COMPUTER PROGRAMMING, 2016, 121 :153-175
[9]   Formally modeling deceptive patches using a game-based approach [J].
Avery, Jeffrey ;
Wallrabenstein, John Ross .
COMPUTERS & SECURITY, 2018, 75 :182-190
[10]   Automatic patch-based exploit generation is possible: Techniques and implications [J].
Brumley, David ;
Poosankam, Pongsin ;
Song, Dawn ;
Zheng, Jiang .
PROCEEDINGS OF THE 2008 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 2008, :143-+