{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/evil-exploiting-software-via-natural-language","title":"EVIL: Exploiting Software via Natural Language","arxiv_id":"2109.00279","date":"2021-09-01","proceeding":null,"authors":["Pietro Liguori","Erfan Al-Hossami","Vittorio Orbinato","Roberto Natella","Samira Shaikh","Domenico Cotroneo","Bojan Cukic"],"abstract":"Writing exploits for security assessment is a challenging task. The writer needs to master programming and obfuscation techniques to develop a successful exploit. To make the task easier, we propose an approach (EVIL) to automatically generate exploits in assembly/Python language from descriptions in natural language. The approach leverages Neural Machine Translation (NMT) techniques and a dataset that we developed for this work. We present an extensive experimental study to evaluate the feasibility of EVIL, using both automatic and manual analysis, and both at generating individual statements and entire exploits. The generated code achieved high accuracy in terms of syntactic and semantic correctness.","url_abs":"https://arxiv.org/abs/2109.00279v1","url_pdf":"https://arxiv.org/pdf/2109.00279v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"evil-exploiting-software-via-natural-language","repo_url":"https://github.com/dessertlab/evil","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[{"slug":"evil","name":"EVIL","full_name":""},{"slug":"evil-decoders","name":"EVIL-Decoders","full_name":""},{"slug":"evil-encoders","name":"EVIL-Encoders","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}