《2024加密资产交易所安全指南.docx》由会员分享,可在线阅读,更多相关《2024加密资产交易所安全指南.docx(74页珍藏版)》请在课桌文档上搜索。
1、加密资产交易所安全指南目录1 .加密资产交易所威胁建模61.1 交易所威胁模型62 .加密资产交易所安全参考架构73 .加密资产交易所最佳安全实践123.1 交易所用户视角的最佳安全实践123.2 交易所运营商视角的最佳安全实践173.3 审计者视角的最佳安全实践284 .加密资产交易所行政管理和物理安全324.1 行政管理控制334.2 加密资产交易所运行的法律方面404.3 交易所投保:对内和对外434.4 交易所安全事件联盟494.5 风险管理流程504.6 指定的安全责任524.7 策略和规程564.8 信息访问管理614.9 安全意识和培训634.10 安全事件管理规程644.11
2、674.12 评估684.13 物理控制措施691 .加密资产交易所威胁建模作者tDaveJevans“对重点攻击加密币资产的威胁的建模框架(ABGAsset-BasedCryptocurrency-focusedthreatmodelingframework)能够识别这类风险。ABC的一大关键创新是使用了共谋矩阵(collusionmatrices)共谋矩阵用一个威胁模型覆盖大量威胁案例,同时对整个流程实施管理以防止它变得过于复杂。我们通过展示现实世界用例和开展用户研究证明ABC是行之有效的。用户研究表明,约有71%使用ABC的人能够识别金融安全威胁,而在使用流行框架STRIDE的参与者中,
3、只有13%的人能够做到这一点。这个模型可用于分析针对加密币本身的攻击以及分析针对通过智能合约控制匆的去集中化(分散式)交易所(DEX)的攻击。不过,若要对针对托管钱包(如基于涌勺交换、场外交易平台、加密币交换服务等)的攻击建模,或许还需要用一种聚焦点更突出的方法。下面,我们将列出至十对交易所的十大威胁。1.1 交易所威胁模型我们见过的针对交易所的攻击可分为以下几类:1用户凭证钓鱼,旨在访问加密币账户并转移资金。这些攻击手段有时会与SMS劫持结合使用,以获取目标用户的基于SMS的身份验证码。2车十对交易所的技术攻击,旨在渗透内部系统。a.创建或访问账户后发起SQL注入攻击。b.利用交易所运行的软
4、件存在的漏洞。c.利用交易所未打补丁的软件。3对交易所员工实施鱼叉式网络钓鱼攻击,旨在打破提款控制。4对交易所员工实施鱼叉式网络钓鱼攻击,旨在植入恶意软件(特别是远程访问木马),使攻击者得以访问内部系统并在基础设施之间来回跳转。5攻击者一旦进入内部系统,往往会利用内部APl或内部访问控制不充分的系统,从而实现跨系统移动。攻击者经常利用保存在内部计算机上的凭证来访问其他系统。6用于保存私钥的冷钱包(离线钱包)存储与用于日常操作的热钱包(在线钱包)密钥存储的不当或错误使用。交易所应该把90%的加密币保存在不与互联网连接的冷钱包里。需要有一个协议完全离线初始化冷钱包,从而在热钱包与冷钱包之间传递传输
5、请求(通常要求有一个带签名指令的USB驱动器)。交易所应该考虑为访问冷钱包设置多重签名,必须有两名员工为交易签字,资金才能从冷钱包转移到热钱包。7在交易所,员工可以访问热钱包密钥并可复制密钥、拥有冷钱包密钥访问权并可复制密钥,或者可以在内部系统中植入恶意软件或远程访问木马以便将来访问这些密钥进而偷窃加密资产,因此内部人员威胁普遍存在。8反编译交易所app(iOS或AndrOid)并找出嵌在app里的秘密云API密钥,然后用这些密钥访问内部API,进而通过这些APl访问热钱包或用户凭证。9复制钱包恢复密钥。交易所需要用比保护热钱包或冷钱包更大的力度保护钱包恢复密钥。攻击者如果拿到恢复密钥的拷贝,
6、将能清空交易所的全部资产,冷数字钱包也不例外。因此切记千万不要把恢复密钥保存在电子介质上。而是应该把它们写在纸上保存到物理保险柜里。此外比纸张防火性更好的金属物理装置也可使用。3D利用交易所执行方案存在的漏洞对特定加密币实施攻击。例如,许多XRP(瑞波币)的执行方案存在着一个会被人恶意利用的分批支付漏洞。交易所与XRPLedger系统集成时,会假设付款金额字段始终是全额交付。在这种情况下,恶意行为者会利用这一假设从机构窃取资金。只要这些机构的软件没有正确处理分批支付,这个漏洞就可以被人用来攻击网关、交易所或商家(详情请见:https:XrH.org/cartial-payments.html#
7、Partial-PaVmentS-exploit)。2020年9月的头9天,有3家交易所的XRP持有量被完全抹去。2 .加密资产交易所安全参考架构作者:AbdulwahabZ随着加密资产行业不断发展,加密资产交易所(CaE)以越来越大的力度覆盖这个几十年来一直被金融服务机构视为私人游乐场的领域一一这在分布式账本技术(DLT)(如果采用得当)可以通过提供大量服务引领企业走向未来的企业环境/商业生态系统中,表现得尤为突出。加密资产交易所有若干种存在形式;由于实体身份的缘故,这些形式之间呈两极分化的态势。中心化(集中式)交易所(CentralizedExchange,CEX)由已知且可识别身份的实体
8、拥有和经营,依照一个司法管辖区或横跨多个司法管辖区的法规运行。而分散式(去中心化)交易所(DecentralizedExchange,DEX)顾名思义,几乎不受具体实体(组织、司法管辖区)制约一一除非自愿选择接受制约一一不过,一些在DEX和跨DEX进行交易的实体为了增强合法可信度,并不规避锁定司法辖区。由于参考架构是一种预定义的模式架构集,这些模式被实例化、经过精心设计并被事实证明可以在应用环境下发挥既定功效,因此,把CEX拿去与“传统”(实在找不出更好的形容词)金融服务/系统的“安全”架构比较,在超出信息通信技术(ICT)和云安全基本要素的许多层面上既不全面也不现实一一原因在于,与加密资产交
9、易所及其超出词语(例如订单簿、买卖、交换、提款、交易、密钥等)语义范畴的功能相关的内部运作的边界、参与者和成分已全部重新定义。加密资产交易所其实就是寻求交易的实体之间的中介;中介复杂介入的深度由CEX的企业架构、业务区间和服务范围决定;所有这些因素再加上适用法规,结合到一起形成了对集成/连接加密资产网络、对等服务供应商以及业务支持服务供应商的需求度,如KYC/AML(“了解客户”/“反洗钱”)要求、金融机构、支付服务处理器等。加密资产交易所致力于在使用混合资产(政府发行的法定货币、公共区块链资产、封装/令牌化工具或它们的组合)的实体之间撮合交易。本文将阐明适用于加密资产交易所广泛类型/格式的C
10、EX参考架构,以此作为框架在未来形成CEX类型特有迭代的普遍适用起点。中心化交易所(CEX)的运行/业务模式围绕着提供服务展开,而这些服务可以为感兴趣方(个人或企业)以手动或自动方式使用交易工具带来方便。服务在构成交易及其条款的参数方面各有不同功能;因此,每个配置都与一个产品名称关联(即储蓄、衍生品、现货、抵押、托管、交换、期货等)。提供给实体的抽象服务要以会员资格为前提,而会员资格需通过复杂程度各异的注册或密码密钥等方法(如往返交换、“匿名”交换、web3.0等)获得。会员资格被抽象成交易实体带编号的标识符,供在中心交易所申请工具、规定权利、义务、实施拨款保护等时使用。此外,CEX服务通过借
11、助API和软件客户端连接核心系统的app提供给会员一一只要会员的GUI/CLI通过公开/回环API端点服务器或单独的本地化API守护进程与加密网络交互时使用的是Web/移动应用或加密钱包/DEX客户端即可。因此可以说,CEX环境是一个实体可以通过app借助各种现有服务“交易”的环境:根据交易方接受的既定条款实施/执行操作和功能。我们之所以选择这个抽象级别,是为了引导读者面对安全和风险状况时放宽眼界,从大局着眼。而这反过来会形成对风险和抑制手段的全面探讨,从中确定CEX在安全计划、风险管理和运行策略方面的要求;这一点至为关键,特别是在一个不存在“低威胁”区域(即便在CEX内部)的环境里。图1提供
12、既定服务的CEX具有3个主要抽象块:A)逻辑B)工具C)集成每个块的范围涵盖它的流程成分(代码、基础设施、人员)、逻辑和执行参数,同时控制着跨块交互、依赖和继承关系在本地通过内部APl中间件流动的方式。值得一提的还有另外一点,集成块会扩大范围,把补充CEX功能或帮助CEX以及来自对等实体、票务系统和社交媒体集成的产品的第三方系统和服务供应商也涵盖在内。下图直观展示了上述抽象CEX,可用作参考架构指南。需要注意的是,图2中的“其他”是指并非CEX核心的服务(由CEX、集成的第三方或DLT网络提供),因为它们是非交易性的,如投票、加密/解密消息、外部余额跟踪、dApp查询等,抑或是因为它们是由会员
13、/DLT在外部执行的,但可能会对会员/CE的地位产生影响(P2P交换、采掘/铸造、令牌创建/交换、主站/服务/中继加密节点管理、电汇等)。CEX的目标是在一个构建在安全和隐私标准以及最佳实践(包括可追溯、可追踪、可问责和合规)基础上的环境中促成交易。为了适用于所有交易周期及其各阶段事项(即请求、开始、取消、兑回等),我们考虑把“交易”视为由两个各不相同、相互排斥,同时又相互依赖的范围组成:A:价值绑定的:促成价值转移(如存入、提取、收费、汇款、买卖、交换、dApp交互等)的交易。B:价值未绑定的:不直接转移价值的交易或操作一但是它们对相关流程(如管理流程、角色和权限的分配、APl路由、通知、日
14、志记录、dApp查询等)具有辅助意义。目前已有多种安全和隐私框架(NISKJerichoOSASAMMSDLC、PMRM)和架构(SABSA、O-ESA)可供使用。就中心化交易所(CEX)而言,它们的主要构建块的边界尽管依然会保持它们的长处,但是如果不重新定义,势必会遇到挑战。在分布式账本技术(DLT)领域开发有效的安全/隐私架构,这种挑战放大了现有框架/模型无论如何都无法完全适应个人具体情况和需要的缺陷。安全/隐私架构的概念涵盖了许多方面。每个框架都有各自的重点和优势,加密资产交易所可以在需要扩展的领域把这些重点和优势充分利用起来。图3和图4用实例展示了CEX处于怎样一种态势,以及它们面临的
15、对比鲜明的安全挑战。要想战胜这些挑战,只能把CEX及其所有组成部分都视作关键资产的容器,同时把“数据”视作每个容器核心中最重要的资产,以这样的方法分层保护和逐级防御。CEX架构要求确保在所有层级上落实安全信息交换指南和最佳实践,在启动下一个步骤之前对双向信息流动采用有效的方法。捕捉El转换流控制验id交付)加密资产交易所系统团队图3加密资产交易所:集中式、或者去中心化的客户端和公共区块链集中式和混合式交易所应该采用分层实施安全保护的方法,确保每个单独的防御组件都有备份,从而弥补其他安全防御手段存在的任何缺陷或漏洞。多层级安全保护法的每个层级都分别注重某一特定区域。这些层级协同一致形成的合力可以
16、提高安全性和增加击败渗透破坏的机会。回到集中式和混合式交易所的抽象体系中来,所有交易都将通过对警报阈值极为敏感的价值绑定交易来提供监控和响应操作以及策略管理反馈流;价值未绑定交易将用于凸显/警告,表明/暗示可能发生了恶意价值绑定交易的异常情况。公共区块链网络图4分散式加密资产交易所(dApp)3 .加密资产交易所最佳安全实践作者:KenHuang本章将从3个不同的角度(交易所用户、交易所运营商和审计者)推荐最佳安全实践。3.1 交易所用户视角的最佳安全实践3.1.1 信誉良好和安全的交易所用户应该避开不道德的加密资产交易所,因为它们可能缺乏安全措施,具有不诚实和欺诈性商业行为。欺诈性行为的例子
17、包括内幕交易、抽水和倾销计划,以从流动性低的价格变化中获利,无正当理由禁用提款或存款功能,以及因缺乏内部安全流程从而导致内部人员攻击频发。3.1.2 口令管理和双因子或多因子认证使用强口令,最少由10个字符组成,其中混合使用大小写字母、数字和特殊符号。启用双因子或多因子身份验证(用户不要使用任何不支持至少双因子身份验证的交易所)。由于存在发生SlM卡交换劫持的可能性,交易所应该用GOOgIeAUthentiCatOr取代SMS充当第二因子。3.1.3 使用单独设备如果可能,用户应该用单独的设备与加密资产交易所连接并只授予最小权限。KYC(“了解客户”)要求流程完成后,用户可以禁用对相册的访问。
18、用户还可以禁用交易所对联系人列表的访问,并禁用对音频的访问。用户可能依然需要允许交易所app访问自己的存储空间,以便定期更新数据。3.1.4 了解与钱包应用相关的密钥概念去中心化交易所(DEX),私钥通常由客户端app持有。私钥用于给可以从钱包提取资金的交易签名。用户必须全面了解与私钥相关的密钥概念以及丢失私钥会造成什么后果,这一点至关重要。1)公钥和地址在公钥密码中,用户会拥有一个密钥对:公钥和私钥。用户可以从私钥派生公钥,但不能从公钥派生私钥。在以太坊中,地址发挥着类似公钥的作用,尽管它并不是公钥。公钥由私钥派生而来,是由128个十六进制字符组成的字符串。用户可以从中提取(64个字符的)“
19、SHA3(KeCCak-256)散列值;然后再提取最后40个字符,加上“Ox”为前缀,形成自己的42字符地址。2)私钥私钥是用户的地址/公钥对或者由64个十六进制字符组成的字符串中保密的那一半。(几乎)每个由64个十六进制字符组成的字符串都是一个私钥。这就是用户需要用来确保安全的密钥。没有它,用户将无法动用自己的资金。3)密钥库文件密钥库文件是JSON格式私钥的加密版(尽管它没有JSON扩展名),或者是被用户选择用口令保护的私钥的精美版。4)提示性短语(恢复短语)提示性短语是可用来派生多个私钥的私钥的另外一个精美版。由12或24个单词组成的短语通常可以让用户访问不定数量的账户。为了保险起见,用
20、户有时会给短语增加第13个或第25个单词。提示性短语起源于“第39号比特币改进规范提案(BlP)”。“派生路径决定了用户可以用此短语访问的账户。”3.1.5 慎重安装或点击用户应该避免访问未知网站或从不可信来源下载appo这些网站和app往往运行着恶意软件,会把它们(偷偷)自动安装到设备上并对设备造成破坏。如果电子邮件出现非预期或可疑附件或链接,千万不要点击。3.1.6 保护敏感数据用户应该把敏感数据(如社会保障号、信用卡信息、学生记录、健康信息等)从安装了交易所app的设备上撤下来保存到别处。当敏感数据文件不再被需要时,应该将它们从系统中安全移除。存储或传输敏感数据时永远都要加密。3.1.7
21、 确保设备安全用户应该用PIN或口令锁闭自己的设备,切勿将设备留放在没有保护措施的公共场所。用户应该只从自可信来源(如APPIeAPPStOre、GooglePlay)下载安装交易所app。用户应该即时更新设备的操作系统。大多数手持设备都能使用数据加密一一用户可到设备说明书中查阅可用选项。用户应该借助苹果的“查找我的iPhone”或Android的设备管理器工具来帮助防止设备丢失或失窃。3.1.8 永远只用安全的网络连接用户应该避免通过公共网络与交易所交易(买/卖/存入/提取/抵押)。家庭或单位网络之外的任何网络都是不安全的。即便用户给设备里的数据都加了密,但是数据在连网传输时并不一定会采取加
22、密格式。此外,用户连接的公共网络始终存在着被人搭线窃听的风险,这表明通过网络交换的数据始终处于风险之下。在使用可信网络以外的任何连接之前,始终要确保自己通过适当的VPN设置对连接实施了保护。3.1.9 了解各种钱包类型和钱包的使用方式加密资产钱包分纸质、硬件、云和在线四类。D纸钱包纸钱包通常被归类为冷存储。“纸钱包”一词一般是指公钥和私钥的物理拷贝或纸质打印件。它有时又指用于生成会被送去打印的密钥对和数字文件的软件。无论属于哪种情况,纸钱包都可以为用户提供级别相对较高的安全性。用户可以把自己的纸钱包导入软件客户端,或者只需扫描它的二维码便可转移资金。尽管纸钱包很冷,但它们也是与风险共存的。例如
23、,纸钱包很容易损坏、烧毁,容易被人复制、拍照,如果你不自己制作,那就需要选择相互信任。人们为了使纸钱包不那么脆弱,有时会把它们压薄,制作多个副本,把它们分别存放在多个不同位置,或者将它们刻在金属片或其他坚固材料上,等等。需要注意的是,把纸质钱包的电子拷贝保存在PC机上绝对不是好主意。纸钱包的私钥永远都要离线保存。把自己的纸钱包文件保留在线上,会使它变得像热钱包一样不安全。2)云钱包用户的钱包若是拿到中心化交易所(CEX)使用,它便是一种云钱包。用户的资金可以被人用云钱包从任何计算机、设备或位置访问。它们确实很方便,但它们也将用户的私钥保存到了网上,可供交易所操控。因此,云钱包的设计在面对攻击和
24、盗窃时,会显得比较脆弱。3)软件钱包软件钱包是指被下载并安装到个人电脑或智能手机上的热钱包。桌面和移动钱包都具有极高的安全性;但是它们无法保护用户免受黑客攻击和病毒侵害,因此用户应该尽力防范恶意软件。移动钱包通常比桌面钱包更小、更安全,使用起来也更方便。4)硬件钱包与软件钱包不同,硬件钱包把用户的私钥存储在USB等外部设备上。它们是完全冷的和安全的。此外,它们也能进行在线支付。一些硬件钱包与Web接口兼容并支持多种加密资产。它们的设计是为了让交易变得简单方便,因此,用户只需把钱包插入任何在线设备,将其解锁,发送加密资产并确认交易就可以了。硬件钱包被认为是存储加密资产的最安全方式。最妥当的做法是
25、直接从制造商那里获取硬件钱包。从其他人手里购买是不安全的,尤其是那些不认识的人。另外,用户还需切记,即便你是从制造商那里获得硬件钱包的,你也应该亲手将其初始化和重置后再使用。如果需要对这几种钱包做一次安全性排名,我们可以这样排列:硬件钱包纸钱包软件钱包云钱包。通常情况下,最好的做法是把数量多的加密资产存储在硬件钱包里,只把需要定期与交易所交易的资金保存在交易所的云钱包里。3.1.10 大笔资金使用MultisigMultisig代表多重签名,这是一种特定类型的数字签名,可使两个或多个用户作为一个组对文档签名。因此,多重签名是多个唯一签名组合在一起产生的。Multisig技术一直在加密资产领域使
26、用,但是这一原理早在比特币问世之前就已经存在了。在加密资产的背景下,multisig技术于2012年首次应用于比特币地址,最终导致multisig钱包诞生。用户使用了multisig钱包,可以避免出现私钥丢失或被盗带来的问题。因此,即便多个密钥中的一个失信,资金依然是安全的。我们不妨假设这样一个例子:Alice创建了一个三之取二multisig地址,然后把每个私钥分别存放到不同的地方或设备(例如,手机、笔记本电脑和平板电脑)中。即便Alice的移动设备失窃,小偷也无法只用3个密钥中的一个来访问她的资金。同样,钓鱼攻击和恶意软件感染也会被大大降低成功率,因为黑客极可能只掌握一台设备和一个密钥。撇
27、开恶意攻击不谈,如果Alice丢失了其中一个私钥,她依然可以用另外两个密钥调用她的资金。Multisig技术常被加密资产企业用来管理公司资金;我们建议用户在家人或朋友中用这一技术当作一种防备万一的手段,以避免因一个密钥失窃或丢失而造成经济损失。3.2 交易所运营商视角的最佳安全实践本节列出了从加密资产交易所运营商视角看的最佳安全实践和相关技术安全控制。3.2.1 分布式拒绝服务攻击(DDoS)保护DDoS攻击通过用请求访问的恶意数据包淹没服务器来利用网络漏洞。大量通信流的涌入最终会导致加密资产交易所服务器崩溃并中断服务。加密资产交易所与大多数高知名度企业一样,也已成为DDoS攻击的目标。随着人
28、们对加密资产的兴趣激增以及随之而来的流量增加,门户已经为那些试图破坏加密资产资源,进而拒绝合法用户访问的那些恶意行为者打开。针对DDoS的防御措施包括:D增加网络带宽由于DDoS攻击的基本原理是用巨量通信流压垮系统,因此,只要有额外的带宽(例如应对突发事件的带宽计划)处理超出预期的流量高峰,便可以提供一定程度的保护。但是,这种解决方案可能费用昂贵,因为会有许多带宽在大部分时间里是闲置的。更重要的是,额外的带宽目前在防止DDoS攻击方面已经不如以往奏效。这些攻击正变得规模越来越大、技术越来越先进,如果不辅以其他DDOS抑制措施,任何带宽都无法承受超过IT的攻击。但是尽管如此,应对突发事件的带宽还
29、是可以帮助缓解攻击的影响,为采取行动击退攻击赢得所需要的额外时间。2)以早期检测和数据包监测手段抑制DDoS攻击IT安全团队可以采用多种手段监控入站通信流并识别对于阻止DDoS攻击至关重要的早期预警信号。大多数路由器支持流采样,这一性能可以检查入站数据包的样本从而创建一张显示网络流量趋势的大型图片。但是,由于流量采样一次只查看一小部分通信流,因此可能会错过潜在的破坏性趋势或出现“误报”。我们可以通过部署各种入侵预防系统/入侵检测系统(IPS/IDS)抑制DDOS风险。3)管理和拦截恶意通信流加密资产交易所发现有人正在实施DDoS攻击之后,可以采取各种措施保护自己的基础设施。预防DDoS攻击的第
30、一策略通常是用“空路由”流量阻止恶意数据包到达服务器,空路由流量可以拦截和重新定向受僵尸网指挥的请求洪流。DDoS优化防火墙也可以识别不完整的连接,并在它们达到特定阈值时将其从系统中清除。我们还可以评估路由器的工作状况,从而帮助防止服务器陷入不堪重负。在某些情况下,所有通信流都转移到一个“洗涤器”,由它把合法请求与恶意请求更彻底分离开来。然而,这些网络安全措施中有许多都依赖带宽,而且一遇大规模攻击,就有可能被击溃。4)建设备份基础设施随着DDoS攻击变得规模越来越大、技术越来越先进,IT安全工作对冗余备份的投入己经到了与预防相提并论的地步。DDoS攻击的终极目标毕竟是让服务瘫痪,那么,只要能够
31、保持服务器在线正常运行,至于供应商采取什么手段,全都无关紧要。冗余备份并不是正面迎击攻击,而是允许机构扩展自己的基础设施,使其更具弹性。冗余备份还可以使机构腾出手来更轻松地主动对抗攻击,因为通信流可以被更有效地切断和重新路由。5)引入备用互联网服务供应商只依靠一家互联网服务供应商(ISP)会使公司面对DDoS攻击时脆弱不堪,因为旨在破坏供应商系统的任何攻击都有可能导致与之连接的所有系统宕机。此外,当DDoS攻击是通过一家ISP的连接发起时,几乎所有解决方案都是切断连接等待攻击结束。如果有提供ISP冗余的混合互联网服务方案,则公司可以设计备用网络,使自己在遇到DDoS攻击时得以根据需要在不同供应
32、商之间切换。6)用云解决方案阻断DDoS攻击云DDoS解决方案供应商可以为机构提供一系列广泛的工具对抗DDoS攻击。由于它们具有更大带宽容量和更安全的路由器来管理入站通信流,因此数据中心安全保护方式具有比典型本地IT解决方案更强的能力挫败致瘫基础设施的企图。云供应商拥有通过混合ISP连接对抗最新DDoS攻击战略所需要的资源,这些连接可以提供得到预测分析和远程服务支持的多层次冗余和实时监控。3.2.2 跨站点脚本(XSS保护)跨站点脚本(XSS)是一种安全漏洞,允许用户更改应用提供给用户,在用户的Web浏览器中执行的代码。它最常见于影响用户浏览器的Web应用,也会出现在具有嵌入式Web内容的其他
33、应用中,例如交互式“帮助”内容查看器。当XSS漏洞被人用作攻击向量时,攻击者发送的输入会在应用内被以一种不安全的方式处理,允许Web浏览器执行经攻击者篡改后发送给受害者的代码。要想修复这一漏洞,开发人员必须验证传输给应用的所有输入并对输出包含的所有信息进行编码。这是应用开发过程的一个重要组成部分,有助于防止多种不同的漏洞,而不是只对XSS有效。有关XSS及其保护措施的更多信息,请访问:https:/OWaso.orR/www-proiect-tODten/OWASPTOPTCn2017/TodT02017A7-CrossSiteSCriDti11e(XSS)。3.2.3 不暴露服务器信息把有关
34、服务器、软件和操作系统的后台信息显示在外会带来安全隐患一一这是在为黑客攫取秘密信息开绿灯;用户或许不清楚为什么会有一个快速链接指向Apache漏洞列表,但Apache至今也依然是最常用的Web服务器。在每个新版本中,开发人员都会修复错误并关闭漏洞。详情请见:https:/WWW.C3.2.4 Web应用防火墙Web应用防火墙(WAF)可以保护Web应用免受各种应用层面攻击侵扰,如跨站点脚本(XSS)、SQL注入和cookie中毒等。对应用实施攻击会直接造成数据泄露一一应用程序是通向加密资产交易所珍贵数据的门户。3.2.5 数据库防火墙集中式加密资产交易所通常用数据库(SQL的和非SQL的)存储
35、用户数据、订单簿、交易历史、管理配置、设置等。数据库防火墙是Web应用防火墙(WAF)的一种,可对数据库实施监视,识别并阻止专门针对数据库的,主要寻求访问存储在数据库中敏感信息的攻击。数据库防火墙还可以通过自身维护的日志监控和审计对数据库的所有访问。数据库防火墙通常是强化了安全的设备/软件,部署在数据库服务器内(挡在数据库服务器的前面)或靠近网关的地方(保护多个服务器中的多个数据库)。一些数据库服务器支持用安装在数据库服务器里的基于主机的代理来监控本地数据库事件。但是基于硬件的防火墙支持主机/网络监控,从而不会给数据库服务器带来任何额外负载。交易所还可以既部署硬件设备也部署软件代理,二者同时工
36、作。由于加密资产交易所用数据库存储关键财务信息,而数据的泄露对于交易所来说将是灾难性的,我们强烈建议部署数据库防火墙为关键数据库提供额外的安全保护。3.2.6 第三方组件和补丁使用第三方组件(TPC)已成为软件开发的事实标准,而且加密资产交易所一直都是这么做的。这些第三方组件包括开源软件(OSS)和商业现货(COTS)组件。被用作预制构建块的第三方组件可提供开箱即用的标准功能,使开发人员得以专注于开发产品特有的定制性能,从而缩短产品投放市场的时间并降低开发成本。尽管这些第三方组件往往被视为黑匣子,而且受审查的严格程度也低于内部开发的类似组件,但是这并不意味着它们没有风险。用户在采用第三方组件的
37、同时也继承了它们的安全漏洞。从历史的经验看,第三方组件的挑选和使用是一项纯基于功能的工程决策。随着使用第三方组件逐渐成为一种趋势,挑选和使用第三方组件时也必须考虑它们的安全性。针对第三方组件(包括开源软件和专有商业现货软件在内)报告的漏洞数量强有力地证明,管理由第三方组件带来的安全风险是用户的一项基本职责。2014年披露的Heartbleed(CVE-2014-01603),以及研究人员2015年在GNUC库中发现的安全漏洞(CVE-2015-75474)就是很好的例子。这些漏洞触发业界以前所未有的规模开展分析和补救行动,在软件行业掀起一股“补丁狂潮”。第三方组件在软件开发中被广泛使用,成为攻
38、击者进入未开发领地的引导者和邀请者。对于第三方组件不受控制随意使用的现状,必须以严格分析和充分考虑安全风险的方式来改变。更多信息请见NIST出版物:https:/nvl/ubs.nist.gov/nistpubs/SPeCiaIPUbliCatiOna/NIST.SP.800-40r3.pdf。3.2.7 点击劫持攻击和X-Frame选项加密资产交易所应该用“SAMEORIGIN”选项防御点击劫持。“XFrame”选项可以让内容发布人预防攻击者把他们的内容用在不可见帧中。“DENY”选项最安全,可防止当前页面在帧中的任何使用。有美这一安全问题的更多信息,请见:https:/OWaSP.org/
39、www-community/attacks/ClickjackinM。3.2.8 HSTS(HTTP严格传输安全)和安全套接字层(SSL)HTTP严格传输安全(HSTS)是一个Web服务器指令,告知用户代理和Web浏览器应该怎样通过最初发送并返回浏览器的响应标头来处理连接。这将给91炯DtSaUiy策略字段设置参数并强制给连接实施HTTPS加密,从而忽略旨在通过HTTP给该域加载任何资源的任何脚本调用。HSTS只是网络服务器或网络托管服务的一堆安全设置中的一个箭头而已。究竟应该怎样为自己的网站执行HSTS?如果你在内容结构中使用了子域,你将需要用一份通配符证书来涵盖“HTTPSONLYo否则的
40、话,你需要用一份经过域验证、机构验证或扩展验证的SSL证书来确保安全。请务必保证这些安装正确并工作正常。有关为网站启用HSTS的详细信息,需向托管服务供应商咨询。3.2.9 使用机器学习达到最佳保护效果机器学习技术在各大交易所的安全和诈骗检测领域获得了发展动力。以下是机器学习在加密资产交易所的主要用途。D流分析流分析检查资金正怎样被已知实体转移,同时把资金转移情况与先前已知的数据集进行比较。机器学习这样的技术可以用来检测潜在黑客活动。2)地址分类许多交易所采用了通过机器学习给钱包地址分类的方法。通过识别哪些钱包地址属于交易所钱包以及识别不同类型的个人钱包,交易所可以阻止黑客提取资金并保护用户免
41、受诈骗。例如,面对各种YoUTUbe“赠品”骗局,如最近来自Twitter黑客的骗局,Coinbase都能拦截资金提取。详细信息请见:https:/WWW.thever区202072021331499CoinbaSe-twitter-hack-elo-musk-bill-Rates-joe-biden-bitcoin-scan3)交易行为分析循环神经网络是可以展示资产在加密资产市场上表现的一种创新方法,正被交易所用来深入了解和预测特定投资者的交易模式。这种类型机器学习可以在一组特定投资者中发现他们进行资本投资时所遵循的模式,从而把具体投资者识别出来,然后根据得出的数据准确预测他们的未来投资方式
42、。这样的分析也可用于检测交易行为的异常和潜在的黑客活动。4)诈骗检测机器学习使用了由在反馈循环中相互支持的机器和人类分析师组成的一个预防系统。机器首先接受各种条件下的知名诈骗模式训练,从而掌握概括知识并在遇到类似模式时把它们识别出来的能力。人类分析师则在这一过程中逐步提高机器正确识别模式的能力,确保一切准确无误。3.2.10 HTTP公钥固定(HPKP)HTTP公钥固定(HPKP)是一种安全性能,可用来告知Web客户端把某一特定密码公钥与某一特定Web服务器关联,从而降低伪造证书的中间人(MiTM)攻击风险。这一性能已被从现代浏览器中移除,不再受支持。为确保传输层安全(TLS)会话所用服务器公
43、钥的真实性,公钥被封装在通常由发证机构(CA)签名的X.509证书中。许多为任意域名创建证书的CA得到Web客户端(例如浏览器)的信任。攻击者若攻陷一个CA,他们将能对各种TLS连接发起中间人攻击。HTTP公钥固定(HPKP)则可以告知客户端哪个公钥是属于特定Web服务器的,以此来帮助HTTPS协议躲过这种威胁。HPKP是一种“首次使用选择信任(ToFU)技术。Web服务器第一次通过特殊HTTP标头告知客户端哪些公钥属于它时,客户端把这一信息保留一定时间。客户端再次访问服务器时,它期望证书链中至少有一个证书包含自己己通过HPKP知晓其指纹的公钥。如果服务器给出的是一个未知公钥,则客户端应该向用
44、户发出警告。有关如何启用HPKP的信息,请见以下链接:https:/OWaSPQIgwwwcommunitvCOntroIS/CertificateandPllbIiCKeVPinningo3.2.11 使用启用了硬件安全模块(HSM)的钱包黑客曾成功攻破加密资产交易所的在线热钱包,从中偷走数百万美元(参见CSAGCR发表的“加密资产交易所卜大安全风险”:https:WWWCCSa.crmobilenews-detaili-289.html)0借助硬件安全模块(HSM)和相关安全操作把大笔资金存进冷钱包,已成为任何规模交易所工作的重中之重。HSM是保护和管理密码密钥并安全执行关键代码的一种物理
45、计算设备。这些模块以“外围组件互连”(PQ)卡或可直接连接网络的外部机架式设备的形式出现。HSM内置防篡改性能,可在发生物理破坏时擦除秘密内容。它们围绕安全密码处理器芯片以及网格等主动物理安全措施展开设计,旨在抑制旁路攻击或总线探测。这些设备在银行业和所有必须保护关键秘密的纵向行业中被大量使用。以下是研发硬件数字钱包解决方案的公司Ledger推荐的一种HSM架构:交 易 所 引图5分散式加密资产交易所(dApp)Ledger Blue2FA App交易所业务逻辑这里存在着不同的模块/服务:1)交易所引擎:请求支付命令(客户要求提取)。2)交易所业务逻辑:可查看所有客户余额、软/硬提取限制和支付
46、历史的应用程序界面(API)。4) 3)硬件安全模块:连接交易所数据中心服务器的PCI卡(如SafenetProtectServerHSM)o5) 1.edgerBlue:由个人身份证号(PIN)代码保护并始终保持安全状态的安全设备。只有企业最高层(CEPCTo)有权访问。6) 2-FAapp:用户手机(内含非对称密钥)上的外部第二因子信道。HSM本身围绕以下单元形成架构:D区块链开放Ledger操作系统(BOLOS)核:LedgerOS保护着所有密钥对的派生来源一一暴露给API是为了让内部业务app(如比特币钱包或撮合引擎一致性检查)都可以运行。这些app都经过线下测试和签名,并且在系统实时
47、运行时无法更改。2)速率限制器:为HSM得到授权可以签名的速度设置硬限制(如IOoO比特币/小时、15000比特币/天)。这是一个巨大的数字,最终将决定整个系统遭受破坏时的最大损失量。只有得到由LedgerBIUe签名的授权,才可以修改限制器的规则。3) 2-FA信道:每个签名请求都必须经过它验证的内部插件。它要求得到两个质询批准:一个来自交易所业务逻辑(“请把你的新业务数据发送给我,以便我来检查它是否与之前的系统状态一致”),另一个来自用户本身(“你确认你真的要这么做吗?)O4)比特币钱包app:包含为“未花费交易输出(UTXO)池(也可以换做以太坊钱包或任何其他加密资产)构建和签名交易的所有逻辑。详细信息请见以下链接:https:/WWW3.2.12 部署零信任架构零信任架构把所有用户视为潜在威胁,在用户能够通过适当身份验证并获得访问授权之前,阻止用户对数据和资源的访问。从本质上说,零信任架构允许完全用户访问,但是只允许用户具有执行工作所需要的最低限度访问权。设备遭到破坏时,零信任可以保证把损害控制在一定范围之内。零信任的概念尽管已经存在了十多年,但是支持它的技术刚刚开始进入