论文标题

灵活的软件保护

Flexible Software Protection

论文作者

Broeck, Jens Van den, Coppens, Bart, De Sutter, Bjorn

论文摘要

为了对抗软件逆向工程或篡改,可以使用软件混淆工具。但是,在很大程度上,这些工具是如何部署混淆的。因此,面对许多攻击,他们缺乏韧性和隐形。为了解决这个问题,我们提出了灵活的混淆器的新颖概念,该概念是根据要保护的应用程序中已经存在的数据结构和API来实现保护措施。因此,保护​​措施是针对部署的应用程序量身定制的,从而使其学习较少,并且无法区分。在我们的研究中,我们将不透明谓词的灵活保护概念结合在一起。我们设计了一个接口,以使现有数据结构和API在注射不透明的谓词中重新使用,分析了它们的韧性和隐身,我们实施了概念验证的灵活的混淆器,并在许多现实世界中对其进行了评估。本文为我们的工作,界面的设计,深入的安全性分析以及基于我们的实验评估的可行性报告提供了深入的动机。发现的结果是,灵活的不透明谓词确实提供了强大的韧性和提高的隐身性,但它们的部署成本很高,因此应稀少地使用它们仅保护不主导性能的最安全敏感的代码片段。因此,灵活的混淆在不断的软件保护武器竞赛中提供了昂贵但更耐用的新武器。

To counter software reverse engineering or tampering, software obfuscation tools can be used. However, such tools to a large degree hard-code how the obfuscations are deployed. They hence lack resilience and stealth in the face of many attacks. To counter this problem, we propose the novel concept of flexible obfuscators, which implement protections in terms of data structures and APIs already present in the application to be protected. The protections are hence tailored to the application in which they are deployed, making them less learnable and less distinguishable. In our research, we concretized the flexible protection concept for opaque predicates. We designed an interface to enable the reuse of existing data structures and APIs in injected opaque predicates, we analyzed their resilience and stealth, we implemented a proof-of-concept flexible obfuscator, and we evaluated it on a number of real-world use cases. This paper presents an in-depth motivation for our work, the design of the interface, an in-depth security analysis, and a feasibility report based on our experimental evaluation. The findings are that flexible opaque predicates indeed provide strong resilience and improved stealth, but also that their deployment is costly, and that they should hence be used sparsely to protect only the most security-sensitive code fragments that do not dominate performance. Flexible obfuscation therefor delivers an expensive but also more durable new weapon in the ever ongoing software protection arms race.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源