Keywords: JavaScript, Obfuscation, Deobfuscation
Abstract: $$JavaScript (JS) is widely used in the development
of website scripts and software design. When writing frontend
programs, reading and understanding JS code is often an
essential step. To protect their designs from being comprehended
by other developers, some programmers employ code obfuscation
techniques. Concurrently, certain malicious programs utilize JS
obfuscation to reduce the efficacy of existing detection methods,
posing threats to society. This has led to the emergence of JS
deobfuscation technologies.
Currently, there is a growing array of diverse JS deobfuscation
tools that employ various techniques to transform previously
obscure JS code into more understandable formats, thereby
increasing the success rate of software detection of obfuscated
malicious programs. This review focuses on JS deobfuscation
techniques, categorizing them into four directions based on their
underlying approaches: ”symbolic execution,” ”compiler optimization,” ”machine learning,” and ”dynamic scheduling.” While
analyzing their strengths, we also identify their shortcomings,
providing insights and considerations for the future development
of more efficient JS deobfuscation techniques.$$
Submission Number: 7
Loading