2020
DOI: 10.1109/access.2020.3016774
|View full text |Cite
|
Sign up to set email alerts
|

Vulnerability Prediction From Source Code Using Machine Learning

Abstract: As the role of information and communication technologies gradually increases in our lives, software security becomes a major issue to provide protection against malicious attempts and to avoid ending up with noncompensable damages to the system. With the advent of data-driven techniques, there is now a growing interest in how to leverage machine learning (ML) as a software assurance method to build trustworthy software systems. In this study, we examine how to predict software vulnerabilities from source code… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
27
0
1

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 56 publications
(41 citation statements)
references
References 21 publications
0
27
0
1
Order By: Relevance
“…The application of data-driven techniques in security assurance may provide a promising solution in automated and intelligent security analysis, including vulnerability identification, code classification, vulnerability prediction, code summarizing, and clone detection. In the literature, limited research work can be found in this area [9,61,91].…”
Section: Data Driven Security Assurance Methodsmentioning
confidence: 99%
See 2 more Smart Citations
“…The application of data-driven techniques in security assurance may provide a promising solution in automated and intelligent security analysis, including vulnerability identification, code classification, vulnerability prediction, code summarizing, and clone detection. In the literature, limited research work can be found in this area [9,61,91].…”
Section: Data Driven Security Assurance Methodsmentioning
confidence: 99%
“…In the literature, machine learning methods are also applied to code complexities, code churn, token frequency, developer activities, etc., to detect vulnerabilities towards enhancing security assurance. Bilgin et al [9] used the machine learning technique to predict the vulnerability of the software from source code before its release. This work also includes developing a source code representation method, intelligently analyzing the abstract syntax tree (AST) form of the source code, and then verifying whether ML can be applied to distinguish between vulnerable and non-vulnerable code fragments.…”
Section: Vulnerability Detection/prediction Approachmentioning
confidence: 99%
See 1 more Smart Citation
“…Dataset preparation: Authors used existing labeled datasets as well as created their own datasets to train ml models. Specifically, a set of studies [48,156,219,243,254,263,298] used available labeled datasets for php, Java, C, C++, and Android applications to train vulnerability detection models. In other cases, Russell et al [261] extended an existing dataset with millions of C and C++ functions and then labeled it based on the output of three static analyzers (i.e., Clang, CppCheck, and Flawfinder).…”
Section: Vulnerability Analysismentioning
confidence: 99%
“…The study in [124] built a model to predict software vulnerabilities of codes using ML before releasing the code. After developing a source code representation using AST and intelligently analysing it, the ML models were applied.…”
Section: Applying ML To Detect Source Code Vulnerabilitiesmentioning
confidence: 99%