Why Charles Can Pen-test: an Evolutionary Approach to Vulnerability Testing
Gabriele Costa, Andrea Valenza

TL;DR
This paper introduces an automated, evolutionary approach for vulnerability testing in event-based applications, combining co-evolutionary algorithms to improve detection of security flaws beyond current tools.
Contribution
It presents a novel co-evolutionary, contract-driven method for automatic vulnerability discovery in web and mobile applications, enhancing effectiveness over existing penetration testing tools.
Findings
Automatically discovers injection flaws missed by current scanners.
Effective in complex, real-world web applications.
Prototype demonstrates superior vulnerability detection.
Abstract
Discovering vulnerabilities in applications of real-world complexity is a daunting task: a vulnerability may affect a single line of code, and yet it compromises the security of the entire application. Even worse, vulnerabilities may manifest only in exceptional circumstances that do not occur in the normal operation of the application. It is widely recognized that state-of-the-art penetration testing tools play a crucial role, and are routinely used, to dig up vulnerabilities. Yet penetration testing is still primarily a human-driven activity, and its effectiveness still depends on the skills and ingenuity of the security analyst driving the tool. In this paper, we propose a technique for the automatic discovery of vulnerabilities in event-based systems, such as web and mobile applications. Our approach is based on a collaborative, co-evolutionary and contract-driven search strategy…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Malware Detection Techniques · Software Testing and Debugging Techniques · Software Engineering Research
