480 Hits in 1.5 sec

Coda: An End-to-End Neural Program Decompiler

Cheng Fu, Huili Chen, Haolan Liu, Xinyun Chen, Yuandong Tian, Farinaz Koushanfar, Jishen Zhao
2019 Neural Information Processing Systems  
To address the above problems, we propose Coda 1 , the first end-to-end neural-based framework for code decompilation.  ...  Furthermore, Coda outperforms the sequence-to-sequence model with attention by a margin of 70% program accuracy.  ...  In this work, we propose Coda, a neural program decompilation framework that resolves the above limitations.  ... 
dblp:conf/nips/FuCLCTKZ19 fatcat:v4rqq7z3n5djdaez6bt66v7hfe

Neutron: an attention-based neural decompiler

Ruigang Liang, Ying Cao, Peiwei Hu, Kai Chen
2021 Cybersecurity  
Besides, we implement a neural decompilation framework called Neutron.  ...  The problems mentioned above hinder the efficiency of advanced applications (e.g., vulnerability discovery) based on decompiled high-level PL codes.In this paper, we propose a decompilation approach based  ...  Kai Chen made a decisive contribution to the content of research and revising the article critically. Funding Our research was supported by NSFC U1836211. And the recipient is Professor Kai Chen.  ... 
doi:10.1186/s42400-021-00070-0 fatcat:5362toppdbcb5gyr2ofs2o7rku

Towards Neural Decompilation [article]

Omer Katz, Yuval Olshaker, Yoav Goldberg, Eran Yahav
2019 arXiv   pre-print
We present a novel approach to decompilation based on neural machine translation. The main idea is to automatically learn a decompiler from a given compiler.  ...  We address the problem of automatic decompilation, converting a program in low-level representation back to a higher-level human-readable programming language.  ...  We presented a new approach to the decompilation problem. We base our decompiler framework on neural machine translation. Given a compiler, our framework automatically learns a decompiler from it.  ... 
arXiv:1905.08325v1 fatcat:nmd45uzjrbfqpj2meaxyu2u2ge

Code Translation with Compiler Representations [article]

Marc Szafraniec, Baptiste Roziere, Hugh Leather, Francois Charton, Patrick Labatut, Gabriel Synnaeve
2022 arXiv   pre-print
Applying neural machine translation (NMT) approaches to code has successfully broadened the set of programs on which one can get a natural-looking translation.  ...  Additionally, we train models with high performance on the problem of IR decompilation, generating programming source code from IR, and study using IRs as intermediary pivot for translation.  ...  Decompilation, translating from a low-level representation of a program (e.g. assembly) to a highlevel one (source code), is another application of IR-augmented Neural Machine Translation.  ... 
arXiv:2207.03578v2 fatcat:vj6u7zc655h5pdustl6ishxwry

DIRE: A Neural Approach to Decompiled Identifier Naming [article]

Jeremy Lacomis, Pengcheng Yin, Edward J. Schwartz, Miltiadis Allamanis, Claire Le Goues, Graham Neubig, Bogdan Vasilescu
2019 arXiv   pre-print
We also present a technique for generating corpora suitable for training and evaluating models of decompiled code renaming, which we use to create a corpus of 164,632 unique x86-64 binaries generated from  ...  We propose the Decompiled Identifier Renaming Engine (DIRE), a novel probabilistic technique for variable name recovery that uses both lexical and structural information recovered by the decompiler.  ...  Computation for this research was also supported in part by the Pittsburgh Supercomputing Center and a gift of AWS credits from Amazon.  ... 
arXiv:1909.09029v2 fatcat:ijuhryanpbbnnd27bnosfuseou

Augmenting Decompiler Output with Learned Variable Names and Types [article]

Qibin Chen and Jeremy Lacomis and Edward J. Schwartz and Claire Le Goues and Graham Neubig and Bogdan Vasilescu
2021 arXiv   pre-print
A decompiler attempts to reverse compilation, transforming a binary to a higher-level language such as C.  ...  A common tool used by security professionals for reverse-engineering binaries found in the wild is the decompiler.  ...  functions and 368 million code tokens. • DIRTY-the DecompIler variable ReTYper-an opensource Transformer-based neural network model to recover syntactic and semantic types in decompiled variables.  ... 
arXiv:2108.06363v1 fatcat:up2d6ciynnhevok5cracznn6yq

DIRE and its Data: Neural Decompiled Variable Renamings with Respect to Software Class

Luke Dramko, Jeremy Lacomis, Pengcheng Yin, Edward J. Schwartz, Miltiadis Allamanis, Graham Neubig, Bogdan Vasilescu, Claire Le Goues
2022 ACM Transactions on Software Engineering and Methodology  
Unfortunately, decompiler output is far from readable because the decompilation process is often incomplete.  ...  Next, we show how training on more popular, possibly higher quality code (measured using GitHub stars) leads to a more generalizable model because popular code tends to have more diverse variable names  ...  ACKNOWLEDGMENTS This material is based upon work supported in part by the Software Engineering Institute and National Science Foundation (NSF awards CCF-1815287 and CCF-1910067).  ... 
doi:10.1145/3546946 fatcat:whydeq5zhzhmbano5xqy5u6kwi

Suggesting meaningful variable names for decompiled code: a machine translation approach

