Litcius/Paper detail

Generating Adversarial Examples for Holding Robustness of Source Code Processing Models

Huangzhao Zhang, Zhuo Li, Ge Li, Lei Ma, Yang Liu, Zhi Jin

2020Proceedings of the AAAI Conference on Artificial Intelligence116 citationsDOIOpen Access PDF

Abstract

Automated processing, analysis, and generation of source code are among the key activities in software and system lifecycle. To this end, while deep learning (DL) exhibits a certain level of capability in handling these tasks, the current state-of-the-art DL models still suffer from non-robust issues and can be easily fooled by adversarial attacks.Different from adversarial attacks for image, audio, and natural languages, the structured nature of programming languages brings new challenges. In this paper, we propose a Metropolis-Hastings sampling-based identifier renaming technique, named \fullmethod (\method), which generates adversarial examples for DL models specialized for source code processing. Our in-depth evaluation on a functionality classification benchmark demonstrates the effectiveness of \method in generating adversarial examples of source code. The higher robustness and performance enhanced through our adversarial training with \method further confirms the usefulness of DL models-based method for future fully automated source code processing.

Topics & Concepts

Adversarial systemComputer scienceSource codeRobustness (evolution)IdentifierExploitArtificial intelligenceCode (set theory)Machine learningBenchmark (surveying)SoftwareComputer engineeringProgramming languageTheoretical computer scienceData miningComputer securityGeodesySet (abstract data type)BiochemistryChemistryGeographyGeneAdversarial Robustness in Machine LearningAdvanced Malware Detection TechniquesDigital and Cyber Forensics
Generating Adversarial Examples for Holding Robustness of Source Code Processing Models | Litcius