freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

企业级区块链安全的「入门笔记」
2020-07-06 16:50:41
所属地 北京

​敲响企业级区块链安全的“警钟”

区块链的安全问题存在已久:BTG 遭到双花攻击、BEC 智能合约出现重大漏洞、币安遭到黑客攻击,OKex 网站出现漏洞......

在这个区块链技术即将落地生根遍地开花的前夜,一个随意的安全漏洞,可能造成的用户损失就数以亿计,安全问题依然困扰着整个行业。

企业级区块链常见的“四大安全风险”

1.基础层风险

(1)存储计算设施是区块链系统和应用的载体,存在未授权访问等风险。

(2)对等网络是区块链运行的关键,存在多方面的网络和通信安全风险。

2.核心层风险

(1)共识机制算法设计不完善,可能导致信任体系崩溃。

(2)密码算法面对算力增强和新计算模式挑战,未来面临多方面的破解风险。

(3)智能合约运行环境漏洞,可能影响合约的安全公正执行。

(4)账本记录公开易获取,存在用户隐私泄露风险。

3.服务层和用户层风险

(1)接入及节点管理机制不安全,可能造成联盟内数据的泄露。

(2)账本应用和业务功能逻辑设计和实现漏洞,可能影响业务安全运行。

(3)用户和管理功能负责对区块链用户、平台用户及平台功能的管理,主要面临的风险包括身份伪造、权限设置不当、权限提升、操作不当等。

4.跨层功能风险

跨层功能存在资源和业务生命周期管理手段不足等风险,此外跨链服务管理需考虑跨链数据泄露等风险。

四个层面,打造企业级区块链安全解决方案

近日,绿盟科技、北京航空航天大学、中国移动研究院联合推出的《企业级区块链安全白皮书》正式发布。白皮书重点提出了三层四阶段的企业级区块链安全解决方案,根据区块链的技术栈,可以将解决方案从纵向划分为基础层安全、核心层安全,以及用户和服务层安全;根据安全防护的生命周期,可分为开发交付、安全防护、异常检测、响应恢复,以及全阶段的安全服务。

1594025314.png!small

图1企业级区块链安全解决方案

基础层安全

基础层安全包括容器安全、网络安全、密钥安全和终端安全。

1、容器安全

容器技术在区块链、DevOps、微服务等领域有着广泛的应用。其中,Hyperledger Fabric便是基于容器技术部署,其智能合约运行在容器上,所以容器安全性决定了智能合约的运行安全,甚至影响区块链节点的安全性。

2、网络安全

企业级区块链应用是典型的分布式部署,通过计算机网络互联,所以会面临各种传统的网络安全风险,需要应用安全域划分、访问控制、流量清洗、入侵检测、恶意代码防护、VPN接入等传统网络安全防护措施。此外,联盟链节点之间通过点对点网络互联,所部署的网络安全方案也需包含相应的Overlay网络支持。

3、密钥安全

企业级区块链中的密钥分配和管理非常重要。密钥的泄露不仅会导致隐私加密数据的泄露,攻击者还可以伪造虚假交易,对区块链系统的正常运转进行破坏。因此,需要对密钥进行安全存储,通常将其存储于密钥安全模块(HSM)中。

4、终端安全

终端安全主要包括区块链节点的安全防护,包括日常的清理工作,如操作系统安全配置与加固、可信计算栈、安装杀毒软件或EDR软件;运行时的监控,包括异常行为检测、内存监控、逃逸检测;以及发现恶意攻击时的响应处置。

核心层安全

核心层安全包括跨链安全、智能合约安全、隐私保护和数据治理。

1、跨链安全

跨链旨在多个区块链之间进行数据交换,但却存在公证人共谋、侧链验证主链交易、交易通道拒绝服务、长距离攻击、日蚀攻击、区块肿胀、跨链重放等需要解决的安全问题。

Hyperledger Fabric中通过引入参与者身份管理机制来管理并认证系统的所有参与者,其中就包含访问控制功能,通过给特定的参与者授权来进行相应的操作,赋予节点不同链以不同的权限,加强跨链数据的安全性,避免越权访问和重要数据的泄露。

设立确定性的检查点是应对长距离攻击比较好的方法之一。此外要注意跨链时,需要考虑合规性要求,确定不同区块链的安全等级,以防止高安全等级链的数据流入低安全等级链。

2、智能合约安全

大部分区块链相关的漏洞来自智能合约,不安全的代码或逻辑漏洞,都会给企业级区块链业务带来严重的安全风险。因此,应严格按照安全设计规范进行智能合约的设计,在智能合约上线前对其进行安全审计,规避潜在的安全风险。

3、隐私保护

