1 区块链工作组的官网: https://cloudsecirtiyalliance.org/research/working-groups/blockchain/ ©2022云安全联盟——版权所有。你可以下载、存储、在计算机上显示、查看、打印本文并链接云安全联盟https://cloudsecurityalliance.org,但需遵守以下规定:(a)本文仅可用于你的个人、信息、非商业用途:(b)本文不得被以任何方式修改或变更;(c)本文不得被再次发布;(d)不得从本文移除商标、版权信息和其他相关信息。你可以依照《美国版权法》“合理使用”条款引用本文部分内容,但前提是这些部分归云安全联盟所有。 序言 区块链做为一种颠覆性技术,能够帮助多个应用场景的业务创新并促进业务转型。区块链的去中心化和不可篡改的特性可以使交易双方安全可信地执行交易、验证交易和审计历史交易。在政务、金融、身份管理、医疗健康、智能家居和物联网、供应链和物流、汽车行业等多个细分领域中有很多新兴应用案例。 同时,区块链技术也面临着诸多的安全挑战,与传统信息系统的安全架构相比,与加密资产交易所相关的系统架构、运作的边界、参与者和组件已重新定义,给用户,区块链服务提供机构及监管机构带来了全新的安全及监管的挑战。 本指南对于加密资产交易相关的安全威胁、安全架构、最佳安全实践、应对相关威胁的控制措施提供了指导,可以很好的帮助加密资产交易用户、服务提供机构及监管机构提升安全意识,了解相关威胁及防护措施。文章结构清晰,内容简洁,值得参阅。 李雨航YaleLiCSA大中华区主席兼研究院院长 致谢 本文档《加密资产交易所安全指南》(Crypto-Asset-Exchange-Security -Guidelines)由CSA区块链工作组专家编写,CSA大中华区秘书处组织翻译并审校。 中文版翻译专家(排名不分先后): 组长:高卓 翻译组:李国马晓艳张钊 审校组:黄连金郭鹏程姚凯刘洁感谢以下单位对本文档的支持与贡献: 北京江南天安科技有限公司北京北森云计算股份有限公司 英文版本编写专家 主要作者:BoulevardA.Aldetoyinbo,Esq.KenHuangDaveJevansAbdulwahabAL-Zuaby 区块链/DLT工作组领导成员:BillIzzoAshishMehtaJyotiPonnapalli CSA全球人员:HillaryBaronFrankGuancoKurtSeifriedAnnMarieUlskey 在此感谢以上专家。 如译文有不妥当之处,敬请读者联系CSAGCR秘书处给与雅正! 联系邮箱:research@c-csa.cn;云安全联盟CSA公众号。 目录 序言3 致谢4 1.加密资产交易所威胁建模6 1.1交易所威胁模型6 2.加密资产交易所安全参考架构7 3.加密资产交易所最佳安全实践12 3.1交易所用户视角的最佳安全实践12 3.2交易所运营商视角的最佳安全实践17 3.3审计者视角的最佳安全实践28 4.加密资产交易所行政管理和物理安全32 4.1行政管理控制33 4.2加密资产交易所运行的法律方面40 4.3交易所投保:对内和对外43 4.4交易所安全事件联盟49 4.5风险管理流程50 4.6指定的安全责任52 4.7策略和规程56 4.8信息访问管理61 4.9安全意识和培训63 4.10安全事件管理规程64 4.11应急预案67 4.12评估68 4.13物理控制措施69 1.加密资产交易所威胁建模 作者:DaveJevans 针对重点攻击加密币资产的威胁的建模框架(ABC,Asset-BasedCryptocurrency-focusedthreatmodelingframework)能够识别这类风险。ABC的一大关键创新是使用了共谋矩阵(collusionmatrices)。共谋矩阵用一个威胁模型覆盖大量威胁案例,同时对整个流程实施管理以防止它变得过于复杂。我们通过展示现实世界用例和开展用户研究证明ABC是行之有效的。用户研究表明,约有71%使用ABC的人能够识别金融安全威胁,而在使用流行框架STRIDE的参与者中,只有13%的人能够做到这一点。 本文的完整PDF全文可以从http://arxiv.org/pdf/1903.03422.pdf下载。 这个模型可用于分析针对加密币本身的攻击以及分析针对通过智能合约控制交易的去集中化(分散式)交易所(DEX)的攻击。不过,若要对针对托管钱包(如基于云的交换、场外交易平台、加密币交换服务等)的攻击建模,或许还需要用一种聚焦点更突出的方法。下面,我们将列出针对交易所的十大威胁。 1.1交易所威胁模型 我们见过的针对交易所的攻击可分为以下几类: 1.用户凭证钓鱼,旨在访问加密币账户并转移资金。这些攻击手段有时会与SMS 劫持结合使用,以获取目标用户的基于SMS的身份验证码。 2.针对交易所的技术攻击,旨在渗透内部系统。 a.创建或访问账户后发起SQL注入攻击。 b.利用交易所运行的软件存在的漏洞。 c.利用交易所未打补丁的软件。 3.对交易所员工实施鱼叉式网络钓鱼攻击,旨在打破提款控制。 4.对交易所员工实施鱼叉式网络钓鱼攻击,旨在植入恶意软件(特别是远程访问木马),使攻击者得以访问内部系统并在基础设施之间来回跳转。 5.攻击者一旦进入内部系统,往往会利用内部API或内部访问控制不充分的系统,从而实现跨系统移动。攻击者经常利用保存在内部计算机上的凭证来访问其他系统。 6.用于保存私钥的冷钱包(离线钱包)存储与用于日常操作的热钱包(在线钱包)密钥存储的不当或错误使用。交易所应该把90%的加密币保存在不与互联网连接的冷钱包里。需要有一个协议完全离线初始化冷钱包,从而在热钱包与冷钱包之间传递传输请求(通常要求有一个带签名指令的USB驱动器)。交易所应该考虑为访问冷钱包设置多重签名,必须有两名员工为交易签字,资金才能从冷钱包转移到热钱包。 7.在交易所,员工可以访问热钱包密钥并可复制密钥、拥有冷钱包密钥访问权并可复制密钥,或者可以在内部系统中植入恶意软件或远程访问木马以便将来访问这些密钥进而偷窃加密资产,因此内部人员威胁普遍存在。 8.反编译交易所app(iOS或Android)并找出嵌在app里的秘密云API密钥,然后用这些密钥访问内部API,进而通过这些API访问热钱包或用户凭证。 9.复制钱包恢复密钥。交易所需要用比保护热钱包或冷钱包更大的力度保护钱包恢复密钥。攻击者如果拿到恢复密钥的拷贝,将能清空交易所的全部资产,冷数字钱包也不例外。因此切记千万不要把恢复密钥保存在电子介质上。而是应该把它们写在纸上保存到物理保险柜里。此外比纸张防火性更好的金属物理装置也可使用。 10.利用交易所执行方案存在的漏洞对特定加密币实施攻击。例如,许多XRP(瑞波币)的执行方案存在着一个会被人恶意利用的分批支付漏洞。交易所与XRPLedger系统集成时,会假设付款金额字段始终是全额交付。在这种情况下,恶意行为者会利用这一假设从机构窃取资金。只要这些机构的软件没有正确处理分批支付,这个漏洞就可以被人用来攻击网关、交易所或商家(详情请见:https://xrpl.org/partial-payments.html#partial-payments-exploit)。2020年9月的头9天,有3家交易所的XRP持有量被完全抹去。 2.加密资产交易所安全参考架构 作者:AbdulwahabZ 随着加密资产行业不断发展,加密资产交易所(CaE)以越来越大的力度覆盖这个 几十年来一直被金融服务机构视为私人游乐场的领域——这在分布式账本技术(DLT) (如果采用得当)可以通过提供大量服务引领企业走向未来的企业环境/商业生态系统中,表现得尤为突出。 加密资产交易所有若干种存在形式;由于实体身份的缘故,这些形式之间呈两极分化的态势。中心化(集中式)交易所(CentralizedExchange,CEX)由已知且可识别身份的实体拥有和经营,依照一个司法管辖区或横跨多个司法管辖区的法规运行。而分散式 (去中心化)交易所(DecentralizedExchange,DEX)顾名思义,几乎不受具体实体(组织、司法管辖区)制约——除非自愿选择接受制约——不过,一些在DEX和跨DEX进行交易的实体为了增强合法可信度,并不规避锁定司法辖区。 由于参考架构是一种预定义的模式架构集,这些模式被实例化、经过精心设计并被事实证明可以在应用环境下发挥既定功效,因此,把CEX拿去与“传统”(实在找不出更好的形容词)金融服务/系统的“安全”架构比较,在超出信息通信技术(ICT)和云安全基本要素的许多层面上既不全面也不现实——原因在于,与加密资产交易所及其超出词语(例如订单簿、买卖、交换、提款、交易、密钥等)语义范畴的功能相关的内部运作的边界、参与者和成分已全部重新定义。 加密资产交易所其实就是寻求交易的实体之间的中介;中介复杂介入的深度由CEX的企业架构、业务区间和服务范围决定;所有这些因素再加上适用法规,结合到一起形成了对集成/连接加密资产网络、对等服务供应商以及业务支持服务供应商的需求度,如KYC/AML(“了解客户”/“反洗钱”)要求、金融机构、支付服务处理器等。加密资产交易所致力于在使用混合资产(政府发行的法定货币、公共区块链资产、封装/令牌化工具或它们的组合)的实体之间撮合交易。 本文将阐明适用于加密资产交易所广泛类型/格式的CEX参考架构,以此作为框架在未来形成CEX类型特有迭代的普遍适用起点。 中心化交易所(CEX)的运行/业务模式围绕着提供服务展开,而这些服务可以为感兴趣方(个人或企业)以手动或自动方式使用交易工具带来方便。服务在构成交易及其条款的参数方面各有不同功能;因此,每个配置都与一个产品名称关联(即储蓄、衍生 品、现货、抵押、托管、交换、期货等)。 提供给实体的抽象服务要以会员资格为前提,而会员资格需通过复杂程度各异的注册或密码密钥等方法(如往返交换、“匿名”交换、web3.0等)获得。会员资格被抽象成交易实体带编号的标识符,供在中心交易所申请工具、规定权利、义务、实施拨款保护等时使用。 此外,CEX服务通过借助API和软件客户端连接核心系统的app提供给会员——只要会员的GUI/CLI通过公开/回环API端点服务器或单独的本地化API守护进程与加密网络交互时使用的是Web/移动应用或加密钱包/DEX客户端即可。 因此可以说,CEX环境是一个实体可以通过app借助各种现有服务“交易”的环境:根据交易方接受的既定条款实施/执行操作和功能。 我们之所以选择这个抽象级别,是为了引导读者面对安全和风险状况时放宽眼界,从大局着眼。而这反过来会形成对风险和抑制手段的全面探讨,从中确定CEX在安全计划、风险管理和运行策略方面的要求;这一点至为关键,特别是在一个不存在“低威胁”区域(即便在CEX内部)的环境里。 图1提供既定服务的CEX具有3个主要抽象块:A)逻辑B)工具C)集成 每个块的范围涵盖它的流程成分(代码、基础设施、人员)、逻辑和执行参数,同时控制着跨块交互、依赖和继承关系在本地通过内部API中间件流动的方式。 值得一提的还有另外一点,集成块会扩大范围,把补充CEX功能或帮助CEX以及来自对等实体、票务系统和社交媒体集成的产品的第三方系统和服务供应商也涵盖在内。 下图直观展示了上述抽象CEX,可用作参考架构指南。 图2加密资产交易所抽象图 需要注意的是,图2中的“其他”是指并非CEX核心的服务(由CEX、集成的第三方或DLT网络提供),因为它们是非交易性的,如投票、加密/解密消息、外部余额跟踪、dApp查询等,抑或是因为它们是由会员/DLT在外部执行的,但可能会对会员/CE的地位产生影响(P2P交换、采掘/铸造、令牌创建/交换、主站/服务/中继加密节点管理、电汇等)。