The University of Arizona
banner image

  Software Protection through Dynamic Code Mutation

Matias Madou[1],   Bertrand Anckaert[1],   Patrick Moseley[2],   Saumya Debray[2],   Bjorn De Sutter[1],   Koen De Bosschere[1]
[1] Department of Electronics and Information Systems
Ghent University
B-9000 Ghent, Belgium

[2] Department of Computer Science
University of Arizona
Tucson, AZ 85721, U.S.A.

 

Abstract
Reverse engineering of executable programs, by disassembling them and then using program analyses to recover high level semantic information, plays an important role in attacks against software systems, and can facilitate software piracy. This paper introduces a novel technique to complicate reverse engineering. The idea is to change the program code repeatedly as it executes, thereby thwarting correct disassembly. The technique can be made as secure as the least secure component of opaque variables and pseudorandom number generators.