2018 · 50 citations · 22 references
ComputingComputer ScienceCybersecurityMachine LearningSoftware EngineeringVulnerability AnalysisCross-site ScriptingSoftware Security EngineeringSoftware Vulnerability DiscoverySql InjectionStatic Vulnerability AnalysisWeb Application VulnerabilitiesAutomated Vulnerability DetectionCross-site Scripting DetectionMachine Learning For Vulnerability DetectionSource Code Vulnerability AnalysisSource Code Vulnerability DetectionSql Injection DetectionVulnerabilityVulnerability Detection
We present a novel method for static analysis in which we combine data-flow analysis with machine learning to detect SQL injection (SQLi) and Cross-Site Scripting (XSS) vulnerabilities in PHP applications. We assembled a dataset from the National Vulnerability Database and the SAMATE project, containing vulnerable PHP code samples and their patched versions in which the vulnerability is solved. We extracted features from the code samples by applying data-flow analysis techniques, including reaching definitions analysis, taint analysis, and reaching constants analysis. We used these features in machine learning to train various probabilistic classifiers. To demonstrate the effectiveness of our approach, we built a tool called WIRECAML, and compared our tool to other tools for vulnerability detection in PHP code. Our tool performed best for detecting both SQLi and XSS vulnerabilities. We also tried our approach on a number of open-source software applications, and found a previously unknown vulnerability in a photo-sharing web application.
22
Scikit-learn: Machine Learning in Python
Fabián Pedregosa, Gaël Varoquaux, Alexandre Gramfort et al. · arXiv (Cornell University) · 2012 · 63.7K citations · Full text
Scikit-learn: Machine Learning in Python
PedregosaFabian, VaroquauxGaël, GramfortAlexandre et al. · Journal of Machine Learning Research · 2011 · 8.2K citations
The relationship between Precision-Recall and ROC curves
Jesse Davis, Mark Goadrich · 2006 · 6.3K citations · Full text
Modeling and Discovering Vulnerabilities with Code Property Graphs
Fabian Yamaguchi, Nico Golde, Daniel J. Arp et al. · 2014 · 732 citations
Frances Allen · ACM SIGPLAN Notices · 1970 · 720 citations