2015 IEEE Symposium on Security and Privacy 2015
DOI: 10.1109/sp.2015.47
|View full text |Cite
|
Sign up to set email alerts
|

A Generic Approach to Automatic Deobfuscation of Executable Code

Abstract: Malicious software are usually obfuscated to avoid detection and resist analysis. When new malware is encountered, such obfuscations have to be penetrated or removed ("deobfuscated") in order to understand the internal logic of the code and devise countermeasures. This paper discusses a generic approach for deobfuscation of obfuscated executable code. Our approach does not make any assumptions about the nature of the obfuscations used, but instead uses semantics-preserving program transformations to simplify a… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
140
0

Year Published

2015
2015
2019
2019

Publication Types

Select...
4
3
2

Relationship

0
9

Authors

Journals

citations
Cited by 150 publications
(146 citation statements)
references
References 25 publications
0
140
0
Order By: Relevance
“…We complement this approach by considering a class of obfuscation mechanisms that are inherently difficult to analyze with taint analysis. Yadegari et al [9] also measured the impact of different taint analysis techniques on the quality of the deobfuscation for several off-the-shelf virtualization-based obfuscators.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…We complement this approach by considering a class of obfuscation mechanisms that are inherently difficult to analyze with taint analysis. Yadegari et al [9] also measured the impact of different taint analysis techniques on the quality of the deobfuscation for several off-the-shelf virtualization-based obfuscators.…”
Section: Related Workmentioning
confidence: 99%
“…State of the art in deobfuscation shows that control flow flattening not based on opaque predicates can be broken by using static path deobfuscation [7]. Recent work [8,9] focuses on the use of symbolic analysis together with taint analysis to deobfuscate virtualized binaries and allow exploration of their execution path. Symbolic analysis maintains sets of constraints on the execution paths to determine which inputs cause each branch of a conditional statement to be explored.…”
Section: Introductionmentioning
confidence: 99%
“…On the other side, since one x86 instruction will be translated into several virtual bytecode that are emulated at run time, applying virtualization obfuscation on the whole program will introduce unacceptable time and space overheads. Typically, virtualization obfuscation is used to selectively protect the key [70]. As shown in Table V, two cases fail at 10% obfuscation level and three test cases do not work when 30% code is obfuscated.…”
Section: A Case Study I: Same Programsmentioning
confidence: 99%
“…a hidden key, an algorithm, etc.) [11,25,28]. Effectively, they enable reverse engineers to cope with a large number of programs.…”
Section: Introductionmentioning
confidence: 99%