Visible to the public Project Achilles: A Prototype Tool for Static Method-Level Vulnerability Detection of Java Source Code Using a Recurrent Neural Network

TitleProject Achilles: A Prototype Tool for Static Method-Level Vulnerability Detection of Java Source Code Using a Recurrent Neural Network
Publication TypeConference Paper
Year of Publication2019
AuthorsSaccente, Nicholas, Dehlinger, Josh, Deng, Lin, Chakraborty, Suranjan, Xiong, Yin
Conference Name2019 34th IEEE/ACM International Conference on Automated Software Engineering Workshop (ASEW)
PublisherIEEE
Conference LocationSan Diego, CA, USA
ISBN Number978-1-72814-136-7
Keywordscomposability, Metrics, object oriented security, pubcrawl, resilience, Resiliency
Abstract

Software has become an essential component of modern life, but when software vulnerabilities threaten the security of users, new ways of analyzing for software security must be explored. Using the National Institute of Standards and Technology's Juliet Java Suite, containing thousands of examples of defective Java methods for a variety of vulnerabilities, a prototype tool was developed implementing an array of Long-Short Term Memory Recurrent Neural Networks to detect vulnerabilities within source code. The tool employs various data preparation methods to be independent of coding style and to automate the process of extracting methods, labeling data, and partitioning the dataset. The result is a prototype command-line utility that generates an n-dimensional vulnerability prediction vector. The experimental evaluation using 44,495 test cases indicates that the tool can achieve an accuracy higher than 90% for 24 out of 29 different types of CWE vulnerabilities.

URLhttps://ieeexplore.ieee.org/document/8967427/
DOI10.1109/ASEW.2019.00040
Citation Keysaccente_project_2019