网赚论坛

标题: 去中心化交易所以德(EtherDelta)被盗--我们如何从中吸取教训? [打印本页]

作者: dto27927jyt    时间: 2017-10-21 12:36
标题: 去中心化交易所以德(EtherDelta)被盗--我们如何从中吸取教训?
2017年9月24日,我注意到一个恶意的代码注入,黑客可以从多个受害者的钱包窃取私钥,然后手动榨干这些钱包中的资金。我将尝试描述这种攻击方式,交易所的安全漏洞如何为黑客大开方便之门,以及透露尽量多的攻击者的信息。






https://etherscan.io/address/0x8d12a197cb00d4747a1fe03395095ce2a5cc6819#code

EtherDelta是一个智能交易所 - 它并不需要传统的服务器架构,因为其后端体系结构是部署在Ethereum区块链上的智能合约。这是一个真正的Dapp,或者加密货币世界里所说的分布式应用程序。当用户在EtherDelta上进行“交易”时,他们必须创建一个可用于与此智能合约进行交互的钱包,或将现有的钱包连接到EtherDelta以便与智能合约进行交互操作。EtherDelta前端的功能跟MyEtherWallet.com网站非常像,因为您在浏览器中加载的网站是一个完整的钱包管理应用程序,它同时跟EtherDelta的所运行的智能合约类似。因此,EtherDelta的用户在使用该交易所时必须同时输入其钱包的公钥和私钥地址,这意味着他们的钱包私钥有可能通过从浏览器端注入恶意代码的方式被盗走。

简而言之,当你将资金充值到传统交易所时,意味着你信任交易所钱包或智能合约。如果交易所决定耍流氓,或者由于违规而被关闭,那么你的资金就冻过水了。当你使用EtherDelta时,你相信在浏览器端的钱包私钥(拥有私钥意味着钱包的控制权)是不会飞的,并且相信EtherDelta的智能合约固若金汤。作为开源的去中心化交易所,你可以在GitHub上阅读EtherDelta网站的整个源代码

还可以读到智能合约的完整代码。因此,您可以验证该服务不是以任何方式将您的数据或资金汇集到一个您控制之外的地方...但还是存在风险。这些风险分为两类:

2.有人还可以将恶意代码注入到真正的EtherDelta网站,从浏览器会话中窥探你的私钥,毫无限制地访问您的钱包。下面将详细描述这种攻击。


2漏洞所在


https://etherdelta.com/#LINK-ETH

https://etherdelta.com/#0x514910771af9ca656af840dff83e8264ecf986ca-ETH

https://etherscan.io/token/0x514910771af9ca656af840dff83e8264ecf986ca


下面说明了此种情况是如何发生的。

攻击者首先通过Discord和Slack上的加密货币聊天室获得用户的信任,然后给这些用户发送EtherDelta上未列出代币的链接。他们还处心积虑地将此链接发布在由Gitter上的官方EtherDelta聊天室中。该链接URL中的地址是攻击者刻意部署的恶意合约地址,其中合约名称包含一个JavaScript代码块。一旦合约名字显示在页面上时,JavaScript代码也就被“显示”,实际上是执行了一段代码,这样,黑客就完全可以访问EtherDelta用户的数据并进行操作。这是执行恶意合约的代码:

*f`[¤ ]DATA *






“寻码追迹”。(http://sina.lt/fcUw)

成为所有人的警钟。

经过这个事件,EtherDelta应该改进得更好,譬如显示人类可读和可识别的代币名称而不是合约地址。任何将产品变得更好的措施都会内带风险,确保你认识到即使是微小的改变也会带来风险。

加密货币用户须知:

将这些经验告诉你身边的人,我们可以一起来学习,安全为上。

<font style="color:rgb(62, 62, 62)">转自公众号 以太经典ETC





欢迎光临 网赚论坛 (http://www.caifuba.net/) Powered by Discuz! X3.1