Early Identification of Vulnerable Software Components via Ensemble Learning
Title | Early Identification of Vulnerable Software Components via Ensemble Learning |
Publication Type | Conference Paper |
Year of Publication | 2016 |
Authors | Pang, Y., Xue, X., Namin, A. S. |
Conference Name | 2016 15th IEEE International Conference on Machine Learning and Applications (ICMLA) |
Keywords | compositionality, early vulnerable software component identification, Ensemble Learning, Human Behavior, human factors, Java, Java Android applications, learning (artificial intelligence), Metrics, mislabeled data, object-oriented programming, Prediction algorithms, Predictive models, program testing, pubcrawl, Resiliency, robust software system, security of data, smart phones, software reliability, Software systems, software testing process, support vector machine, Support vector machines, supports vector machine algorithm, Training, Training data, Vulnerability, vulnerability detection, vulnerability detection scheme |
Abstract | Software components, which are vulnerable to being exploited, need to be identified and patched. Employing any prevention techniques designed for the purpose of detecting vulnerable software components in early stages can reduce the expenses associated with the software testing process significantly and thus help building a more reliable and robust software system. Although previous studies have demonstrated the effectiveness of adapting prediction techniques in vulnerability detection, the feasibility of those techniques is limited mainly because of insufficient training data sets. This paper proposes a prediction technique targeting at early identification of potentially vulnerable software components. In the proposed scheme, the potentially vulnerable components are viewed as mislabeled data that may contain true but not yet observed vulnerabilities. The proposed hybrid technique combines the supports vector machine algorithm and ensemble learning strategy to better identify potential vulnerable components. The proposed vulnerability detection scheme is evaluated using some Java Android applications. The results demonstrated that the proposed hybrid technique could identify potentially vulnerable classes with high precision and relatively acceptable accuracy and recall. |
URL | https://ieeexplore.ieee.org/document/7838188/ |
DOI | 10.1109/ICMLA.2016.0084 |
Citation Key | pang_early_2016 |
- Resiliency
- vulnerability detection scheme
- vulnerability detection
- Vulnerability
- Training data
- Training
- supports vector machine algorithm
- Support vector machines
- support vector machine
- software testing process
- Software systems
- software reliability
- smart phones
- security of data
- robust software system
- Compositionality
- pubcrawl
- program testing
- Predictive models
- Prediction algorithms
- object-oriented programming
- mislabeled data
- Metrics
- learning (artificial intelligence)
- Java Android applications
- Java
- Human Factors
- Human behavior
- Ensemble Learning
- early vulnerable software component identification