和数软件:2018 年区块链技术安全服务行业报告


和数软件:2018 年区块链技术安全服务行业报告


谈到区块链安全,和数软件区块链技术实验室认为行业处于"薛定谔的"中间态。攻击事件层出不穷、安防等级难以量化、风控权责不易划分……区块链生态参与者似乎一直在"成功被黑"和"还没出事"间徘徊。

行业中既出现过颇具影响的风险事件:

2016年6月,以太坊最大众筹项目The DAO被攻击,黑客获得超过360万个ETH(当时价值约 6000 万美元),后直接导致以太坊硬分叉。

2017年7月,以太坊多重签名钱包Parity出现漏洞,攻击者从多重签名合约中窃取超过 15 万个 ETH(当时价值约 3000 万美元)。

2018年1月,日本大型数字货币交易所Coincheck遭黑客攻击,平台上价值超过5.2亿美元的 NEM(新经币)被非法转移。

近半年,"防守一方"也积累了不少"成功案例":

2018 年3月 ,慢雾安全团队披露了一起由于以太坊生态缺陷导致的亿级数字资产盗窃事件:攻击者利用以太坊节点 Geth/ParityRPCAPI 鉴权缺陷,恶意调用 eth_sendTransaction,盗取数字资产,持续时达两年。

2018 年5月,360发现了EOS区块链系统在解析智能合约 WASM 文件时的一个越界缓冲区溢出漏洞,验证了该漏洞的完整攻击链并进行披露,防止黑客最终控制整个 EOS 网络。

2018年上半年,派盾PeckShield陆续曝出美链 BEC、SMT、EDU 等能合约的重大安全漏洞,并持续发布有关公链与交易所的各类攻击预警。

据BCSEC统计,自2011年到2018年7月,全球范围内因区块链安全事件造成的损失近 30 亿美元。


和数软件:2018 年区块链技术安全服务行业报告


站在区块链技术架构层级的角度,风险事故最频发的受攻击面依次是业务层(71.17%)、合约层(20.72%)、共识层(4.51%)和网络层(3.6%)。从受攻击点来看,交易平台(34%)、智能合约(20%)和普通用户(19%)成为核心的受害人。


和数软件:2018 年区块链技术安全服务行业报告


区块链真的比"传统"互联网更安全吗?

去中心化系统有经济机制加防,攻击目标分散;中心化系统经历过更严谨的攻防测试,安保级别更高。两者似乎很难横向比较。

单聊区块链技术,其安全的边界和维度该如何定义?安全服务企业又能向哪些客户提供何种防护?

在区块链生态中,风险是多点、复合的,安全是全流程、多环节的,而技术安全只是其中的一个"组件"。技术相关的风险之外,还有操作风险、道德风险、投机风险、政策风险等,均不在安全服务公司的保护范围内,故不纳入本次的讨论范围。

在本文中,和数软件将按"事件回顾-攻击方式-防御策略"的逻辑顺序,分析交易所、智能合约、钱包、矿池这些业务场景对应的区块链技术安全问题,并探讨区块链安全服务行业的概况与企业案例。

不同业务场景下的区块链技术安全

在区块链技术安全范畴中,既有"传统"互联网世界中存在的漏洞(如 SQL 注入、拒绝服务等),也包含区块链独有的风险点(如智能合约漏洞)。为方便 C 端用户理解,我们在分类时选择站在安全服务公司的视角,即按行业需求(业务场景和攻击点)将区块链安全分类。

数字货币交易所、智能合约、钱包、矿池等场景的背后对应着巨额资产,吸引了潜在的攻击者,也是安全服务公司的重点保护对象。

一、 数字货币交易所安全性分析

据 CoinMarketCap 数据显示,截至 2018 年 7 月 27 日,全球有 1690 种虚拟货币在"二级市场"交易,有 12137 个虚拟货币交易市场在运营。其中,以币安、Bitfinex、OKEx、火币等为代表的中心化数字货币交易所,既是数字货币交易流通和价格确定的场所,也是财富的汇聚中心。


