数字化观察网 - 信息化观察网 - 引领行业改革
菜单导航

通付盾2021Q1智能合约安全态势感知报告

作者: 数字化观察网 发布时间: 2021年04月30日 09:50:12

  通付盾区块链安全团队(SharkTeam)专注于区块链和智能合约安全,由拥有多年一线网络安全及区块链实战经验的团队成员组成,精通区块链和智能合约底层原理,具备完善的漏洞挖掘和智能合约审计能力,可提供全面的威胁建模、合约审计、应急响应服务,已帮助多个知名区块链项目发现并修复安全漏洞,致力于保护用户数字资产安全与隐私安全。

  " In Math,We Trust !"

  内容概览

  智能合约这一概念由计算机学家和法学家尼克·萨博在20世纪90年代提出,是区块链至关重要的组成部分,极大地扩展了区块链的应用场景与现实意义,目前区块链与智能合约技术已被广泛地应用于股权众筹、游戏、保险、供应链、物联网等领域。

  但伴随着区块链和智能合约产业的不断发展,随之而来的安全事件也不断爆发。相比于普通的程序而言,智能合约更容易成为攻击者的目标。一方面,智能合约通常用于管理区块链平台上的数字资产,对智能合约的攻击可能会为攻击者带来更高的经济价值;而更为重要的是,引入智能合约的初衷在于借助区块链的特性来保证合约的可信赖,而智能合约漏洞会使合约出现非预期的行为,从而可能使其变为一份“不平等合约”,而失去了智能合约最根本的意义。

  仅2021年第一季度就已发生SushiSwap第二次被攻击、Alpha Finance 与 Cream被攻击、Yearn.finance闪电贷攻击、Furucombo被攻击、PAID Network被攻击、DODO资金池被盗、Roll被攻击、EasyFi密钥泄漏等一系列安全事件,不仅给用户造成了巨大的经济损失,同时也使得智能合约的公平、可信赖受到挑战和质疑。一次又一次的攻击事件表明,智能合约的安全形势已十分严峻,对智能合约的相关安全漏洞开展研究并保障其安全已十分迫切。

  通付盾区块链安全团队(SharkTeam)在第一季度选取了主流的41个区块链项目,并对覆盖高级语言层、虚拟机层、区块链层、业务逻辑层的75项常见安全问题进行了安全扫描,共计发现安全问题2192项。《通付盾2021Q1智能合约安全态势感知报告》(以下简称为“报告”)从漏洞位置分布、危害等级分布和项目类型三个角度进行相关数据分析。

  漏洞位置分布

  智能合约的安全漏洞主要来自于高级语言、虚拟机、区块链和业务逻辑四个层面。

  报告数据显现,目前智能合约安全问题重点集中在高级语言层,共发现1500项问题。具体分布如下:

通付盾2021Q1智能合约安全态势感知报告

高级语言层

  高级语言是开发者进行智能合约编写的工具。以太坊智能合约开发有多种可以使用的高级语言,其中最为常用的是 Solidity语言。高级语言层面为智能合约带来的安全威胁主要有两个原因,一个是高级语言自身设计的缺陷所引入的安全问题,另一个则是开发者在编写高级语言过程中因为忽视代码质量而引入的安全漏洞。报告数据显示,漏洞主要集中在“命名不规范”、“编译器版本不一致”、“Solidity版本过时”等方面,其中“命名不规范”漏洞数量最多,有517个。

通付盾2021Q1智能合约安全态势感知报告

虚拟机层

  虚拟机是编译后的智能合约字节码执行器。以太坊的虚拟机及其字节码的设计规范被定义在以太坊技术黄皮书中,是各种以太坊客户端实现以太坊虚拟机的标准指导手册。虚拟机层面的安全威胁主要有两个方面,一是以太坊黄皮书设计智能合约字节码规范和运行机制本身的一些缺陷,二是不同的以太坊客户端在实现虚拟机的过程中,因没有严格按照手册实现而引入的问题。报告数据显示,问题主要集中在重入漏洞,其中“乱序引起的重入”最多,有62个。

通付盾2021Q1智能合约安全态势感知报告

区块链层

  智能合约依靠区块链来提供去中心化、不可篡改和信任等特性,区块链平台对智能合约的运行也有很多影响。区块链对于智能合约来说,虽然是其安全可信的根基,但区块链本身的很多特性也会给智能合约带来安全风险。报告数据显示,区块链层的漏洞主要集中在“随机性不足”和“时间戳依赖”,其中“时间戳依赖”最多,有17个。

通付盾2021Q1智能合约安全态势感知报告

业务逻辑层

热门标签