Obfuscating Java']Java Programs by Translating Selected Portions of Bytecode to Native Libraries

被引:4
作者
Pizzolotto, Davide [1 ,2 ]
Ceccato, Mariano [1 ]
机构
[1] Fdn Bruno Kessler, Trento, Italy
[2] Univ Trento, Trento, Italy
来源
2018 IEEE 18TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM) | 2018年
关键词
Source code translation; Program transformation; Code obfuscation;
D O I
10.1109/SCAM.2018.00012
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Code obfuscation is a popular approach to turn program comprehension and analysis harder, with the aim of mitigating threats related to malicious reverse engineering and code tampering. However, programming languages that compile to high level bytecode (e.g., Java) can be obfuscated only to a limited extent. In fact, high level bytecode still contains high level relevant information that an attacker might exploit. In order to enable more resilient obfuscations, part of these programs might be implemented with programming languages (e.g., C) that compile to low level machine-dependent code. In fact, machine code contains and leaks less high level information and it enables more resilient obfuscations. In this paper, we present an approach to automatically translate critical sections of high level Java bytecode to C code, so that more effective obfuscations can be resorted to. Moreover, a developer can still work with a single programming language, i.e., Java.
引用
收藏
页码:40 / 49
页数:10
相关论文
共 25 条
  • [1] Anckaert B., 2006, P ACM WORKSH DIG RIG, P47
  • [2] [Anonymous], 2001, LECT NOTES COMPUTER, DOI DOI 10.1007/3-540-44647-8_2
  • [3] Appel A., 2002, PRINCETON U, P2
  • [4] Code Obfuscation Against Symbolic Execution Attacks
    Banescu, Sebastian
    Collberg, Christian
    Ganesh, Vijay
    Newsham, Zack
    Pretschner, Alexander
    [J]. 32ND ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2016), 2016, : 189 - 200
  • [5] Ceccato M., 2017, P 25 IEEE INT C PROG
  • [6] A family of experiments to assess the effectiveness and efficiency of source code obfuscation techniques
    Ceccato, Mariano
    Di Penta, Massimiliano
    Falcarin, Paolo
    Ricca, Filippo
    Torchiano, Marco
    Tonella, Paolo
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2014, 19 (04) : 1040 - 1074
  • [7] Advanced obfuscation techniques for Java']Java bytecode
    Chan, JT
    Yang, W
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2004, 71 (1-2) : 1 - 10
  • [8] Chen TZ, 2006, PROCEEDINGS OF THE 2006 IEEE/ASME INTERNATIONAL CONFERENCE ON MECHATRONIC AND EMBEDDED SYSTEMS AND APPLICATIONS, P26
  • [9] Collberg C., 1998, Conference Record of POPL '98: 25th ACM SIGPLAN-SIGACT. Symposium on Principles of Programming Languages, P184, DOI 10.1145/268946.268962
  • [10] Collberg C., 1997, A Taxonomy of Obfuscating Transformations