据 Thenextweb 消息,去中心化预测市场平台 Augur 被曝发现重大漏洞,黑客可据此向用户发送被篡改的网页并骗取用户代币。幸好该漏洞被漏洞众测平台 HackerOne 的研究人员发现,目前 Augur 官方已修补了漏洞。
这类漏洞被称为框架劫持(frame-jacking),它操纵 HTML 代码来控制 Augur 客户端如何显示外部(如服务器)传来的数据。被框架劫持的用户将看到被黑客篡改过的页面信息,包括交易数据、钱包地址和市场行情。由此,用户将做出错误的决策,比如下注时向错误(黑客)的地址转账。
对于 Thenextweb 的这一说法,国内安全团队慢雾区在检查 Augur 代码后提出了更准确的说法。
慢雾区表示,这种攻击依赖一些条件,比如攻击者需要准备好一个页面链接(不是 Augur 链接),并无论通过什么手法能让安装了 Augur 的用户访问到,然后用户需要重启 Augur 应用,同时 Augur 应用里配置的 Augur 节点地址被替换掉,由此形成后续的攻击。其本质可以称为 MITM(中间人)攻击,即通过拦截正常的网络通信数据,并进行数据篡改和嗅探,而通信的双方却毫不知情。。
这类攻击在互联网中十分普遍。在区块链中可出现在项目 ICO 时,黑客通过域名劫持、web 漏洞之类的手段来篡改项目官网上的收款地址,此后项目募集到的资金便落到黑客手中。
而这次 Augur 之所以被盯上是因为,其客户端的用户界面(UI)采用了分布式存储设计,用户在本地电脑上存储了与软件操作相关的特定文件,导致了用户界面容易被黑客单点获取并进行篡改。
这个漏洞看起来简单,但在黑客未进行攻击时难以被发现;又因涉及的利益重大(Augur 当前市值 3.73 亿美元,在预测类加密数字货币中市场占有率超过 50% ),因此,Augur 给研究员提供这类漏洞平均价格三倍的奖励。
最后,这类网络层漏洞应如何预防呢?Bcsec安全团队建议,针对网络层的安全防御主要从 P2P 网络安全、网络验证机制两个方面来提升。如在网络的传输过程中,使用可靠的加密算法进行传输,防止攻击者对节点网络进行劫持;分布式应用在使用 JsonRPC(远程调用协议)时强制使用 https 传输,而不是 HTTP 协议进行传输;客户端在进行重要操作前做必要的验证,以确保信息传输的准确性和安全性。