A novel obfuscation: class hierarchy flattening

  • Authors:
  • Christophe Foket;Bjorn De Sutter;Bart Coppens;Koen De Bosschere

  • Affiliations:
  • Computer Systems Lab, Electronics and Information Systems Department, Ghent University, Ghent, Belgium;Computer Systems Lab, Electronics and Information Systems Department, Ghent University, Ghent, Belgium;Computer Systems Lab, Electronics and Information Systems Department, Ghent University, Ghent, Belgium;Computer Systems Lab, Electronics and Information Systems Department, Ghent University, Ghent, Belgium

  • Venue:
  • FPS'12 Proceedings of the 5th international conference on Foundations and Practice of Security
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents class hierarchy flattening, a novel obfuscation technique for programs written in object-oriented, managed programming languages. Class hierarchy flattening strives for maximally removing the inheritance relations from object-oriented programs, thus hiding the overall design of the program from reverse engineers and other attackers. We evaluate the potential of class hierarchy flattening by means of a fully automated prototype tool for Java bytecode. For real-life programs from the DaCapo benchmark suite, we demonstrate that the transformation effectively hinders both human and tool analyses, and that it does so at limited overheads.