Flowtables: Program Skeletal Inversion for Defeat of Interprocedural Analysis with Unique Metamorphism
MIT Lincoln Laboratory Lexington United States
Pagination or Media Count:
Obfuscation, in the most general sense, is widely applicable to intellectual property protection, software tamper resistance and cryptographic algorithms. We have created Flow tables, a LLVM-based obfuscator which aims to protect intellectual property, hardening programs against analysis by relocating the edges of the call graph to a different process. This process temporarily and minimally supplies edges back to the original program only at runtime. We call this transformation program skeletal inversion, and by effectively removing the call graph from a program, we defeat any inter-procedural analyses. In addition, the newly externally malleable program skeleton enables unique metamorphism with the beneficial property of arbitrarily complex functionality transformation.
- Computer Systems Management and Standards