Litcius/Paper detail

Information-theoretic Source Code Vulnerability Highlighting

Van Nguyen, Trung Le, Olivier De Vel, Paul Montague, John Grundy, Dinh Phung

202120 citationsDOI

Abstract

Software vulnerabilities are a crucial and serious concern in the software industry and computer security. A variety of methods have been proposed to detect vulnerabilities in real-world software. Recent methods based on deep learning approaches for automatic feature extraction have improved software vulnerability identification compared with machine learning approaches based on hand-crafted feature extraction. However, these methods can usually only detect software vulnerabilities at a function or program level, which is much less informative because, out of hundreds (thousands) of code statements in a program or function, only a few core statements contribute to a software vulnerability. This requires us to find a way to detect software vulnerabilities at a fine-grained level. In this paper, we propose a novel method based on the concept of mutual information that can help us to detect and isolate software vulnerabilities at a fine-grained level (i.e., several statements that are highly relevant to a software vulnerability that include the core vulnerable statements) in both unsupervised and semi-supervised contexts. We conduct comprehensive experiments on real-world software projects to demonstrate that our proposed method can detect vulnerabilities at a fine-grained level by identifying several statements that mostly contribute to the vulnerability detection decision.

Topics & Concepts

Computer scienceSecure codingVulnerability (computing)SoftwareVulnerability managementSource codeSoftware security assuranceSoftware metricIdentification (biology)Software bugSoftware developmentArtificial intelligenceData miningSoftware engineeringMachine learningVulnerability assessmentComputer securitySoftware constructionInformation securityProgramming languagePsychotherapistBiologyPsychological resilienceBotanySecurity servicePsychologySoftware Engineering ResearchSoftware Reliability and Analysis ResearchAdvanced Malware Detection Techniques
Information-theoretic Source Code Vulnerability Highlighting | Litcius