Alan Jaffe
2017 Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering - ESEC/FSE 2017  
Decompiled code lacks meaningful variable names. We used statistical machine translation to suggest variable names that are natural given the context.  ...  This technique has previously been successfully applied to obfuscated JavaScript code, but decompiled C code poses unique challenges in constructing an aligned corpus and selecting the best translation  ...  For instance, replacing the statistical machine translation with a neural-based translation model would be a promising avenue for future exploration.  ... 
doi:10.1145/3106237.3121274 dblp:conf/sigsoft/Jaffe17 fatcat:vahsjqh46vh2fhxv34njgq46aq

Android Malware Detection with Deep Learning using RNN from Opcode Sequences

A. Lakshmanarao, M. Shashi
2022 International Journal of Interactive Mobile Technologies  
The proposed Recurrent Neural Network model could achieve 96% accuracy for android malware detection.  ...  The consequences after installing a malware app are unpredictable. Malware apps can gather user personal data, browsing history, user profiles, user sensitive data like passwords.  ...  Dex files are decompiled to generate Smali files. One android appl contains several java programs. To generate opcodes from a single app, all these java programs can be analyzed.  ... 
doi:10.3991/ijim.v16i01.26433 fatcat:mpfqjhakf5dttdat42sr6dyd7u

The Strengths and Behavioral Quirks of Java Bytecode Decompilers

Nicolas Harrand, Cesar Soto-Valero, Martin Monperrus, Benoit Baudry
2019 2019 19th International Working Conference on Source Code Analysis and Manipulation (SCAM)  
Our results show that no single modern decompiler is able to correctly handle the variety of bytecode structures coming from real-world programs.  ...  In this work, we hypothesize that the diverse ways in which bytecode can be decompiled has a direct impact on the quality of the source code produced by decompilers.  ...  ACKNOWLEDGMENTS This work has been partially supported by the Wallenberg Autonomous Systems and Software Program (WASP) funded by Knut and Alice Wallenberg Foundation and by the TrustFull project financed  ... 
doi:10.1109/scam.2019.00019 dblp:conf/scam/HarrandSMB19 fatcat:gxcqkrlc3ncjboeueac2wnipam

Java decompiler diversity and its application to meta-decompilation

Nicolas Harrand, César Soto-Valero, Martin Monperrus, Benoit Baudry
2020 Journal of Systems and Software  
To do so, we merge partial decompilation into a new one based on compilation errors. Arlecchino handles 37.6% of bytecode classes that were previously handled by no decompiler.  ...  Our results show that no single modern decompiler is able to correctly handle the variety of bytecode structures coming from real-world programs.  ...  Acknowledgments This work has been partially supported by the Wallenberg Autonomous Systems and Software Program (WASP) funded by Knut and Alice Wallenberg Foundation and by the TrustFull project funded  ... 
doi:10.1016/j.jss.2020.110645 fatcat:6pn3tj2ecrh2bdxubvy7kur26a

Adabot: Fault-Tolerant Java Decompiler [article]

Zhiming Li, Qing Wu, Kun Qian
2019 arXiv   pre-print
In this paper, we view reverse engineering as a statistical machine translation task instead of rule-based task, and propose a fault-tolerant Java decompiler based on machine translation models.  ...  Our model is based on attention-based Neural Machine Translation (NMT) and Transformer architectures. First, we measure the translation quality on both the redundant and purified datasets.  ...  a more suitable model for Java decompilation task than attention-based NMT.  ... 
arXiv:1908.06748v2 fatcat:o3yvjnup3vf2bo4ico3yxdlqby

dewolf: Improving Decompilation by leveraging User Surveys [article]

Steffen Enders, Eva-Maria C. Behner, Niklas Bergmann, Mariia Rybalka, Elmar Padilla, Er Xue Hui, Henry Low, Nicholas Sim
2022 arXiv   pre-print
Since the source code of encountered samples is rarely available, analysts regularly employ decompilers for easier and faster comprehension than analyzing a binary's disassembly.  ...  We developed a variety of improvements over the previous academic state-of-the-art decompiler and some novel algorithms to enhance readability and comprehension, focusing on manual analysis.  ...  In the past few years, several decompilation approaches based on (recurrent) neural networks (NN) or neural machine translation have been proposed [23] , [24] , [28] .  ... 
arXiv:2205.06719v1 fatcat:7xmnsqnk65gffe4bp7vevbbrdq

A method for decompilation of AMD GCN kernels to OpenCL

Kristina Mihajlenko, Mikhail Lukin, Andrey Stankevich
2021 Information and Control Systems  
Purpose: We aim at developing the first assembly decompiler tool for a modern AMD GPU architecture that generates code in the OpenCL language, which is widely used for programming GPGPUs.  ...  Decompilers are useful tools for software analysis and support in the absence of source code. They are available for many hardware architectures and programming languages.  ...  The body extraction Extracting the body of the program is a small, but quite important task, serving as a preparatory stage for further decompilation.  ... 
doi:10.31799/1684-8853-2021-2-33-42 fatcat:uonthu64vjendjk26bo3da4sxe

Visual Detection for Android Malware using Deep Learning

In this paper, we proposed a static analysis model that does not need to understand the source code of the android applications.  ...  Then we used the deep learning technique convolutional neural network to identify Android application as benign or as malware.  ...  API Colouring API (Application Programming Interface) is a set of protocols, functions, and tools for building software applications.  ... 
doi:10.35940/ijitee.a8132.1110120 fatcat:ejoz2kgpnjcohaiwhoyzzaf7zi
« Previous Showing results 1 — 15 out of 480 results