LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 行情分析 > 蒋长浩:区块链企业如何进行零信任安全实践

蒋长浩:区块链企业如何进行零信任安全实践

2020-02-17 Cobo钱包 来源:区块链网络

文/Cobo 联合创始人兼 CTO 蒋长浩博士

比特币为代表的区块链领域,由于离钱近、变现容易、难以追踪等特点,近几年成为了网络犯罪的重灾区。 据区块链安全公司 PeckShield(派盾)数据显示,2019 年全年区块链安全事件共 177 件,其中重大安全事件 63 起,总共损失达到了 76.79 亿美元,环比 2018 年增长了 60%?左右。

黑客的攻击手段越来越专业化、组织化,内部作恶的风险也不容忽视,这些都使得区块链领域的安全建设极具挑战。最近FCoin交易所的事件也再一次为区块链行业敲响了安全警钟。

区块链领域安全除了智能合约安全,冷热钱包安全等,事实上,大多数造成巨大损失的攻击都是通过网络攻击完成的。在我看来,网络安全建设的核心策略是:一、缩小攻击面,二、零信任。缩小攻击面是指,任何安全操作减少入口,权限分配采用最小必要原则。零信任是假设危险无处不在,因此任何操作都预设其可能是危险的,要排除危险才可放行,也就是“Never Trust, Always Verify!”

Cobo作为一家在区块链领域提供基础设施服务的技术公司,通过多条产品线同时服务个人用户和机构客户,目前是国内领先的个人用户钱包产品,同时也是亚洲最大的面向机构的数字资产托管服务提供商。经过两年多的持续建设,Cobo在安全领域已经积累了一定的经验和成果。其中一些措施对于防御内部员工作恶也非常有帮助。

在这里分享一些Cobo的相关安全措施,供大家参考、一起讨论。

企业内部安全

相比于外部的黑客攻击,企业内部安全一样需要得到重视。

Cobo在全球五个城市有办公室,近百名员工,通过网络开展工作。安全的第一步,首先是工作环境的安全保障。传统的企业安全,采用VPN内外网隔离,但这在高级黑客攻击面前,形同虚设。Cobo采用了业界领先的零信任模型,不管员工在哪个城市,在家里、办公室还是咖啡店,用手机还是电脑,所有的企业内部服务都假设用户访问不可信,通过一系列工具和风控策略来验证该访问安全才放行。

为了减少攻击面,我们所有的内部服务如邮箱、文档服务、数据看板、客服工具、代码仓库、任务管理工具等等都使用统一的内部用户认证服务SSO来进行账号权限管理。内部用户认证服务事先对所有员工的设备进行登记,只有事先登记的设备才能访问内部服务。同时,Cobo对于员工访问内部服务做了非常细粒度的权限分配和管理。每个服务有哪些员工可以访问,都采用权限最小化原则,也即只有必要的情况才会为员工开放权限。权限开放需要内部审核,必要性结束时,权限取消。员工离职,账号关闭。

我们还为每一位员工配备硬件安全钥匙Yubikey。所有的用户登录,除了账号密码、可信设备检查等,还必须要有Yubikey通过强二步验证,以确保员工不会被钓鱼攻击。Cobo内部开发了很多效率工具,如用户运营工具等。其中的一些关键操作,比如客服审核用户的大额提币,必须要通过Yubikey验证,才能生效。

代码的生产和部署

代码和数据是科技企业的核心资产。如何有效保护代码和数据不被攻击,是非常有挑战的。如果由于员工内部作恶,导致服务终止、数据丢失,这对于绝大多数企业来说是致命的。Cobo对于代码和数据的保护,采用减少攻击面和零信任模型的原则,有非常严格的流程。

Cobo的代码管理分成很多不同的代码仓库,每个代码仓库的访问权限都只分配给必要的开发程序员。程序员不能访问跟自己工作无关的代码仓库。所有的代码修改,必须要通过其他程序员的评审,只有通过评审的代码才能提交到仓库。

