Protecting Software through Obfuscation: Can It Keep Pace with Progress in Code Analysis?

S. Schrittwieser, S. Katzenbeisser, J. Kinder, G. Merzdovnik, E. Weippl:
"Protecting Software through Obfuscation: Can It Keep Pace with Progress in Code Analysis?";
Acm Computing Surveys,49(2016), 1.

Zusätzliche Informationen


Abstract:


Software obfuscation has always been a controversially discussed research area. While theoretical results indicate that provably secure obfuscation in general is impossible, its widespread application in malware and commercial software shows that it is nevertheless popular in practice. Still, it remains largely unexplored to what extent today´s software obfuscations keep up with state-of-the-art code analysis and where we stand in the arms race between software developers and code analysts. The main goal of this survey is to analyze the effectiveness of different classes of software obfuscation against the continuously improving deobfuscation techniques and off-the-shelf code analysis tools.

The answer very much depends on the goals of the analyst and the available resources. On the one hand, many forms of lightweight static analysis have difficulties with even basic obfuscation schemes, which explains the unbroken popularity of obfuscation among malware writers. On the other hand, more expensive analysis techniques, in particular when used interactively by a human analyst, can easily defeat many obfuscations. As a result, software obfuscation for the purpose of intellectual property protection remains highly challenging.