Hotbit交易所受到网络攻击事件分析
根据Hotbit官方发布的消息,从4月29日8:00PM(UTC)开始,Hotbit遭受严重的网络攻击,造成一些基本服务瘫痪,恢复需要7-14天。
一、事件分析
攻击者向Hotbit发起了网络攻击,造成了服务瘫痪。攻击者还试图入侵Hotbit的钱包,Hotbit称被风险控制系统识别并阻止。攻击者在窃取数字资产失败后,恶意地删除了用户数据库。虽然存在备份,而且账户秘钥是加密的密文,但仍然存在用户信息泄露可能性。
交易所管理用户的资金,因此所有交易所,不管大小,都需要金融级别的安全。金融系统的身份管理,两地三中心的高可用性和灾难备份的能力,安全风险感知,7×24h 实时监测预警,数据安全和隐私保护等,是交易所必须建立的安全能力。
二、通付盾区块链安全知识课堂
本次攻击事件主要是由服务器漏洞引起的网络攻击,攻击者利用服务漏洞向交易Hotbit所发起攻击,造成服务瘫痪。在此次通付盾区块链安全知识课堂里,将介绍交易所面临的APT攻击、DDos攻击、API安全风险、DNS劫持的安全问题和防范手段。
APT攻击
高级长期威胁(Advanced Persistent Threat,APT),又称高级持续性威胁、先进持续性威胁等,指的是隐匿而持久的电脑入侵过程,通常由某些人员精心策划,针对特定的目标。其通常是出于商业或政治动机,针对特定组织或国家,并要求在长时间内保持高隐蔽性。
高级长期威胁包含三个要素:高级、长期、威胁。高级强调的是使用复杂精密的恶意软件及技术以利用系统中的漏洞。长期暗指某个外部力量会持续监控特定目标,并从其获取数据。威胁则指人为参与策划的攻击。
数字货币交易所的高级长期威胁一般是黑客在攻击之前对攻击对象的业务流程和目标系统进行精确的收集。在此收集的过程中,此攻击会主动挖掘被攻击对象身份管理系统和应用程序的漏洞,并利用电子邮件和其他钓鱼手段安装恶意软件潜伏等待成熟时机会,再利用0day漏洞或者交易所流程方面的漏洞进行攻击。比较著名的针对数字货币交易所的APT黑客团队包括CryptoCore(又被称呼为:“Crypto-gang”、“DangerousPassword”、 “Leery Turtle”,大概成功盗取了2亿美金) 和 Lazarus(大概盗取了5亿美金)。
安全建议
持续性的威胁需要交易所坚持不懈的防御。建议交易所的主要功能模块(交易,订
单,资金管理,冷钱包,热钱包,衍生产品,Soft Stacking等等功能模块)最好每季
度进行第三方安全渗透测试,或者至少每年进行一次第三方的全方位的安全审计。每一次功能添加或者修改在上线以前必须通过第三方审计。
交易所内部可以考虑成立一个红队(RedTeam)。交易所每一个工作人员必须通过安全培训,防止黑客钓鱼攻击,对于外部电子邮件的链接和附件没有经过安全部门检测不能打开。利用云服务(比如AWS,阿里云等等)的系统,应该使用云服务商提供的身份管理和访问控制系统(IAM)和API安全服务。跟踪了解APT的黑客团队的新动向,特别是他们利用的0day安全漏洞。对于交易所的各种服务器进行加固,公司的补丁管理必须作为公司的安全操作的标准流程。尽量利用冷钱包存储交易所的大部分资金。使用多签名的方法处理额度比较大的转账。
DDos攻击
分布式拒绝服务攻击(Distributed Denial of Service,简称DDoS)是一种基于拒绝服务攻击(Denial ofService,简称DoS)的特殊形式,是一种分布式的、协同的大规模攻击方式。
单一的DoS攻击一般是采用一对一方式的,它利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。
与DoS攻击由单台主机发起攻击相比较,分布式拒绝服务攻击DDoS是借助数百、甚至数千台被入侵后安装了攻击进程的主机同时发起的集团行为。数字货币交易所经常受到DDoS攻击。
安全建议
(1)制定拒绝服务响应计划:据全面的安全评估,制定DDoS预防计划。与小型交易所不同,大型交易所可能需要复杂的基础架构,并需要多个团队参与DDoS规划。当DDoS出现时,没有时间考虑采取的最佳步骤。需要预先定义它们,以便迅速做出反应并避免任何影响。制定事件响应计划是迈向全面防御战略的关键第一步。根据基础架构,DDoS响应计划可能会变得非常详尽。发生恶意攻击时所采取的第一步非常重要。需要确保数据中心已经准备好,团队知道他们的职责。这样可以最大程度地减少对业务的影响,并节省恢复时间。
(2)保护网络基础结构:只有采用多级保护策略,才能减轻网络安全威胁。这包括先进的入侵防御(IPS)和威胁管理系统,包括防火墙、VPN、反垃圾邮件、内容过滤、负载平衡和其他DDoS防御技术层。它们共同提供了持续、一致的网络保护,以防止DDoS攻击的发生。这包括以最高级别的精度来判断和阻止不正常的流量,以阻止攻击。大多数标准网络设备都带有有限的DDoS缓解选项,因此可能需要外包一些其他服务。借助基于云的DDOS解决方案,可以按使用量付费使用云安全服务提供的DDOS缓解和保护服务。除此之外,还应该确保系统是最新的,过时的系统通常是漏洞最多的系统。鉴于DDoS攻击的复杂性,如果没有适当的系统来识别流量异常并提供即时响应,几乎没有办法防御它们。在安全的基础架构和作战计划的支持下,此类系统可以最大程度地减少威胁。
(3)基本的网络安全:采取严格的安全措施可以防止业务网络受到损害。安全做法包括定期更改的复杂密码、反网络钓鱼方法以及允许很少的外部流量的安全防火墙。仅这些措施并不能阻止DDoS,但它们可以作为关键的安全基础。
(4)建立安全的网络架构:业务应创建冗余网络资源;如果一台服务器受到攻击,则其他服务器可以处理额外的网络流量。如果可能,服务器应在地理位置上位于不同的位置,因为攻击者更难以分散资源。
(5)了解DDOS可能出现的警告标志:DDoS攻击的一些症状包括网络速度降低,公司内部网路上的连接不正常或网站间歇性关闭。如果网路性能比平时减少,则该网络可能正在经历DDoS,因此交易所应采取行动。
API安全风险
交易所一般都会公开订单查询、余额查询、市场价格交易、限价交易等等API。API的安全如果没有管理好,黑客可以利用API安全漏洞盗取资金。一般可能的API安全漏洞如下:
(1)没有身份验证的 API:API必须有身份验证和授权机制。符合行业标准的身份验证和授权机制(例如OAuth OpenIDConnect)以及传输层安全性(TLS)至关重要。
(2)代码注入:这种威胁有多种形式,但最典型的是SQL,RegEx和XML注入。在设计API时应了解这些威胁并为避免这些威胁而做出了努力,部署API后应进行持续的监控,以确认没有对生产环境造成任何漏洞。
(3)未加密的数据:仅仅依靠HTTPS或者TLS对于API的数据参数进行加密可能不够。对于个人隐私数据和资金有关的数据,有必要增加其他在应用层面的安全。
(4)URI中的数据:如果 API密钥作为URI的一部分进行传输,则可能会受到黑客攻击。当URI详细信息出现在浏览器或系统日志中时,攻击者可能会访问包括API密钥和用户的敏感数据。最佳实践是将API密钥作为消息授权标头(MessageAuthorization Header)发送,因为这样做可以避免网关进行日志记录。
(5)API Token 和 API Secret 没有保护好:如果黑客能够获得客户甚至超级用户的API Token和APISecret,资金的安全就成为问题。没有对于API的使用进行有效的检测,黑客可能利用API进行多账户、多笔的转账。API的实时安全检测如果不能判断这种攻击,就会有损失。
安全建议
最常见的加强 API 安全性的方法:
(1)使用令牌。建立可信的身份,再通过使用分配给这些身份的令牌来控制对服务和资源的访问。
(2)使用加密和签名。通过 TLS,XMLEncryption,零知识证明等方法加密数据。要求使用数字签名,确保只有拥有权限的用户才能解密和修改数据。
(3)识别漏洞。确保操作系统、网络、驱动程序和API组件保持最新状态。了解如何全面实现协同工作,识别会被用于侵入API的薄弱之处。利用持续监控来检测安全问题并跟踪数据泄露。
(4)使用配额和限流。对API的调用频率设置限额,并跟踪其使用记录。如果API调用数量增多,表明它可能正被滥用,也可能是编程出了错,例如在无限循环中调用API。指定限流规则,防止API出现调用激增和拒绝服务攻击。
(5)使用API安全网关。API安全网关担当API流量策略执行点。好的网关既能帮助验证流量的使用者身份,也能控制和分析API使用情况。如果交易所服务器是部署在云上的,大部分头部的云服务提供商都有API安全网关解决方案或者第三方的MarketPlace上可以找到的API安全服务网关。
(6)交易所对API使用应加上IP限制,并识别同一IP使用多个API可能存在黑客风险,要特别注意防止重放攻击,关键API不允许重复提交调用。
DNS劫持
DNS服务是互联网的基础服务,在DNS查询中,需要有多个服务器之间交互,所有的交互的过程依赖于服务器得到正确的信息,在这个过程中可能导致访问需求被劫持,称为DNS域名劫持(DNS Domain Name Hijacking)。
劫持访问需求有多种方式:
(1)利用路由协议漏洞,在网络上进行DNS域名劫持。如BGP协议漏洞(BGP协议对于两个已经成功建立BGP连接的AS来说,基本会无条件的相信对方AS所传来的信息,包括对方声称所拥有的IP地址范围),将受害者的流量截获,并返回错误的DNS地址和证书。
(2)劫持者控制域名的一台或多台权威服务器,并返回错误信息。
(3)递归服务器缓存投毒,将大量有毒数据注入递归服务器,导致域名对应信息被篡改。
(4)入侵域名注册系统,篡改域名数据,误导用户的访问。
上述的攻击行为都会将用户的访问重定向至劫持者控制的一个地址。使用一个假冒的证书让不明真相的用户登陆,如果用户无视浏览器的证书无效风险警告,继续开始交易,就会导致钱包里的资金被盗。
安全建议
交易所应该采用技术手段,防止DNS劫持:
(1)选择安全技术实力强的大型域名注册商,并且给自己的域名权威数据上锁,防止域名权威数据被篡改。
(2)选择支持DNSSEC的域名解析服务商,并且给自己的域名实施DNSSEC。DNSSEC能够保证递归DNS服务器和权威DNS服务器之间的通信不被篡改。
(3)在客户端和递归DNS服务器通信的最后一英里使用DNS加密技术,如DNS-over-TLS,DNS-over-HTTPS等。
(4)用户应重视网络安全,不做不安全的操作,确保钱包安全。
(5)提高安全意识,不要越过HTTPS证书强制访问。
(6)开启HSTS功能。HSTS(HTTP Strict TransportSecurity)是浏览器支持的一个Web安全策略,如果开启了这个配置,浏览器发现HTTPS证书错误后就会强制不让用户继续访问。
(7)使用安全性更高的硬件钱包。
三、通付盾智能合约审计(BitScan)
通付盾作为领先的区块链安全服务提供商,为开发者提供智能合约审计服务。智能合约审计服务由自动化审计和人工审计构成,满足不同客户需求,独家实现覆盖高级语言层、虚拟机层、区块链层、业务逻辑层四个方面111项审计内容,全面保障智能合约安全。
智能合约自动化审计在通付盾云平台上为用户提供智能合约进行自动化审计服务。运用符号执行、形式化验证等智能合约分析技术,覆盖高级语言、虚拟机、区块链、业务逻辑四个层面一百多项安全风险检测项,保障智能合约安全运行。
通付盾也为客户提供高级别的区块链安全服务,区块链安全专家团队7*24小时为智能合约提供全生命周期的安全保障,服务包括:VIP安全审计服务、VIP合规审计服务、安全事故应急响应等。