Partial Evaluation of String Obfuscations for Java Malware Detection

Chawdhary, Aziem, King, Andy, Singh, Ranjeet (2017) Partial Evaluation of String Obfuscations for Java Malware Detection. Formal Aspects of Computing, 29 (1). ISSN 0934-5043. E-ISSN 1433-299X. (doi:10.1007/s00165-016-0357-3)


The fact that Java is platform independent gives hackers the opportunity to write exploits that can target users on any platform, which has a JVM implementation. Metasploit is a well-known source of Javaexploits and to circumvent detection by Anti Virus (AV) software, obfuscation techniques are routinely applied to make an exploit more difficult to recognise. Popular obfuscation techniques for Java include stringobfuscation and applying reflection to hide method calls; two techniques that can either be used together or independently. This paper shows how to apply partial evaluation to remove these obfuscations and thereby improve AV matching. The paper presents a partial evaluator for Jimple, which is an intermediate language for JVM bytecode designed for optimisation and program analysis, and demonstrates how partially evaluated Jimple code, when transformed back into Java, improves the detection rates of a number of commercial AV products.

Item Type: Article
DOI/Identification number: 10.1007/s00165-016-0357-3
Subjects: Q Science
Q Science > QA Mathematics (inc Computing science)
Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Andy King
Date Deposited: 14 Jan 2016 14:41 UTC
Last Modified: 29 May 2019 16:52 UTC
Resource URI: (The current URI for this page, for reference purposes)
  • Depositors only (login required):


Downloads per month over past year