所有的开发程序员都没有生产线上服务器的访问权限。线上故障也只能通过实时同步的日志以及脱敏数据库来诊断。代码仓库的代码进入生产线,有严格的流程和权限管理。所有的代码上线,必须由一名开发人员发起,并有另外两名技术人员审核通过,才会部署到线上。

Cobo Hub——云服务安全架构

目前Cobo有约十个不同的服务(如Wallet、Custody、Blockchain,风控,认证等等)运行在不同的云服务商的云服务器上。为保障这些云服务的安全,Cobo自己研发了独有的Cobo Hub安全架构,思想上类似谷歌的BeyondProd (https://cloud.google.com/security/beyondprod)。这些服务在假设彼此不可信的情况下,互相调用协作。在受攻击时,能够快速感知,互相隔离,最小化风险和损失。

Cobo Hub将所有的服务通过安全域封装。安全域相互之间不能直接调用,必须要通过一个中心的Hub转发。在Hub中,可以对所有流量进行监控和审计。每个安全域有自己的安全证书,安全域和Hub之间的通信通过MTLS双向认证加密。

每个安全域内通过VPC安全组、主机防火墙等来实现只有唯一流量进出口的管控。该管控是通过每个安全域内唯一的代理进程来转发来实现,代理进程也会对本域内的所有向外访问的流量进行白名单过滤。这样即使Cobo使用的第三方程序库里存在安全漏洞,也很难被黑客利用。

Cobo云盾——智能风控引擎

基于零信任原则,每一个用户行为操作都不可信,都有风险。Cobo云盾是一个智能风控引擎,它会基于预设的风控规则,以及大数据学习对用户的行为做风险判定。当风险超出一定阈值,会触发人工干预或者报警。

比如,当Cobo Wallet用户发起转账操作,Cobo云盾会检查用户发起操作的来源设备是否可信,他发起操作的IP地址是否见过,该操作的时间是否符合用户习惯,提币金额是否正常等等。同时,业务部门也可以根据一些先验知识,设置风控规则:比如每个用户单日提币阈值,提币速度(单位时间内提币笔数)阈值等等。Cobo云盾都会自动检查这些规则,并对用户行为的风险打分。当Cobo云盾评估用户操作风险过高,会引入人工干预,由客服和用户取得联系,确认是用户行为再放行。

Cobo Custody服务的机构客户中有不少数字货币交易所。他们使用的Cobo云钱包服务,自动也受到Cobo云盾的保护。数字货币交易所是黑客攻击的重点对象,因此,Cobo的客户也经常受到攻击。目前为止,Cobo云盾已经通过智能风控多次拦截了黑客对Cobo客户的攻击。比如有的交易所被黑客攻击。黑客获取了交易所的API密钥,但是在向外转出资金的时候,被Cobo云盾拦截,避免了交易所的损失。

Cobo卫士——二步签名授权工具

在网络威胁无处不在的环境下,用户、员工都很容易成为黑客攻击的对象。黑客通过钓鱼、中间人攻击等方式可以轻易的欺骗用户或者服务器。为了杜绝这类攻击,Cobo开发了专门的用户端App——Cobo卫士。

简单来说,Cobo卫士是一个二步签名授权工具App。用户下载到手机上后,它会在安全芯片中生成公私钥对,私钥永远不出安全芯片。用户通过绑定流程将公钥绑定到自己的账号。服务端将持续维护用户身份与该公钥的绑定关系。当一些安全性要求高的操作发生时,比如用户大额提币,服务端会向已经绑定身份的Cobo卫士推送授权申请,Cobo卫士通过签名授权该消息,服务端才会放行。

由于服务端和用户之间建立了独立的安全通道,在风控拦截高危操作时,服务端通过验证用户的Cobo卫士签名授权的消息,可以确定发起操作的身份。这就从根本上杜绝了用户被钓鱼和中间人攻击。甚至当服务端所依赖的中间服务被黑客攻破的时候,高危操作也能被保护。

作为一家视安全为生命线的企业,只有从源头到终端,建立起一套严格的安全审核标准及流程,才能为用户资产保驾护航,同样的,只有每家区块链企业都能建立严格的安全标准及流程,才能促成整个行业的健康发展。

—-

编译者/作者:Cobo钱包

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...