和数软件:2018 年区块链技术安全服务行业报告


然而,对于中心化数字货币交易所来说,其精力重心放在盈利、品牌与生态布局,具体体现在流量获取、交易深度和产业布局。安防与风控更像是效果不好量化的成本项,因此,被重视程度和投入比例还远远不够。

(一)数字货币交易所安全事件回顾

从2011年6月至2018年6月,发生在数字货币交易所的安全事故从未停止。


和数软件:2018 年区块链技术安全服务行业报告


从表 1 可见,数字货币交易所的安全问题已成为制约其发展的重大隐患。

(二)数字货币交易所存在的安全漏洞

目前中心化数字货币交易所最大的安全隐患在于其薄弱的线上防护体系。

在传统金融市场中,证券交易所、期货交易所等除了线上防护体系,还受系统性安全网络(比如局域网、离线网络)保障,再加上严格的法律监管条文和国家级的追查体系,都抬升了黑客的攻击成本。

中心化数字货币交易所集成了多个角色功能(如获客、交易、清结算等),却只有一层线上防护体系,一旦被黑客突破,几乎毫无还手之力。

通过对表 1 中安全事故的分析,Odaily星球日报发现,中心化数字货币交易所的线上防护体系在网络带宽、账户体系、支付体系和业务撮合系统等多个环节存在安全隐患。

1. 网络带宽

网络带宽易受拒绝服务攻击(Distributed Denial-of-service Attack,DDoS)。DDoS 攻击亦称洪水攻击,是黑客通过傀儡机生成大量"合法"请求或模拟多个用户不停访问、占用网络资源的网络攻击手法。其目的在于使目标网络或系统资源耗尽,直至服务中断,导致正常用户无法访问。若数字货币交易所遭遇 DDoS 攻击,不仅交易所将蒙受巨大损失,数字货币交易量也会大大减少,间接影响数字货币价格。

2. 交易所账户体系

黑客通过钓鱼网站、终端逆向破解、植入木马、欺诈、穷举、后门、撞库等手段对交易所账户体系进行盗号,转移用户的数字资产。在 Binance 事件里,官方说法是黑客利用钓鱼网站劫持了用户登录信息,再创建了用于交易的 API 密钥,并在 2018 年 3 月 7 日使用密钥在 VAI/BTC 市场中进行大笔订单交易从而推高 VIA 币价,之后将 VIA 转移到 31 个账户,待最高价时卖出,完成资产的转移。

3. 交易所支付体系

为防止黑客攻击,中心化交易所通常会将 95% 以上的资产存储在冷钱包中。但为维持支付等日常功能的正常使用,热钱包必不可少。有关热钱包的安全风险将在下文数字钱包业务场景中具体展开。

4. 交易所业务撮合系统

交易所外部业务接口以及后台管理系统并非完美,或存在业务逻辑漏洞。黑客可通过攻击这些逻辑漏洞来实施非法操作,比如盗取用户信息数据、卖出用户资产。

(三)数字货币交易所如何应对安全漏洞

剑桥大学 Judge 商学院发布的 《2017 Global Cryptocurrency Benchmarking Study》 曾对数字货币交易所安全问题进行研究,并提出相关安全系统架构方案,主要包括"冷热钱包"隔离、多重签名、两步验证、密钥保存机制、外部密码审核机制等,对于数字货币交易所的安全防护有一定的借鉴意义。

1. 组建安全团队

交易所安全团队需占团队总人数的 13%,需花费 17% 的预算用于保证交易所安全运行,并建立完善的安全保障机制。Odaily星球日报在采访安全链SECC时,发起人钱科铭也建议各交易所建立自己的安全团队,或至少要有一位足够了解交易所风险点的 CTO。

2. "冷热钱包"隔离

