-
-
[讨论]以太坊智能合约Bug涌现,Okex、Poloniex、Coinone交易所暂停ERC20存款
-
发表于: 2018-4-27 14:13 3375
-
智能合约Bug涌现,Okex、Poloniex、Coinone交易所暂停ERC20存款
近日,以太坊智能合约漏洞不断涌现。今日,随着承载大批币种交易的智能合约批量漏洞再度曝光,Okex,Poloniex,Coinone和Hitbtc等多家交易所宣布暂停ERC20存款。
由以太坊智能合约溢出漏洞引发的安全事件并不是第一次。同样在本周,以太坊社区发起一项投票,意在反对恢复于去年Parity合约漏洞中锁定的已丢失的以太币。4月22日,由于BEC一段代码忘记使用safeMath方法,导致系统产生批量溢出漏洞,黑客利用该漏洞生成大量原本合约中不存在的代币。
以太币对战智能合约Bug
创建一个没有开发漏洞的以太币相当困难。今年年初,研究人员表示已经发现34000个以太坊智能合约漏洞,近日,一篇主要针对“ERC20智能合约批量溢出漏洞”的博客文章发布,并引发广泛关注。智能合约漏洞影响巨大,Okex宣布暂停ERC20存款,写道:
由于发现新的智能合同错误 - “Batchoverflow”(批量溢出),我们暂停了所有ERC-20代币的存款。黑客可以利用这个错误生成大量代币,并将其存入正常的地址,这使得许多ERC20代币价格易受黑客操纵。
Okex补充说:
为保护公众利益,我们决定暂停所有ERC-20代币存款,直到问题得到解决。此外,我们已联系受影响的代币团队进行调查,并采取必要措施以防止遭受袭击。
其他各大交易所也纷纷效仿。
与智能合约漏洞的“战斗”从未停止
对于以太坊的项目以及现有代币来说,黑客可以自由窃取、冻结或复制ERC20代币无疑是一场噩梦。以太坊项目及代币团队现在正在仔细审查他们的代码以查找漏洞。
智能合约漏洞导致代币出现明显转移迹象,受影响代币超30种。其中,受影响较大的币种包括Smartmesh(SMT)和美链(BEC)。数据显示,数千亿SMT在过去的24小时中被转移。
前不久(4月22日),BEC遭遇黑客的毁灭性攻击,天量BEC从两个地址转出,引发市场抛售潮。当日,有博主发布文章确认美链(BEC)代币陷入安全漏洞属实,并表示:
我们进一步运行我们的系统来扫描分析其他智能合约合同。研究结果显示,十多份ERC20合约也存在批量溢出漏洞。为进一步证实,我们已成功将一个易受攻击的合约(不公开交易)用作概念证明试验。
至于此次ERC20漏洞,虽然受影响遭攻击的币种知名度较低,但是漏洞潜在的风险和影响,并不局限于这些项目。
如果黑客利用智能合约漏洞,手中不持有任何代币但却能制造出大量代币,然后将其放到市场与其他代币进行交易。这将对代币的价格产生很大影响,甚至损害以太坊生态系统的信任。
随着EOS等竞争对手的入局,下一代区块链竞争正迅速升温,智能合约漏洞将成为以太坊无法承受的负担。
智能合约Bug怎样避免
智能合约安全事件频发引起的盗币问题引起外界关注。YeeCall团队通过对BEC、SMT智能合约安全漏洞分析,并提出技术解决方案,他们认为:
现在发现的漏洞中有很多代码是因为直接使用普通的加减乘除符号,缺少溢出判断,导致存在数据溢出隐患,可以通过彻查智能合约代码,使用library SafeMath解决数据溢出问题。
近日,微博研发副总经理Tim Yang发布微博指出:
最近ERC20转账安全问题,直接原因都是代码安全漏洞,由程序员背锅。但以太坊只是一个记录 DAPP 执行结果的区块链,本身并没有加密货币复式记账所需的 utxo 模型。重要的 Token 资产本身需要货币级别的安全程度,以太坊目前的设计更适合游戏积分之类的合约运行结果。
他强调,重要的 Token 资产不适合构建在 ERC20 体系基础之上
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)