在区块链应用中,需要对交易者的真实身份、ID账号、IP地址等进行身份隐私保护,可基于混淆机制实现,混淆多个交易输入、输出的地址信息,在实现交易验证的同时实现交易内容与身份的不可关联。同时,可基于环签名的密码学方案,实现交易身份的匿名性与隐私保护。为了实现更高级别的隐私保护,可基于前沿的零知识证明技术,在无需透露相关交易方的隐私信息情况下保证交易的合法运行与验证。一般来说,三种相关技术的隐私保护能力越强,在区块链运行的时间开销也将越大,实际应用中需根据具体场景进行技术选取。

对于交易内容、账本数据的隐私保护,通过加密授权访问机制实现更细粒度的交易身份数据访问控制;通过私有交易机制、通道机制实现联盟链不同组织的账本数据隔离,交易广播和验证的隔离。在智能合约执行两方或两方以上的计算任务时,可结合“去中心化”的安全多方计算技术,在获得可靠的计算结果同时,保证交易方的原始数据与隐私不会在计算过程暴露与泄露。

4、数据治理

数据治理要求区块链信息服务商能提供数据删除的能力。例如,可定期对本地账本制作镜像,实现便利的回滚机制,在统一共识下,可以指定镜像标签进行回滚。

用户和服务层安全

用户和服务层安全包括Web安全、业务安全、API安全、认证和身份管理。

1、Web安全

企业级区块链应用包括面向用户的前端Web站点,所以需要对常见的各类Web攻击进行防护,如SQL注入、跨站脚本攻击、跨站请求伪造攻击等。当前实现Web安全的手段主要包括部署在服务器端的Web应用防火墙和RASP技术,以及部署在客户端浏览器策略的CSP技术等。

2、业务安全

不同行业所面临的业务风险不同,企业级区块链服务提供商应考虑业务场景相应的风险,构建业务风控系统,实现业务安全。

3、API安全

应用程序编程接口(API)的大量使用奠定了企业数字化转型的基础,在程序化驱动的区块链应用中也被广泛使用。因而,需要事前对API设计进行安全评估,始终对API调用进行管理和监控,必须确保API不被滥用或非授权调用。

4、认证和身份管理

在企业级区块链应用中,每个背书节点、机构记账节点和机构管理节点都是经过认证中心CA认证的,正是预先的身份认证机制简化了区块链的共识机制,给高吞吐、低延时的应用提供了底层支撑。

全生命周期安全 

横向来看,企业级区块链的整个生命周期都需要将安全考虑进来。从安全团队视角,可以分为交付、防护、检测、响应四个阶段,以及覆盖全生命周期的第三方安全服务。

1、开发交付

交付阶段主要是架构师团队、研发团队和测试团队参与,目标是交付安全的区块链系统。所以需要架构师团队研究区块链的特性和风险,设计安全的全栈企业级区块链平台、应用;研发团队应遵循安全编码的原则,最大程度减少代码中的漏洞;测试团队遵循安全测试的原则,最大程度发现代码中的漏洞。

在代码中引入第三方库和开源软件时,应确保不存在安全漏洞,保证供应链的安全。在部署区块链系统后,应持续地进行脆弱性评估,对区块链平台、智能合约、容器镜像等进行漏洞扫描,发现并及时修复漏洞。

2、安全防护

在部署完区块链业务系统后,应及时部署相应的安全防护机制,如入侵防护的IPS系统、Web应用防火墙、抗拒绝服务攻击的ADS系统等。

3、异常检测

在区块链系统运行时,按照纵深防护的理念,假定攻击者可能攻破前述的防护机制,依靠异常检测机制,及时发现异常行为。典型的检测机制包括区块监控、入侵检测、网络流量分析和安全审计等。

4、响应恢复

当发现异常行为后,需经过安全团队确认,及时进行事件响应。响应恢复阶段包括阻断攻击、回退交易、恢复系统和事件取证。

5、安全服务

事实上,企业级区块链系统使用了各种技术,其架构非常复杂。因此要保证这样复杂的区块链系统安全,单靠企业的安全团队是无法独立完成的,应考虑在整个生命周期中引入第三方的安全服务。

在开发交付阶段,安全服务应包括从系统设计之处的安全咨询到开发阶段的安全培训,再到系统上线前的安全评估。

在安全防护阶段,安全厂商应提供可管理的安全服务(MSS),协助企业安全团队完成安全产品的上线、策略配置和事件管理等工作。

在异常检测和响应阶段,第三方安全服务提供商可提供可管理的检测和响应服务(MDR),提供定期或按需的安全检测,当发现恶意攻击时,协助企业安全团队进行响应的事件处置,最终解决安全问题。

1594025417.png!small

复制链接,查看《企业级区块链安全白皮书》完整版!

https://www.yunzhan365.com/48019016.html

 

# 企业安全 # 区块链
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者