本文来自韭菜财经。天下空气币一大抄,回滚成保护安全的一道闸门?
昨天,区块链的技术漏洞再次爆发。
有黑客成功利用了美链 BEC 的智能合约漏洞,转出了上亿枚BEC。。。。。
成功了转入了OKEx交易所进行抛售。天量的抛售也让一脸懵逼的BEC持有者恐慌性抛售,导致BEC的市值2元瞬间崩盘几乎于0。
而后OKEx发现异常,主动关闭了BEC的交易并进行了回滚。但仍有不少投资者因为受到了“暴击”表示要维权。
空气币太多,底层的技术抄都懒得抄全
许多人问,这么刺激的做法,黑客是怎么做到的?
其实从技术角度来说,它并不难。黑客利用 in-the-wild 手段抓取以太坊 ERC-20 智能合约中的“BatchOverFlow”这个整数溢出漏洞来进行攻击。从代码上看,正常来说两个数乘完是转出方应支付的总额,但是如果转超大额给多个地址的话,两个数乘完了就会超出uint256的范围,结果绕回0(或者一个很小的值),接着259行、261行按这个错误的值验证转出方的余额并进行扣除,随后262到265行对每个接收方增加原本指定的金额利用这个漏洞。于是黑客可以利用这个漏洞通过转账的手段生成合约中不存在的、巨量的 Token 并将其转入正常账户,账户中收到的 Token 可以正常地转入交易所进行交易,与真的 Token 无差别。
勺哥在这里用一句大白话来解释:假设你有个计算器,计算能力是10000以内加减乘除,超出后你就不会计算了。黑客就利用了这一点让你算100000….(N个0)乘以2000000(N个0),让你直接懵逼,然后把这笔计算器无法“显示”的巨款重新分配给他想给的“钱包”。
(⇀‸↼‶)
那么有人会问,这么浅显的漏洞,
美链
难道没有防范意识么?
勺哥告诉你,其实它是有的。
在
BEC
的合约上开篇就有检查溢出的乘法计算方法,
但并没有被使用。这里勺哥这里有两个假装正经的判断。
- 技术忘了。
这个很难,从勺哥对于区块链技术们的了解而言,校对审核对于一个负责任的技术团队来说是很严苛的,这并不算多么高深的漏洞,如此大意实属不应该。
- 美链的智能合约是抄来的。
~嗯~ o(* ̄▽ ̄*)o,这个嘛,因为你是抄来的,代码又没有注释,技术最讨厌的事就是看别人没有注释的代码。八成因为懒,所以抄来了也就那样了,懒得核对校正。反正都是交差割韭菜嘛。
以上两种猜测各位看官自己定夺。
好,下面更打脸的事儿来了。
勺哥本来想做一名吃瓜群众,结果群里有朋友告诉说,这个漏洞不只BEC一家,随后 PeckShield 团队利用自动化系统扫遍了以太坊智能合约并对它们进行分析。结果发现,有超过 12 个 ERC-20 智能合约都存在 BatchOverFlow 安全隐患。
这也验证了勺哥的猜测:
估计这些合约都是抄的一家。
天下空气币一大抄,回滚成保护安全的一道闸门?
作为这次
事件
的躺枪者,OKEx再次采取了回滚的方式来解决这次黑客的入侵。
这距离上一次OKEx因合约故障回滚也还没过去几天。虽然这次的回滚是一次善意的,挽回了许多不明就里抛售用户的损失,但这里面,也影响和扰乱了用户的正常操作。
(
不少用户在吐槽自己BEC挂单被冻结。
)
作为区块链交易所,回滚本就是一件违背常理的行为,即便是处于好意,也难免引来非议,
这对于OKEx来说,需要好好的反思。
另一方面,一个如此简单的漏洞竟然有众多项目的合约上中招。也侧面反映出了目前的这些区块链项目的虚火是多么的旺盛,大家都忙着圈钱,最要紧的技术反而成了陪衬。
写在最后:
之前听朋友吐槽,有些币忙着上币又不舍得花钱,最后钱包开发忘了加锁仓功能,导致本来计划的锁仓部分被提前抛售砸盘的故事,那会儿,还觉得是个笑话。
但这次经历了美链被黑客“瀑布”的事件,不由得让我们反思。
近一年以来,区块链大火,上大小交易所的币猛增,达到上千家,而这里面究竟有多少有技术累积和沉淀的?又有多少企业,能够真正有能力管理好自己的代币的安全?
勺哥常听老玩家开玩笑,上币太容易,骗钱项目太多。韭菜不够用了。螳螂捕蝉黄雀在后,韭菜被庄家割过后,也面临被黑客定向爆破的危险。
在此,希望已经做和即将做区块链项目的朋友们,不管你们处于什么目的,钱包的安全防范,一定要跟上,不然你们的钱可能还没来得及花,就要被黑客先替你们收着了。
可以预见的是,随着区块链技术不断的完善,在未来,那些没有技术的骗钱的“劣币”,迟早要被正规的“良币”所取代,勺哥只是希望,在这一天真的到来之前,请看紧你的钱袋子,别再被一些空气比所迷惑。
本文首发自韭菜财经。作者系韭菜财经签约作者 一小勺。