*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。
EOS,是专门为商用分布式应用而设计的一款高性能区块链操作系统,是一种新的区块链架构,旨在实现分布式应用的高性能扩展。EOS的发布,被誉为区块链3.0时代的到来。
类似于区块链2.0时代的以太坊技术,EOS同样支持部署和运行智能合约。EOS的智能合约虚拟机基于WASM,即Web Assembly,它是谷歌、苹果、微软等众多公司同时支持的一种中间代码(字节码), 用于在浏览器中高效执行原本javascript引擎执行的本地逻辑。常用语言(c/c++等)编写的程序可以编译成wasm字节码,也就是说EOS智能合约兼容所有用c, c++等高级语言编写的程序。同时wasm字节码既可以编译成机器码后执行,又可以使用解释器直接执行, 兼容性和性能兼顾。
在EOS智能合约执行过程中,需要消耗EOS节点的cpu和内存资源,这些资源按照交易发生时的CPU资源和RAM资源价格,支付给EOS节点,从前一段时间被爆炒的RAM价格就可以看到RAM的稀缺性。
漏洞危害
本次发现的漏洞,恰好会导致用户账户内的RAM可能被恶意消耗,引发直接财产损失。
恶意EOS合约存在吞噬用户RAM的安全风险,需要引起各大交易所、钱包、token空投方、DApp、用户等的警惕,避免遭受损失。
披露过程
安全起见,我们已经通知blockone 和慢雾,漏洞细节后续将在「美图区块链实验室」公众号、FreeBuf及其它媒体平台披露。
防御手段
相关项目方在做转账操作时可通过命令行 "cleos get code" 判断目标地址是否为合约地址,避免RAM被恶意吞噬导致损失。
另外在问题未解决之前,可以减少用来转账的账户持有的 RAM 数量,尽可能避免遭受损失。
如发现转账过程中RAM使用异常,可以第一时间联系我们:security@meitu.com。
美图区块链实验室&美图安全应急响应中心联合声明
*本文作者:美图应急响应中心,转载请注明来自FreeBuf.COM