{"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/end-to-end-prediction-of-buffer-overruns-from","title":"End-to-End Prediction of Buffer Overruns from Raw Source Code via Neural Memory Networks","arxiv_id":"1703.02458","date":"2017-03-07","proceeding":null,"authors":["Min-Je Choi","Sehun Jeong","Hakjoo Oh","Jaegul Choo"],"abstract":"Detecting buffer overruns from a source code is one of the most common and\nyet challenging tasks in program analysis. Current approaches have mainly\nrelied on rigid rules and handcrafted features devised by a few experts,\nlimiting themselves in terms of flexible applicability and robustness due to\ndiverse bug patterns and characteristics existing in sophisticated real-world\nsoftware programs. In this paper, we propose a novel, data-driven approach that\nis completely end-to-end without requiring any hand-crafted features, thus free\nfrom any program language-specific structural limitations. In particular, our\napproach leverages a recently proposed neural network model called memory\nnetworks that have shown the state-of-the-art performances mainly in\nquestion-answering tasks. Our experimental results using source codes\ndemonstrate that our proposed model is capable of accurately detecting simple\nbuffer overruns. We also present in-depth analyses on how a memory network can\nlearn to understand the semantics in programming languages solely from raw\nsource codes, such as tracing variables of interest, identifying numerical\nvalues, and performing their quantitative comparisons.","url_abs":"http://arxiv.org/abs/1703.02458v1","url_pdf":"http://arxiv.org/pdf/1703.02458v1.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":"end-to-end-prediction-of-buffer-overruns-from","repo_url":"https://github.com/mjc92/buffer_overrun_memory_networks","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":null}],"tasks":[{"task_slug":"question-answering","task_name":"Question Answering"}],"methods":[{"method_slug":"memory-network","method_name":"Memory Network"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}