2018 · 13 citations · 20 references
ComputingComputer ScienceCybersecurityComputer SecurityMachine LearningSoftware EngineeringExploit DevelopmentExploitation TechniquesSoftware Security EngineeringSoftware Vulnerability DiscoveryAutomated Exploit GenerationAutomated Vulnerability DetectionMachine Learning For Vulnerability DetectionRelative Effectiveness EstimationSymbolic Execution For Vulnerability DiscoveryVulnerability DetectionVulnerability DiscoveryVulnerability Prediction
A Cyber Reasoning System (CRS) is designed to automatically find and exploit software vulnerabilities in complex software. To be effective, CRSs integrate multiple vulnerability detection tools (VDTs), such as symbolic executors and fuzzers. Determining which VDTs can best find bugs in a large set of target programs, and how to optimally configure those VDTs, remains an open and challenging problem. Current solutions are based on heuristics created by security analysts that rely on experience, intuition and luck. In this paper, we present Central Exploit Organizer (CEO), a proof-of-concept tool to optimize VDT selection. CEO uses machine learning to optimize the selection and configuration of the most suitable vulnerability detection tool. We show that CEO can predict the relative effectiveness of a given vulnerability detection tool, configuration, and initial input. The estimation accuracy presents an improvement between $11%$ and $21%$ over random selection. We are releasing CEO and our dataset as open source to encourage further research.
20
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
Symbolic execution and program testing
James C. King · Communications of the ACM · 1976 · 3K citations · Full text
SOK: (State of) The Art of War: Offensive Techniques in Binary Analysis
Yan Shoshitaishvili, Ruoyu Wang, Christopher Salls et al. · 2016 · 911 citations · Full text
Driller: Augmenting Fuzzing Through Selective Symbolic Execution
Nick Stephens, John Grosen, Christopher Salls et al. · 2016 · 876 citations · Full text