采用"冷热隔离"机制,将 95% 的币值储存在冷钱包中,只预留 5% 用于提现等,以此降低可能损失的金额。

3. 独立第三方审查

聘用外部安全团队,就外部密码审核、多重签名钱包、两步验证等方面展开合作。

4. 进行多重测试

智能合约的测试不同于普通软件的测试,合约的并发能力测试需要得到足够的重视。同时,由于智能合约的语言在不断迭代,也要加强复用代码的管理。

二、 智能合约安全性分析

传统的合约需要有独立于交易双方的第三方存在,这不可避免地造成交易效率低、成本高。智能合约则利用区块链点对点的技术特性,允许在没有第三方的情况下进行可信、可追踪的交易。

然而与传统程序一样,智能合约也存在安全漏洞。虽然以太坊智能合约提升了交易的可信性,但一旦部署就无法修改的特性为攻击者创造了机会。从 2016 年 6 月 The DAO 被盗取 6000 万美元,到 Beautychain 价值归零、Smartmesh 出现类似 BEC 的重大溢出漏洞,再到近期 EOS 漏洞允许恶意合约穿透虚拟机、危害矿工节点……愈加频繁的智能合约漏洞将区块链安全推向风口浪尖。

据 BCSEC 数据,2018 年,区块链行业因智能合约漏洞而引发的经济损失累计为 11.6 亿美元,占区块链安全事故的 54.66%,已超过交易平台事故(37.68%),成为区块链安全的重灾区。


和数软件:2018 年区块链技术安全服务行业报告


(一)智能合约安全事件回顾


和数软件:2018 年区块链技术安全服务行业报告


(二)智能合约存在的安全隐患

智能合约以数字形式来定义承诺。如果在创建过程中不够严谨,容易留下隐患。

和数区块链技术实验室认为智能合约的安全隐患主要包含三个方面:

智能合约代码中是否有常见的安全漏洞;

智能合约是否可信;

智能合约是否符合一定规范和流程。

360 代码卫士团队盘点的目前常见的智能合约安全漏洞主要包括整数溢出、越权访问、拒绝服务、逻辑错误、信息泄露和函数误用等漏洞:


和数软件:2018 年区块链技术安全服务行业报告


由于智能合约的基石是代码,伴随代码技术的演化,未来将出现更多的安全隐患。

(三)智能合约安全漏洞如何应对

1.代码安全审计和升级

在智能合约上线之前,交由专业机构团队对其进行全面深入的代码安全审计,尽可能的消除漏洞,降低安全风险。并在任何新的攻击手法被发现后及时的测试和更新。

2.设置应急响应

智能合约上线后,组建应急响应团队,设置应急响应机制,比如监控智能合约有没有异常等交易情况。

3.开发验证工具

开发验证工具包括:一是开发证明辅助生成⼯具,提⾼形式化验证的⾃动化⽔平。二是在区块链共识协议中引⼊必要的形式化证明验证流程。三是支持链下的证明检查流程等。

4.漏洞奖励机制

如果智能合约开发者定期发布一些漏洞奖励计划,也将促使区块链行业形成一个健康的生态环境。

三、 数字货币钱包安全性分析

由于历史数据、网络同步和使用不便等原因,由个人运行维护庞大的比特币客户端来管理资产并不现实。越来越多的数字货币资产管理厂商开发了钱包应用或硬件。在数字资产相关各业态中,数字货币钱包作为与数字货币共生的存储管理工具,是安全防护最为关键的一环。

钱包也往往是区块链全产业链中最重视安全的,毕竟对于钱包来说,兼顾安全和体验是核心竞争力。

在区块链安全领域,安全服务企业各有切入点。比如,CertiK 擅长形式化验证;派盾PeckShield 、慢雾科技注重区块链生态安全性和隐私性;和数UTON、库神、碧盾、Bepal币派等则专于私钥安全存储方案;安全链SECC的重心在于建立全球社群,吸引更多极客加入社区。


分享到:


相關文章: