蒋长浩:区块链企业如何进行零信任安全实践企业内部安全代码的生产和部署Cobo Hub——云服务安全架构Cobo云盾——智能风控引擎Cobo卫士——二步签名授权工具

零信任是假设危险无处不在,因此任何操作都预设其可能是危险的,要排除危险才可放行,也就是“Never Trust, Always Verify!”

文/ 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卫士签名授权的消息,可以确定发起操作的身份。这就从根本上杜绝了用户被钓鱼和中间人攻击。甚至当服务端所依赖的中间服务被黑客攻破的时候,高危操作也能被保护。

                                      

 

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

分享生成图片
4

发表评论

蒋长浩:区块链企业如何进行零信任安全实践企业内部安全代码的生产和部署Cobo Hub——云服务安全架构Cobo云盾——智能风控引擎Cobo卫士——二步签名授权工具

2020-02-17 22:57:43

文/ 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卫士签名授权的消息,可以确定发起操作的身份。这就从根本上杜绝了用户被钓鱼和中间人攻击。甚至当服务端所依赖的中间服务被黑客攻破的时候,高危操作也能被保护。

                                      

 

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

利好 5622 利空