Automatic Generation of Embedded Interpreters for Software Protection
Small Business Information
9971 Valley View Road, Eden Prairie, MN, 55344
AbstractWe begin with the observation that table interpretation, or embedded interpreters, is an effective technique for software reverse engineering protection. The scientific literature does not indicate any attempt to address the technical problems required toimplement table interpretation as a general automatic software protection technique. We propose an architecture that is capable of automatically generating a specification of an abstract machine, randomly permuted along several axes. Preexisting binaryprograms are then translated to programs for the abstract machine, either by a hand coded translator, or by an automatically generated translator. We propose to build a hand-coded embedded interpreter implementation as a proof of concept of thefeasibility of the approach, and as a demonstration of the runtime slowdown involved. This architecture will allow engineers to automatically employ a technique that is recognized as highly effective by the obfuscation community. The end product will bean automatic obfuscation module that can automatically perform the transformation, subject to as much control over the parameterization of the embedded interpreter as the user desires.
* information listed above is at the time of submission.