Flowtables: Program Skeletal Inversion for Defeat of Interprocedural Analysis with Unique Metamorphism
Abstract
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.
Document Details
- Document Type
- Technical Report
- Publication Date
- Aug 28, 2015
- Accession Number
- AD1034702
Entities
People
- Graham Baker
- Jeremy Blackthorne
- Luke Jones
- Ryan Whelan
Organizations
- MIT Lincoln Laboratory