Smart contracts are self-enforcing agreements that are employed to exchange assets without the approval of trusted third parties. This feature has encouraged various sectors to make use of smart contracts when transacting. Experience shows that many deployed contracts are vulnerable to exploitation due to their poor design, which allows attackers to steal valuable assets from the involved parties. Therefore, an assessment approach that allows developers to recognise the consequences of deploying vulnerable contracts is needed. In this paper, we propose a debt-aware approach for assessing security design vulnerabilities in smart contracts. Our assessment approach involves two main steps: (i) identification of design vulnerabilities using security analysis techniques and (ii) an estimation of the ramifications of the identified vulnerabilities leveraging the technical debt metaphor, its principal and interest. We use examples of vulnerable contracts to demonstrate the applicability of our approach. The results show that our assessment approach increases the visibility of security design issues. It also allows developers to concentrate on resolving smart contract vulnerabilities through technical debt impact analysis and prioritisation. Developers can use our approach to inform the design of more secure contracts and for reducing unintentional debts caused by a lack of awareness of security issues.
翻译:经验显示,许多已部署的合同由于设计不当而容易被利用,因为其设计不当,攻击者可以从所涉各方窃取宝贵的资产。因此,需要一种评估办法,使开发商能够认识到部署脆弱合同的后果。在本文件中,我们提议一种债务意识办法,用以评估智能合同中的安全设计弱点。我们的评估办法涉及两个主要步骤:(一) 利用安全分析技术查明设计弱点,以及(二) 估计已查明的弱点对利用技术债务隐喻、其主要和利害关系的影响。我们使用脆弱合同的例子来证明我们的方法的可适用性。结果显示,我们的评估办法提高了安全设计问题的能见度。还使开发商能够通过技术债务影响分析和优先化,集中精力解决智能合同脆弱性问题。开发商可以使用我们的办法,为设计更安全的合同提供信息,并减少因安全问题缺乏认识而造成的无意债务。