The last years have seen an increase in Man-at-the-End (MATE) attacks against software applications, both in number and severity. However, software protection, which aims at mitigating MATE attacks, is dominated by fuzzy concepts and security-through-obscurity. This paper presents a rationale for adopting and standardizing the protection of software as a risk management process according to the NIST SP800-39 approach. We examine the relevant constructs, models, and methods needed for formalizing and automating the activities in this process in the context of MATE software protection. We highlight the open issues that the research community still has to address. We discuss the benefits that such an approach can bring to all stakeholders. In addition, we present a Proof of Concept (PoC) decision support system that instantiates many of the discussed construct, models, and methods and automates many activities in the risk analysis methodology for the protection of software. Despite being a prototype, the PoC's validation with industry experts indicated that several aspects of the proposed risk management process can already be formalized and automated with our existing toolbox and that it can actually assist decision-making in industrially relevant settings.
翻译:近年来,Man-at-the-End (MATE)攻击软件应用的数量和严重程度都有所增加。然而,软件保护,旨在减轻MATE攻击,仍被模糊的概念和基于安全性的隐蔽性所主导。本文根据NIST SP800-39的方法,提出将软件保护作为一个风险管理过程标准化的理由。我们研究了在MATE软件保护的环境下需要形式化和自动化活动的相关建构、模型和方法。我们强调了研究界还需要解决的问题。我们讨论了这种方法对所有利益相关者带来的好处。此外,我们展示了一个概念证明(Proof of Concept, PoC)的决策支持系统,它实例化了讨论的许多建构、模型和方法,并自动化了许多关于软件保护的风险分析方法的活动。尽管它只是一个原型。但是,PoC与业内专家的验证表明,所提出的风险管理过程的多个方面已经可以用我们现有的工具箱形式化和自动化,并且它实际上可以在工业相关的环境下辅助决策。