Date of Graduation
Bachelor of Science
Computer Science and Computer Engineering
Committee Member/Second Reader
The purpose of this thesis is to develop a tool that uses machine learning techniques to make predictions about whether or not a given vulnerability will be exploited. Such a tool could help organizations such as electric utilities to prioritize their security patching operations. Three different models, based on a deep neural network, a random forest, and a support vector machine respectively, are designed and implemented. Training data for these models is compiled from a variety of sources, including the National Vulnerability Database published by NIST and the Exploit Database published by Offensive Security. Extensive experiments are conducted, including testing the accuracy of each model, dynamically training the models on a rolling window of training data, and filtering the training data by various features. Of the chosen models, the deep neural network and the support vector machine show the highest accuracy (approximately 94% and 93%, respectively), and could be developed by future researchers into an effective tool for vulnerability analysis.
vulnerability, exploit, machine learning, deep neural network, random forest, support vector machine
Bliss, Adam, "Learning-based Analysis on the Exploitability of Security Vulnerabilities" (2018). Computer Science and Computer Engineering Undergraduate Honors Theses. 61.