SHERLOCK: A Deep Learning Approach To Detect Software Vulnerabilities

📅 2025-12-14
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Traditional static and dynamic analysis tools suffer from low accuracy and poor generalizability in detecting diverse software vulnerabilities. To address this, this paper proposes an end-to-end, function-level vulnerability detection method based on Convolutional Neural Networks (CNNs). The approach takes lexically tokenized source code as input and is the first to systematically apply CNNs to fine-grained, multi-class vulnerability identification—covering critical CWE types including CWE-199 and CWE-120. Evaluated via lexical tokenization and five-fold cross-validation across multiple benchmark datasets, the method achieves high classification accuracy, with significantly improved true positive and true negative rates over state-of-the-art static and dynamic analyzers. Key contributions include: (1) the first CNN-based framework tailored for function-level, multi-CWE vulnerability detection; (2) empirical validation of lexical sequence modeling efficacy for vulnerability detection; and (3) substantial performance gains in identifying critical security defects.

Technology Category

Application Category

📝 Abstract
The increasing reliance on software in various applications has made the problem of software vulnerability detection more critical. Software vulnerabilities can lead to security breaches, data theft, and other negative outcomes. Traditional software vulnerability detection techniques, such as static and dynamic analysis, have been shown to be ineffective at detecting multiple vulnerabilities. To address this issue, this study employed a deep learning approach, specifically Convolutional Neural Networks (CNN), to solve the software vulnerability detection problem. A 5-split cross-validation approach was used to train and evaluate the CNN model, which takes tokenized source code as input. The findings indicated that Sherlock successfully detected multiple vulnerabilities at the function level, and its performance was particularly strong for CWE-199, CWE-120, and CWE-Other, with an overall high accuracy rate and significant true positive and true negative values. However, the performance was less reliable for some vulnerabilities due to the lack of a standardized dataset which will be a future research direction. The results suggest that compared to current techniques, the proposed deep learning approach has the potential to substantially enhance the accuracy of software vulnerability detection.
Problem

Research questions and friction points this paper is trying to address.

Detects software vulnerabilities using deep learning
Improves accuracy over traditional static and dynamic analysis
Addresses dataset limitations for reliable vulnerability detection
Innovation

Methods, ideas, or system contributions that make the work stand out.

Uses Convolutional Neural Networks for vulnerability detection
Takes tokenized source code as input for analysis
Employs 5-split cross-validation to train and evaluate model
🔎 Similar Papers
No similar papers found.
💼 Related Jobs
No related jobs found.
S
Saadh Jawwadh
Informatics Institute of Technology, University of Westminster, Colombo, Sri Lanka
G
Guhanathan Poravi
Informatics Institute of Technology, Colombo, Sri Lanka