中文

分析从问答网站复制粘贴脆弱Solidity代码片段的影响

密码学与安全 2024-09-13 v1

摘要

以太坊智能合约是部署在区块链上的可执行程序。一旦部署后便无法更新 due to their inherent immutability。此外,它们常常管理价值数百万美元的资产,使其成为攻击者的诱人目标。由于在问答网站(如Stack Overflow)上发布的脆弱代码被复用引入漏洞,这一问题并非新鲜事。然而,针对已部署智能合约中此类问题的实证研究仍寡言少语。本文针对智能合约开发过程中从问答网站复用脆弱代码的影响进行研究,并提供专为检测完整和不完整智能合约代码中脆弱代码模式而设计的工具。本文提出一种基于代码属性图的数据驱动漏洞检测工具,能够分析代码片段(即不完整代码)以及完整智能合约。我们还提出一种利用模糊散列快速检测已部署智能合约中脆弱代码片段的克隆代码的方法。我们的结果表明,所提出的漏洞搜索和代码克隆检测性能与当前先进技术相当,且适用于代码片段。我们对18,660个代码片段的大规模研究显示,其中4,596个存在漏洞,其中616个可在7,852个已部署智能合约中找到。这些结果凸显了复用脆弱代码片段在当前已部署智能合约中的确切存在问题。

关键词

引用

@article{arxiv.2409.07586,
  title  = {Analyzing the Impact of Copying-and-Pasting Vulnerable Solidity Code Snippets from Question-and-Answer Websites},
  author = {Konrad Weiss and Christof Ferreira Torres and Florian Wendland},
  journal= {arXiv preprint arXiv:2409.07586},
  year   = {2024}
}