区块链安全生存指南-长亭科技+比特大陆-2018-53页_4mb
报告摘要
区块链安全生存指南总结
核心内容
区块链技术是一种全新的分布式架构与计算范式,融合了密码学、数学、计算机科学、网络科学、社会学等多门学科。其核心特性包括同步性、可信任性和可溯源性,这些特性使得区块链在多个行业领域具有广泛的应用潜力。然而,随着区块链的广泛应用,其各层面的安全问题也日益突出。
区块链安全问题涵盖多个层面,包括应用层、智能合约层、底层结构层、基础设施层以及安全意识与管理。这些层面的安全隐患相互关联,构成了一个“链条”式的安全体系。因此,确保区块链安全需要从各个层面入手,采取综合措施。
主要观点
-
区块链安全问题的复杂性:
- 区块链安全涉及多个层面,从网络接口、权限管理、智能合约逻辑到云平台运行安全,每个环节都可能存在风险。
- 区块链的“无墙”特性使其更容易受到攻击,但同时也意味着需要更全面的防护机制。
-
安全威胁的多样性:
- 应用层攻击:包括交易所服务器未授权访问、DDoS攻击、员工主机安全问题、恶意程序感染等,攻击者往往利用网络漏洞、权限漏洞或社会工程学手段实施攻击。
- 智能合约层攻击:如重入攻击、未授权访问、整型溢出、时间戳依赖等,这些攻击多源于合约逻辑漏洞或代码缺陷。
- 底层结构与基础设施层攻击:涉及矿机、矿池、云算力平台等,攻击者可能通过操控节点或平台权限,影响整个区块链的运行。
-
安全意识与管理的重要性:
- 安全意识的缺乏和管理的缺失是区块链安全问题的重要诱因。
- 社会工程学攻击、内部人员泄密、第三方风险控制失败等问题表明,区块链安全不仅仅是技术问题,也是管理问题。
关键信息
应用层安全问题
- 交易所服务器未授权访问:攻击者通过获取服务器权限,修改交易数据或盗取资金,造成交易所重大损失。例如Gatecoin、Youbit、BitMarket等交易所都曾遭遇此类攻击。
- DDoS攻击:由于区块链行业的高价值特性,交易所成为DDoS攻击的常见目标。例如Bitfinex在2017年多次遭受攻击。
- 员工主机安全问题:攻击者通过获取员工电脑权限,间接获取交易所敏感数据。例如Mt.Gox因审计人员电脑被入侵,导致大量用户数据泄露。
- 恶意程序感染:如Mt.Gox在2014年因密钥文件被木马感染,导致大量资产流失。此外,Tether Token被盗事件也揭示了恶意软件对区块链资产的影响。
智能合约层安全问题
- 重入攻击:攻击者通过构造恶意合约,反复调用目标合约的函数,造成资金被多次提取。The DAO事件是重入攻击的典型案例。
- 未授权访问攻击:由于未对函数进行充分权限控制,攻击者可以访问或修改不该访问的函数或变量。Parity钱包事件中,攻击者通过调用未初始化的函数篡改钱包所有权。
- 整型溢出与下溢:由于Solidity语言的特性,整型溢出和下溢可能引发严重问题,如代币余额异常。
- 时间戳依赖:矿工可以操纵区块时间戳,因此任何依赖时间戳的合约逻辑都应谨慎设计。
- 交易顺序依赖:攻击者可能通过操纵交易顺序,优先执行某些交易,从而影响市场公平性。
底层结构与基础设施层安全问题
- 矿机与矿池安全:矿机是区块链算力的主要来源,其权限和网络接口的安全性至关重要。矿池和云算力平台同样面临安全威胁。
- 云服务商安全问题:云算力平台需要保证运行稳定与安全,防止因平台漏洞导致资产损失。
安全意识与管理问题
- 社会工程学攻击:攻击者通过钓鱼、伪装等方式获取用户敏感信息,如密码、私钥等。
- 内部攻击:员工或内部人员可能因权限滥用或疏忽导致安全事件。
- 第三方风险控制失败:依赖第三方服务时,需确保其安全性,否则可能引发连锁反应。
- 钓鱼攻击:通过伪造链接或邮件获取用户信息,如Bitcoinica事件中,攻击者通过伪造邮件获取云平台登录信息。
应对策略
区块链安全应贯穿于整个安全开发生命周期,包括以下环节:
- 培训:提升开发人员和用户的安全意识,了解常见攻击方式和防范手段。
- 需求分析:在项目初期明确安全需求,如权限管理、合约逻辑等。
- 设计:采用安全架构设计,确保各模块之间权限隔离,防止越权操作。
- 实现:在代码实现阶段,采用安全编码实践,如避免重入攻击、防止整型溢出等。
- 验证:对智能合约进行安全审计,确保其逻辑无漏洞。
- 发布与响应:在部署后,持续监控异常交易,及时响应安全事件。
结论
区块链安全是一个多维度、多层次的问题,需要从技术、管理、意识等多个方面入手。随着区块链技术的不断发展,安全问题也将更加复杂。因此,区块链从业者应建立全面的安全防护体系,提升安全意识,加强技术审查与管理控制,以应对日益增长的攻击风险。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载