{"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/recurrent-neural-networks-for-fuzz-testing","title":"Recurrent Neural Networks for Fuzz Testing Web Browsers","arxiv_id":"1812.04852","date":"2018-12-12","proceeding":null,"authors":["Martin Sablotny","Bjørn Sand Jensen","Chris W. Johnson"],"abstract":"Generation-based fuzzing is a software testing approach which is able to\ndiscover different types of bugs and vulnerabilities in software. It is,\nhowever, known to be very time consuming to design and fine tune classical\nfuzzers to achieve acceptable coverage, even for small-scale software systems.\nTo address this issue, we investigate a machine learning-based approach to fuzz\ntesting in which we outline a family of test-case generators based on Recurrent\nNeural Networks (RNNs) and train those on readily available datasets with a\nminimum of human fine tuning. The proposed generators do, in contrast to\nprevious work, not rely on heuristic sampling strategies but principled\nsampling from the predictive distributions. We provide a detailed analysis to\ndemonstrate the characteristics and efficacy of the proposed generators in a\nchallenging web browser testing scenario. The empirical results show that the\nRNN-based generators are able to provide better coverage than a mutation based\nmethod and are able to discover paths not discovered by a classical fuzzer. Our\nresults supplement findings in other domains suggesting that generation based\nfuzzing with RNNs is a viable route to better software quality conditioned on\nthe use of a suitable model selection/analysis procedure.","url_abs":"http://arxiv.org/abs/1812.04852v1","url_pdf":"http://arxiv.org/pdf/1812.04852v1.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":"abstracts"},"code_links":[{"paper_slug":"recurrent-neural-networks-for-fuzz-testing","repo_url":"https://github.com/susperius/icisc_rnnfuzz","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":null}],"tasks":[{"task_slug":"model-selection","task_name":"Model Selection"},{"task_slug":"software-testing","task_name":"software testing"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}