Learning to Repair Software Vulnerabilities with Generative Adversarial Networks
Jacob Harer, Onur Ozdemir, Tomo Lazovich, Christopher P. Reale,, Rebecca L. Russell, Louis Y. Kim, Peter Chin

TL;DR
This paper introduces an adversarial learning method using GANs for automated software vulnerability repair, achieving competitive results without needing paired training data, and applicable to other code-related tasks.
Contribution
The paper presents a novel GAN-based approach for software vulnerability repair that does not require paired data and is adaptable to various code correction tasks.
Findings
Effective in repairing vulnerabilities close to seq2seq methods
Does not require paired labeled examples
Applicable to other code-related problems
Abstract
Motivated by the problem of automated repair of software vulnerabilities, we propose an adversarial learning approach that maps from one discrete source domain to another target domain without requiring paired labeled examples or source and target domains to be bijections. We demonstrate that the proposed adversarial learning approach is an effective technique for repairing software vulnerabilities, performing close to seq2seq approaches that require labeled pairs. The proposed Generative Adversarial Network approach is application-agnostic in that it can be applied to other problems similar to code repair, such as grammar correction or sentiment translation.
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Malware Detection Techniques · Software Engineering Research · Software Testing and Debugging Techniques
MethodsSigmoid Activation · Tanh Activation · Long Short-Term Memory · Sequence to Sequence
