2018-区块链安全生存指南_53页-23mb
报告摘要
区块链安全生存指南总结
核心内容
区块链技术自2008年比特币论文发布以来,已发展成为一种全新的分布式架构与计算范式。它融合了密码学、数学、计算机科学、网络科学、社会学等多门学科,具有同步性、可信任性和可溯源性等特征。尽管区块链技术在数字货币和非数字货币领域都有广泛应用,但其安全性仍面临诸多挑战,攻击者利用区块链的特性,如智能合约的不可篡改性,实施各种攻击手段,造成巨大损失。
主要观点
- 区块链技术的核心在于其分布式结构、点对点网络、加密算法和智能合约的结合。
- 区块链的同步性、可信任性和可溯源性使其在金融、数据存证、底层服务等领域具有广阔的应用前景。
- 区块链行业面临的安全威胁主要来自应用层、智能合约层、底层结构层和基础设施层,攻击者利用这些层面的漏洞实施攻击。
- 区块链的“无墙”特性意味着其安全防护不能依赖传统边界,需从技术原理和行业实践出发,建立全链条的安全体系。
关键信息
一、行业划分与安全诉求
区块链行业主要分为数字货币和技术应用两大类。
1. 数字货币
- 矿力:矿机、矿池和云算力是主要的挖矿方式。安全诉求包括网络接口安全、矿机权限安全和平台权限安全。
- 钱包:
- 热钱包:如Electrum、imToken,安全诉求为私钥安全和智能合约零漏洞。
- 冷钱包:如Ledger Nano S、Keepkey、Trezor,安全诉求为硬件安全性。
- 中心化钱包:如Coinbase、BitPay,安全诉求为平台安全和权限管理。
- 交易:
- 数字货币交易所:安全诉求为保护平台权限和用户账户安全,防御Web端攻击和内部泄露。
- 实时跨境支付:如Ripple、Circle,安全诉求为软件无漏洞和用户账号安全。
2. 技术应用
- 金融:共享经济、资产交易、融资(如ICO)。
- 数据存证:资产管理、个体信息存储。
- 底层服务:解决方案、BaaS、开发基础。
二、区块链安全攻击实例
1. 应用层攻击
-
交易所服务器未授权访问:
- Gatecoin热钱包被盗,损失约$2.14M。
- Youbit被攻击,损失约$5.3M。
- BitMarket被攻击,损失620 BTC。
- Tether Token被盗,影响比特币价格。
- BitQuick成功防御DDoS攻击。
-
交易所DDoS攻击:
- 多个交易所如Bter、BtcTrade、OKCoin、FXBTC等在2013年遭受攻击。
- Bitfinex在2017年遭受三次DDoS攻击,影响其服务和API。
-
员工主机安全问题:
- Mt.Gox被攻击,导致60,000用户的敏感信息泄露。
- Bitcoinica通过钓鱼攻击获取云服务器权限,盗取比特币。
-
恶意程序感染:
- Mt.Gox因私钥明文存储被木马感染,导致大量资产流失。
- Tether被盗后,其公司采取硬分叉和客户端更新措施应对。
2. 智能合约层攻击
-
重入攻击:
- The DAO被攻击事件:攻击者通过构造恶意合约,利用重入漏洞提取约$60M。
- Parity钱包被盗事件:攻击者通过未授权访问和合约越权漏洞盗取约$30.5M。
- Parity钱包冻结事件:攻击者误操作导致合约自毁,冻结约$278M资产。
-
未授权访问攻击:
- 由于合约函数可见性设置不当,导致攻击者能够访问和修改不该访问的函数和变量。
3. Solidity开发安全
-
竞争条件:
- 重入攻击和跨函数竞争条件是常见的安全漏洞。
- 防范措施包括:在调用外部函数前完成内部状态更新,使用互斥变量。
-
交易顺序依赖:
- 攻击者可以操控同一区块中的交易顺序,实施恶意行为。
- 防范方法包括使用批量拍卖机制或提前提交机制。
-
时间戳依赖:
- 矿工可以操控区块时间戳,导致程序逻辑错误。
- 需要对时间戳的使用进行严格验证。
-
整型上溢和下溢:
- 在代币转账等操作中,若未检查整型溢出,可能导致严重后果。
- 安全建议包括:检查状态变化是否超出uint类型范围,防止意外状态重置。
三、应对策略
区块链安全应贯穿整个开发生命周期,包括以下环节:
- 培训:提升开发者的安全意识和技能。
- 需求:明确安全目标和潜在威胁。
- 设计:在架构设计中考虑安全性。
- 实现:采用安全编码实践。
- 验证:进行安全审计和测试。
- 发布与响应:建立安全响应机制,及时修复漏洞。
四、总结
区块链安全是一个系统性工程,涉及多个层面,包括应用层、智能合约层、底层结构层和基础设施层。安全问题往往源于开发不规范、权限管理不完善、缺乏安全意识以及攻击者利用漏洞进行攻击。因此,区块链行业需要加强安全培训、优化开发流程、完善权限控制,并建立完善的攻击响应机制,以保障整个生态系统的安全稳定。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载