一、被盗交易平台审查。腾讯文化
自2019年以来,黑客在线接单交易平台,数字货币交易平台已正式宣布,共有8起被盗事件,只有3起向用户进行了官方支付,其中一起是平台自有资产。
其中,安全问题突出的“隐视”号每月被盗两次,目前处于维修状态。
平台被盗的原因是交易平台的官方钱包被黑、硬失效、验证码劫持、私钥被盗、各种攻击混杂等等。归根结底,交易平台被盗的原因主要分为两类。
一是平台自身技术风险控制和防御系统的缺陷,黑客利用安全漏洞入侵平台窃取数字货币;另一个是缺乏平台的内部系统,导致用户的个人信息被窃取。在特别糟糕的情况下,甚至还有泄露和买卖个人信息的现象。
二、平台风险控制和防御体系的缺陷。
数字货币交易平台的技术风险控制系统缺陷主要是由于缺乏安全攻防测试和安全防御系统的部署。
不进行安全测试的数字货币交易平台,如墨卡托克斯(Mercatox)黑客,使用硬故障转移交易来获得平台服务器的“信任”。不难看出,该平台的技术审计和测试能力不足,这将导致这种低级别的安全事故。腾讯文化
如果该平台在合同上线前寻求第三方的安全检查,数以千计的EOS将不会被窃取。
当然,只有少数交易平台在安全性测试中存在缺陷,但这一环节需要更多关注。
大多数交易平台主要是在风险控制防御系统部署上的不足,如货币碧池、货币安全、黑客在线接单交易平台等。
BiKi在随后的官方声明中指出,黑客通过劫持来自第三方服务提供商的短信攻击了一些没有绑定谷歌验证码的用户。
这里暴露了其自身的风险控制系统问题,一是忽略了单个认证用户被劫持,二是在一定时间内不修改账户的登录和交易密码以及交易限制,三是没有建立用户安全意识。
幸运的是,碧池当时没有完成对这些提款的审批,否则损失会进一步扩大。
与互联网金融企业相比,数字货币交易平台在风险控制和防御体系方面存在不足。
以货币安为例,虽然货币安使用SAFU基金来承担此次事故的所有损失以避免用户损失,但这种赔偿并不完善,无法应对更大范围的安全事故赔偿,事故的主要原因是缺乏风险控制和防御体系。
首先,货币安全应对大规模系统攻击的防御能力不足,黑客如何获得大量用户应用编程接口密钥谷歌验证码?
一天内获得了大量用户密钥。如果黑客正在对网站进行网络钓鱼以获取用户账号、密码等信息,为什么钱璐没有早点找到网站的网络钓鱼网址和页面内容,或者他没有发现黑客利用官方网站服务器程序的漏洞在网站的一些页面中插入危险的超文本标记语言代码?
此外,叠加病毒等攻击手段的复合攻击防御技术还不够。
其次,货币安全风险控制存在主要问题。
尽管被盗的7000 BTC仅占BTC官方总持有量的2%,但这并没有掩盖货币安全平台在转移现金提款方面的风险控制问题。
三、缺乏内部系统。
此前,在《新股发行前后的巨大变化,交易所为何寻求“合规性”的文章中指出,数字货币交易平台具有多重身份。
黑客在线接单交易平台被盗反映了多重身份下内部系统功能的缺失。
黑客在线接单交易平台官员表示,此次异常支付事件并非由外部攻击造成,最初被认定为内部员工盗用数字货币的“私钥”。
这种情况反映出黑客在线接单交易平台的内部职能岗位权力过大,必要的职能分解没有在内部进行,必要的监管检查和b
80后的王某从中专毕业后创办了一家网络技术公司。他主要从事网吧计算机信息系统的维护。他先后与杭州市下城区、余杭区和江干区的100多家网吧签订了维护协议。
说起来,王某的事业发展很好。然而,王某仍然不满意,并对自己的专业有一个歪脑袋——成为一名“黑客”。自2017年12月起,王某与公司员工刘谋、李某合谋,利用公司获得的计算机控制权维护网吧系统,非法控制合作网吧的计算机信息系统,从云计算平台“挖掘”利润。
可信计算(Trusted Computing,简称TC)是一项由TCG(可信计算组)推动和开发的技术。可信的核心目标之一是保证系统和应用的完整性,从而确定系统或软件运行在设计目标期望的可信状态。可信并不等同于安全,但它是安全的基础,因为安全方案、策略只有运行在未被篡改的环境下才能进一步确保安全目的。通过保证系统和应用的完整性,可以确保使用正确的软件栈,并在软件栈受到攻击发生改变后能及时发现。总的来说,在系统和应用中加入可信验证能够减少由于使用未知或遭到篡改的系统/软件遭到攻击的可能性。
以PC机可信举例,通俗来讲,可信就是在每台PC机启动时检测BIOS和操作系统的完整性和正确性,保障你在使用PC时硬件配置和操作系统没有被篡改过,所有系统的安全措施和设置都不会被绕过;在启动后,对所有的应用,如社交软件、音乐软件、视频软件等应用可进行实时监控,若发现应用被篡改立即采取止损措施。
具体来说,可信计算技术对安全有如下提升:
可信主要通过度量和验证的技术手段实现。度量就是采集所检测的软件或系统的状态,验证是将度量结果和参考值比对看是否一致,如果一致表示验证通过,如果不一致则表示验证失败。
度量分为静态度量和动态度量两种。静态度量通常指在运行环境初装或重启时对其镜像的度量。度量是逐级的,通常先启动的软件对后一级启动的软件进行度量,度量值验证成功则标志着可信链从前一级软件向后一级的成功传递。以操作系统启动为例,可信操作系统启动时基于硬件的可信启动链,对启动链上的UEFI、loader、OS的image进行静态度量,静态度量的结果通过云上可信管理服务来验证,以判断系统是否被改动。
动态度量和验证指在系统运行时动态获取其运行特征,根据规则或模型分析判断系统是否运行正常。
可信计算另一个核心部分是可信根,通常是可信硬件芯片。可信计算通过芯片厂家植入在可信硬件中的算法和秘钥,以及集成的专用微控制器对软件栈进行度量和验证来确保可信。根据安全芯片和其上运行的可信软件基(Trusted Software Stack)分类,业界目前主流的可信计算标准主要有三种:Trusted Platform Module (TPM)、Trusted Cryptography Module (TCM)和Trusted Platform Control Module (TPCM)。
TPM/TCM的优势在于技术成熟、商业化条件好,产品商业化已经超过十年。微软和谷歌都有基于TPM的商业化的可信云方案。TPCM是基于国产化思路提出的可信标准。相对TPM和TCM,TPCM对硬件和可信软件栈(TSS:Trusted Software Stack)架构做了较大的改动。TPCM最大的优点是可以做主动度量,但在计算主机上尚未商业化和产品化成熟。
等保2.0将可信提升到一个新的强度。在等保一到四级都有可信的要求,主要在三个领域:计算环境可信、网络可信、接入可信。以计算环境可信举例,等保2.0中可信四级要求如下:
可基于可信根对系统引导程序、系统程序、重要配置参数和通信应用程序等进行可信验证,并在应用程序的所有执行环节进行动态的可信验证,在检测到其可信性受到破坏后进行报警,并将验证结果形成审计记录送至安全管理中心,并进行动态关联感知。
可信基本要求之一“基于可信根对系统引导程序、系统程序、重要配置参数和通信应用程序等进行可信验证”在业界已有方案,如基于TCM安全芯片的系统启动度量和验证。等保2.0中对这项要求没有明确提出动态的可信验证,原因之一是系统(如操作系统)过于复杂,很难形成完整的甚至局部的验证基准值,在工程实现上无法保障规则的完整性,误报、漏报无法控制,严重影响安全和用户体验。基于这个判断,传统的基于静态度量和验证的系统可信启动应该满足这项要求。
与系统可信不同,等保2.0四级对应用可信有明确的动态验证要求。再复杂的应用相对操作系统来说也简单得多,所以做应用动态验证在工程上是可行的,挑战是如何在不严重影响应用的功能、性能,即保证用户使用体验的前提下做到应用动态可信。解决这个问题的实质在于如何选择应用的度量对象,确定度量值,以及如何收集和管理验证基准值,或所谓的应用行为白名单。
应用可信的实现可通过只允许指定的应用,即所谓白名单应用在某个环境下(一般是物理主机、虚拟机上或容器)运行,非白名单应用无法在目标环境中运行;同时白名单应用受到监控,其运行行为一旦被发现异常,系统会根据异常行为的安全危害等级报警并采取相应措施,如阻断应用、删除应用、重启系统等。对环境中运行的应用进行限制可减少不安全的应用对云平台进行攻击的可能性,而对应用的监控可以及时发现攻击并做响应。
等保2.0并没有明确规范应该如何实现应用可信,原因之一是在现有的安全实践中没有很好的方式可以参考。可信最终是为安全服务的,如果应用的动态验证能够帮助及时发现攻击甚至阻止攻击,将攻击造成的危害降至最低,这样的应用可信就应该是有效的。
等保2.0要求的动态关联,可理解成在可信验证失败时对被监测的对象及时采取措施,阻断攻击并对可能遭受攻击的资产进行保护。实现的方式可通过安全管理中心有效地传递验证结果数据,使其他安全手段能够及时响应。
云平台安全依赖操作系统、数据库、虚拟化等技术,而这些系统/技术会存在原生的安全问题,使攻击者可利用系统/技术漏洞实现其攻击目的。同时,平台上的第三方系统软件、应用软件等可能会在安装或升级过程中被修改或植入攻击性模块,存在通过类似中间人攻击或内部攻击替换正版软件的风险。
阿里云提供了较完整的平台安全措施和强边界防御能力,同时通过可信来有效减小攻击面和攻击源,提升攻击门槛,使云平台安全升级。所谓可信,即云平台、云上应用以及云用户运行环境、应用,通过使用用户指定的软件而达到行为的可预判,以此来确保云平台上运行环境以及其上运行的应用的可信,来减少由于未知因素引发成功攻击的可能性。
可信整体框架
阿里云可信是依赖云平台硬件安全中的可信计算能力,通过自研开发的可信服务,实现云上的软件栈可信,即:云平台安全可信、云平台上运行的应用可信,达到云平台整体安全可信升级的目标。
云平台可信即确保云平台上运行的系统软件,如固件、操作系统(OS)都是安全的,保障平台上的系统不被篡改,即保持运行环境是所要求的运行环境。为实现这个目标,主要采用的手段是对系统软件的度量和验证,而度量和验证自身的可信通过云平台可信硬件来支持。可信硬件作为云服务器或接入用户服务器的可信根,通过在硬件内部实现最基础的安全功能如秘钥存储、安全算法实现从下到上逐级的可信链传递。
阿里云可信根采用在商业和产品化上成熟的TCM,通过使用装有TCM可信芯片的可信服务器作为系统的可信根逐级实现云平台以及其上业务的可信。在未来国有化和更强大的TPCM商业化成熟后,会过渡到用TPCM支持的可信服务器。
TCM能保障物理机的可信,而云平台的物理宿主机上一般需运行多个虚拟机,但一个宿主机通常有一个TCM芯片,为保证对虚拟机的度量,需要有效地对TCM资源进行分配;同时虚拟机会因业务的需要而迁移,为保证虚拟机度量的延续性,其可信相关的安全管理数据如最后的PCR值等应同步迁移到目标主机上,为实现上述需求,阿里云开发TCM虚拟化(vTCM)以安全管理TCM的资源和数据。
云平台可信实现框架图如下:
可信度量启动链+远程证明设计框架
阿里云对白名单应用的保护是通过静态度量和验证、动态度量和验证来实现的,同时采用动态关联感知技术进一步确保应用可信。
静态度量和验证在应用启动之前对其镜像进行校验,仅校验合格后才允许应用启动运行。校验的基准值为应用开发者发布的应用签名,或是可信服务提供的校验基准值。
动态度量和验证采用的是通过应用行为白名单来实现的。被度量和验证的应用行为是系统调用行为,包括进程启动、进程调用、网络访问、文件访问等。系统调用是应用的核心执行动作,一个被攻击过、不再可信的应用在执行实现攻击者目标时必须通过系统调用实现,也就是说,通过对系统调用的监测能够有效地发现应用异常,即不再可信。实现应用可信的具体方式是首先通过对白名单应用的分析,收集用户正常行为,并以此建立行为规则库,然后根据实时采集的应用行为数据,对比应用行为规则库进行判断。如果应用行为无法匹配任何一条规则,这个行为会被判断为异常,可信云决定是否告警或终止应用运行。
此外,动态关联感知技术通过对应用行为特征的判断,可发现应用在不调用白名单以外的情况下的应用异常。动态关联感知通过机器学习产生应用行为基线,在应用运行时采集了一段时间应用的行为,通过大数据分析和机器学习的方式形成应用行为特征,并以此对应用行为特征异常作出判断。
阿里云可信应用可信的实现方式如下:
可信和安全是相辅相成的,可信是安全的基础,但可信自身的实现也需要有安全机制,有安全手段配合才能更有效,例如操作系统的只读安全措施可以大大减少系统动态度量的范围,使系统动态度量成为可能。
目前,国际领先云服务商如谷歌的GCP和微软的AZURE都已有完整的基于静态度量/验证的云平台可信方案,AWS可信方案也在开发中。在国内,阿里云是首家具备可信能力的云厂商,其专有云平台研发了基于可信技术的云平台入侵检测系统,满足了等保2.0对于可信部分的高标准要求,这也是其成为通过等保2.0四级(可交付的最高等级)评测的原因之一。
在目前中国云计算可信发展初期阶段,安全硬件、服务器、系统、应用等厂商需要联合起来,形成协同共赢的生态,共同推动可信的深入发展,为构建更稳固的安全体系固本强基。