EOS区块链在主网上线后一跃成为了活跃度排名第二的公链,据统计,EOS上线至今的DApp交易额达140亿流水,新进场用户携大量资金助推了DApp的大火,但随之而来也暴露出了EOS竞猜类智能合约安全的严峻问题。经观察发现,最近发生攻击事件的频次越来越密集,并且同一个安全问题多次反复地出现。因此,在EOS主网账户数突破50万的今天,我们为大家盘点了EOS主网上线以来较为频繁和严重的安全漏洞,希望能够方便EOS社区了解和预防。
Part1EOSFomo3D狼人杀
背景
EOSFomo3D狼人杀是与以太坊上的Fomo3D相似的一款游戏。
攻击者账号:eosfomoplay1
攻击手法:游戏合约遭受溢出攻击
损失:60,686
始末
2018年7月25日,慢雾安全团队发出警告,EOSFomo3D游戏合约遭受溢出攻击,资金池变成负数。慢雾安全团队由此呼吁EOS智能合约安全需引起重视。于是狼人团队做了应急处置并上线了新合约之后,发生第二次攻击,被攻击者拿走60,686个EOS。
8月7日,EOS核心仲裁论坛对该次黑客行为仲裁后签发仲裁令,首先紧急冻结黑客的EOS账户:eosfomoplay1。在区块浏览器上可以看到,eosfomoplay1账户内EOS余额为61,117.0833EOS。
Part2EOSBet
背景
EOSBet是一款基于EOS开发并遭受过3次攻击的掷骰子竞猜游戏。
攻击者账号:aabbccddeefg;ilovedice123;whoiswinner1
攻击手法:RAM被恶意合约吞噬、游戏方未检验transferaction的调用方导致被假币套取真币、「假通知」漏洞
损失:未披露44,427.43020
始末
2018年8月26日,IMEOS观察到EOSBet项目方在主网电报群中反应其账户的RAM被一个合约恶意吞噬,随后游戏方宣布EOSBet暂时下架以防进一步的攻击。8月27日,游戏方在Medium发布该漏洞已暂时修复的声明,游戏网站重新开启。发生此事件之后,关于恶意合约吞噬RAM事件在Github上被提交多个issue和建议,最终这个问题得以解决。
EOSBet稍稍松了一口气并立下「要在24小时内达到210万交易笔数成为EOS上交易数最多的DApp」的Flag(如下图)之后,迎来了下一波猛烈的黑客攻击。
9月14日上午11时左右,黑客利用在EOS体系里发布的名为「EOS」的代币在EOSBet平台进行投注,而项目方的代码中没有检查收到的EOS是否是eosio.token产生的正经EOS。于是账户aabbccddeefg在实际上没有成本的情况下,在短短15分钟之内造成了项目方损失了44,427.4302EOS和投注产生的1,170.0321BET。随后这些EOS被转移到了交易所。
V神盘点以太坊2020年进步,包括PoS测试网及MakerDAO等:V神在推文中列出以太坊在2017年没有、但是在2020年拥有的东西: Uniswap;http://Tornado.cash;Status;MakerDAO;ZK Rollups(如Loopring),吞吐量超过2000 TPS;PoS测试网;叔块率< 10%,区块Gas上限为1000万;Gitcoin赠款。[2020/3/28]
9月17日,EOSBet宣布将存储在热钱包的75%的资金转移至冷钱钱包,从而提高资金安全。在未来的数周里,EOSBet也执行一系列的安全更新。然后......
10月15日,EOSBet再次遭到黑客攻击,资金被盗至Bitfinex。黑客账号ilovedice123利用了「假通知」漏洞,构造了Memo:92-chickndinner-uHruy5esdfuh3HC8,对EOSBet合约eosbetdice11进行攻击。
据慢雾安全团队的攻击流程图显示,本次攻击中黑客创建了两个账户:攻击账户ilovedice123和攻击合约whoiswinner1。游戏合约在apply里没有校验transferaction的调用方必须是eosio.token或者是自己的游戏代币合约。攻击账户ilovedice123向攻击合约whoiswinner1转账后,EOSBet合约的transfer函数被成功调用,误将攻击账户ilovedice123当成下注玩家,被套走了142,845个EOS。
对于这次攻击,慢雾安全团队发出了预警:EOS游戏DApp在处理transfer通知时需要校验transfer中的to是否为self,避免「假通知」漏洞。
据了解,项目方已经在交易所追回了本次攻击损失的EOS。
Part3Luckyos
背景
Luckyos是一个被攻击后停运至今的EOS游戏平台。
攻击者账号:guydgnjygige
攻击手法:随机数算法被破解
损失:未披露
始末
2018年8月27日,Luckyos旗下的石头剪刀布游戏随机数产生的规律被黑客破解,攻击者通过持续在指定时间出石头来赢得奖励,该办法有38%概率获胜。目前该游戏网站luckyos.io已经停运。
Part4EOSWIN
背景
EOSWIN是一个开源后被攻击的EOS游戏平台。
攻击者账号:lockonthecha
攻击手法:随机数算法被破解
损失:2,0004,00020,000
始末
2018年9月2日,EOSWIN同样的随机数被破解,损失2000个EOS。
9月15日,继EOSBet之后,EOSWIN也受到了「假币攻击」,黑客用不存在的「EOS」投注赢走了约4000个EOS,导致EOSWIN暂时关闭。
美股持续走高,道指较3月23日收盘点位上涨20.48%:美股盘中持续走高,道指涨逾1200点,较3月23日收盘点位上涨20.48%;纳指、标普500指数分别较3月23日收盘点位上涨约12%、16%。[2020/3/27]
11月11日,EOS.WIN将其平台DApp全面开源,此后慢雾安全团队观察到该游戏合约被攻击者攻破,约被盗20000EOS。慢雾安全团队表示发现攻击EOSDice和FFGame和EOS.WIN三个DApp的攻击者疑似同一攻击者和使用了类似的攻击手法,攻击手法目前正在进一步验证中。目前EOS.WIN正在修复相关合约。
Part5DEOSGames
背景
DEOSGames是一个被攻击仍在运行的EOS游戏平台。
攻击者账号:未知
攻击手法:随机数算法被破解
损失:4,000
始末
2018年9月10日,黑客破解了DEOSGames游戏平台下Dice的随机数算法,在不到一个小时的时间里,连续24次「赢得」奖金约2.4万美元。
随后项目方在社交媒体上发布一份简短的声明,证实其智能合约确实遭到黑客攻击,并且在声明中将这一恶意攻击称为「良好的压力测试」。
Part6HappyEOSSlot
背景
HappyEOSSlot是一个被攻击后恢复运行的EOS竞猜游戏。
攻击者账号:imeosmainnet
攻击手法:重放攻击
损失:5,000
始末
2018年9月12日,黑客账户通过在transfer方法中加入钩子开关,卡死reveal等动作成立重放攻击,导致HappyEOSSlot损失了5000个EOS。
Part7FairDice
背景
FairDice是DappPub游戏平台上的一款游戏。
攻击者账号:iloveloveeos
攻击手法:随机数算法被破解
损失:4,000
始末
同在9月12日,DappPub游戏平台上的FairDice也被同一个手法攻破,造成损失4,000EOS。黑客账户iloveloveeos利用游戏的随机算法和时间相关,拒绝了所有失败的开奖结果从而谋利。
iloveloveeos在11月15日晚用同样的手法攻破了LuckyGo。
Part8Newdex
背景
Newdex是基于EOS的去中心化交易所。
攻击者账号:oo1122334455;dapphub12345;iambillgates
动态 | 证券日报发布2018年区块链行业焦点盘点:证券日报发布《2018年区块链行业焦点盘点:乱象频发币圈狼藉监管筑篱》文章称,很多人将此轮区块链热潮与20年前的互联网泡沫相比。可以确定的是,区块链“泡沫”一定有,但区块链能否如互联网般改造世界,尚难下定论。监管部门去年以来重拳出击,规范资本市场“炒链”行为,严厉惩治ICO。从中央到地方,掀起防范以“区块链”名义进行非法集资的高潮,不断给区块链“排瘦身”。而瘦身后的区块链也正逐步回归理性——币圈萧条,市场开始重新审视以比特币为代表的加密数字货币的价值与意义;去芜存菁,越来越多的企业沉下心转向技术应用开发;人才成本也挤出“泡沫”,回归同行业正常水平。[2019/1/4]
攻击手法:黑客利用假币在交易所交易换取真币
损失:11,803
始末
2018年9月14日,在EOSBet爆出黑客利用假币投注赢取真币的安全漏洞后,当天下午两点,EOS合约帐户oo1122334455发行了一个名为「EOS」的token,并且将十亿假EOStoken全额分配给EOS账户dapphub12345,然后由该账号将假代币转入账户iambillgates。攻击账户用小额假EOS验证攻击成功后,于14:31:34至14:45:41进行大额攻击,分多笔共11800假EOS挂市价单购买BLACK、IQ、ADD,且全部成交。
Newdex发现异常后启动了应急措施修复系统,强制下架IPOS/EOS交易对,15:52-16:33期间停止运营。此次攻击造成Newdex用户损失11,803EOS,项目方表示承担所有损失。
Part9EOSBank(柚资银行)
背景
EOSBank(柚资银行)是一个支持EOS存款和租赁服务的平台,经历过攻击后,平台暂时只继续开放了租赁CPU服务。
攻击者账号:fuzl4ta23d1a
攻击手法:合约账号的owner权限被修改
损失:18,000
始末
2018年10月5日下午6时37分,EOSBank(柚资银行)合约账号eosiocpubank被攻击者修改owner权限,之后被转走18,000EOS到账户名为fuzl4ta23d1a的EOS账号。
随后该账号将所盗得的EOS转移至交易所,这笔资金现在被项目方申请冻结着。目前项目方只恢复了CPU租赁服务。
Part10WorldConquest
背景
WorldConquest是一个基于EOS并且类似于像素大师的游戏,目前游戏已停止运行。
攻击者账号:cryptoplease
攻击手法:黑客利用游戏缴税规则,拒绝后续的买家
损失:4,555
动态 | “区块链”一词入选“汉语盘点2018”国际词解读:人民网刊文《“汉语盘点2018”国际词解读》,“区块链”一词,与贸易摩擦、板门店、伊核协议等一起入选。文中称, 2008 年首次提出区块链概念以来,这项技术快速发展并在全球范围内广泛应用。在全球化、信息化和数字化时代,区块链代表了一种新的技术发展方向,为推动世界经济与国际合作提供了一个新的机会。[2018/12/11]
始末
2018年10月16日,猎豹旗下第三方大数据平台RatingToken监测到基于EOS开发的DAPPWorldConquest被黑客攻击。随后官方在其Discord发布公告确认被攻击的事实,黑客利用游戏缴税规则,拒绝后续的买家,导致游戏非正常结束,黑客拿走资金池中所有EOS,最后合约中仅剩0.0155个EOS。通过合约转账数据发现,被盗资金被转移至火币。
Part11EosRoyale
背景
EosRoyale依然是一个基于EOS的游戏平台。
攻击者账号:fortopplayx1;fortopplayx2;fortopplayx3;fortopplayx4;fortopplayx5;fortopplayxx
攻击手法:随机数被破解
损失:10,800EOS。
始末
IMEOS在Reddit发现EosRoyale项目方发布消息称团队钱包于10月26日遭到黑客攻击,总体损失大约11,000EOS($60,000)。原因已查明是随机数发生器的漏洞,黑客能够设法通过使用先前块的信息来计算随机数发生器算法的未来数量,从而从EosRoyale钱包中窃取60,000美元。
目前该漏洞已修复,团队完全重新构建了随机化算法,现在EosRoyale中的随机数基于分配期间的哈希块。
Part12EOSPOKER
背景
EOSPoker是一个基于EOS的BlackJack。
攻击者账号:未知
攻击手法:官方在拓展服务器时忘记将种子放入数据库中
损失:1,374.3750
始末
2018年10月28日凌晨,EOSPoker玩家发现游戏流水在上涨,但奖金池在减少。经查证后发现原因是官方在拓展服务器时忘记将种子放入数据库中,868590期游戏之后不再记录种子。因此,出现了玩家利用获胜的种子赢取奖池的情况。EOSPoker官方宣布,因自己的技术失误导致的损失将由官方承担,以后会不断地优化,避免类似事件再次发生。
事件后合计EOSPoker项目方损失1,374.3750EOS,229.0625POKERtoken。最终团队拿出了1,500EOS来弥补这次的损失。
Part13EOSCast
雅虎财经2018年2月7日加密峰会盘点:
1. 摩根大通区块链负责人Farooq:区块链将从根本上改变商业的运作;数字货币必须解决问题。
2.Blockchain CEO:数字货币最厉害之处,就是在与任何国家无关的情况下成为金融体系的一部分。
3.DCG(数字货币集团)创始人Barry Silbert:大多数币种没有真正的实用性;希望未来让DCG上市。
4.Fundstrat Global Advisors联合创始人Tom Lee:数字货币市场不仅仅是个“十年的故事”,它将持续存在30年。数字货币市场像新兴市场。如果相信区块链,那就必须相信比特币、以太坊以及所有的公链。
5.Indiegogo股权众筹和加密货币投资负责人:最终将需要与监管机构来一次有意义的、权威的对话。
6.Chain联合创始人兼CEO Adam Ludwin:人们其实希望对数字货币进行监管;以加密方式上发行传统货币以后将是这个领域中的很大一部分。
7.瑞波CEO:瑞波超过50%合作金融机构为日本公司,瑞波币将在3-5年内成功;长期看好比特币,认为比特币不会灭亡,但也不会解决付款问题。
8.Goodwin Procter律所合伙人Grant Fondo:不管某个项目看起来有多好,别把鸡蛋放在一个篮子里。
9.数字商会总裁Perianne Boring:数字货币投资者需要做好研究,同时要有批判性思维。[2018/2/8]
背景
EOSCast类似于第一个使用区块哈希值为开奖号码游戏的EOSPlay,游戏仅上线10小时就遭到了攻击。
攻击者账号:refundwallet
攻击手法:假EOS转账变种
损失:72,912个EOS
始末
2018年10月31日凌晨00:15,EOSCast游戏遭遇黑客攻击,被与EOSBet9月份时遭遇的同一种攻击手法被黑客转走72,912个EOS。区块链安全公司PeckShield跟踪发现,当天00:15开始,黑客账户refundwallet就尝试对EOSCast游戏合约eoscastdmgb1实施攻击。黑客先以「假EOS」攻击方式进行转账攻击8次,未能得逞,后又采用「假EOS转账变种」的方式成功攻击9次。
根据游戏规则,黑客分别以100、1,000、10,000个假EOS展开攻击,每次攻击可得到198、9,800、19,600个不等的EOS,在实施最后一次攻击时,游戏团队察觉到异常攻击,及时转走了奖金池仅剩的8,000个EOS。
最终,黑客共计获利72,912个EOS,根据EOS当下行情35RMB估算,EOSCast平台损失超255万RMB。受此影响,EOSCast游戏紧急下线,据了解,该游戏上线仅10个小时。
ECAF针对此事件发布了仲裁令,希望节点能冻结如下六个账户:refundwallet、jhonnywalker、alibabaioeos、whitegroupes、24cryptoshop、minedtradeos。
Part14EOSDICE
背景
EOSDice是一个两次被攻破但是依然坚持开源的EOS竞猜类游戏。
攻击者账号:jk2uslllkjfd;
攻击手法:随机数被攻破以及随机数再次被攻破
损失:2,545.11354,633
始末
2018年11月4日上午,EOSDice合约账户由于随机数被破解遭到黑客账户jk2uslllkjfd的攻击,即使游戏方在发现攻击后立刻将合约资金转移到安全账号,依然损失了2545.1135EOS,该笔资金被转至火币交易所。
11月10日上午,EOSDice再次因为随机数问题被黑客账号coinbasewa11攻击,损失的4633EOS被转入Bitfinex交易所。经慢雾安全团队分析,本次攻击者与11月8日攻击FFGameDApp的黑客是同一个,攻击手法也是由于使用了可控的随机数种子。
Part15EOSeven
背景
EOSeven是一款基于EOS的掷骰子游戏,项目方在众筹完成后不久出现了官方账户被大额转出SVN到Newdex上卖出的事件。严格意义上该次事件并不是黑客攻击,但团队的此行为也是一种安全隐患,因此收录在本次事件盘点当中。
攻击者账号:tuningfinish
攻击手法:内部成员进行大额转账
损失:未披露
始末
2018年11月4日晚,EOSeven官方账户出现大额转账,由eosevendice2转出6亿SVN至账户tuningfinish,后转回4.5亿至eosevendice2。随后tuningfinish在Newdex上出售了转出的SVNtoken,最后将所得EOS转入币安交易所。
隔天凌晨,EOSeven团队发布公告,称操作大额转账的人系团队内成员。团队表示所有的SVN将会从地址eosevendice2转移到eosevendice1,以防止类似事件再次发生。
团队持有的SVN将会被锁定6个月,同时,svntokenico1的CPU被质押给eosevendice1。此前募集到的EOS也质押给eosevendice1。
Part16FFGAME
背景
FFgame是基于EOS的一款游戏平台,在游戏开始正式运营之前遭到随机数破解攻击。
攻击者账号:jk2uslllkjfd
攻击手法:随机数破解
损失:1,332
始末
2018年11月8日凌晨,账户jk2uslllkjfdFFgame在FFgame游戏中不断获胜,FFgame平台随机数疑似被破解。截止攻击结束,奖池仅剩70余个EOS。被盗的EOS已被转移到火币交易所,项目方已向火币提交工单要求冻结。
账户jk2uslllkjfd曾于11月4号破解过EOSDice的随机数,这是其第二次盗币。
Part17HireVibes&AirDropsDAC
背景
HireVibes是基于EOS的求职平台,连接求职者、雇主、推荐人和招聘人员,通过同行推荐来填补空缺职位,从而创建一个拥有合理招聘费用的公平激励模型。近期正在发放空投,由于第三方代发空投平台AirDropsDAC的合约私钥泄露导致HVTtoken被盗。
攻击者账号:sym111111add;gizdkmjvhege
攻击手法:第三方代发空投合约私钥泄露
损失:2,514
始末
2018年11月12日,AirDropsDAC合约账户的大量HVT在非本人操作下转入到了sym111111add账户,随后该账户在去中心化交易平台Newdex套现2,514EOS,这笔EOS随后又被转入到gizdkmjvhege账户。
据IMEOS分析,账户sym111111add为新加坡节点EOSIO.SG的测试账户,由于私钥在Github泄露被黑客盗用,并利用此账号将盗得的HVT在Newdex交易换取2,514EOS,并且转移到账户gizdkmjvhege。
ECAF在昨天发出了冻结该账户的紧急仲裁令,但是账户里的EOS已经被转移到了OTCBTC平台。通过转账记录查询,除了HVTtoen,在同一时间段从AirDropsDAC合约账户丢失的还有ZKStoken。
emmm...简单地说这就是一个黑客利用两个泄露私钥的账户谋取EOS的故事。事发后HireVibes项目方也第一时间站出来,澄清了是第三方平台的漏洞,但是经此事件会更加小心地监督以及向第三方服务平台提醒,这件事情正在进一步调查,不过项目进度不会受到影响,HireVibesBeta版本会在2019年初发布出来。
MOREWallet早在钱包推行之初就万般强调助记词和私钥千万不能放在联网的设备里,设置仅自己可见也不行!如果怀疑私钥或助记词私钥泄露,可以进入钱包的管理账号页面重置私钥。
Part18LuckyGo
背景
LuckyGo是一款上线没多久就被攻击到下线的EOS竞技类游戏。
攻击者账号:iloveloveeos
攻击手法:随机数缺陷攻击
损失:未知
始末
2018年11月15日晚23时14分,LuckyGo玩家群有玩家反映投注赢了但是没有收到奖励。随后调查发现,当晚22时12分开始,账户iloveloveeos就从LuckyGo合约账户不断赢取奖励。才会造成LuckyGo合约账户被掏空,给不出正常玩家获胜奖励的情况出现。目前该游戏已暂时下线。
根据慢雾安全团队分析,攻击手法还是「随机数缺陷攻击」,攻击者iloveloveeos(恶意合约)在今年9月份因为用同样的手法攻击FairDice已经被曝光。
特别致谢
本文特别致谢慢雾安全团队和区块链安全公司PeckShield的情报分析!
慢雾安全团队为EOS开发者提供了《EOS智能合约最佳安全开发指南》,点击可查看。
参考
ECAFAO005仲裁令(https://eoscorearbitration.io/wp-content/uploads/2018/08/ECAF-Order-of-Emergency-Protection-2018-08-07-AO-005.pdf)
慢雾知识星球https://t.zsxq.com/qnEIqj6
累计薅走数百万,EOSDapps已成黑客提款机?-DAppReview(https://zhuanlan.zhihu.com/p/44676266)
EOSDApp充值「假通知」漏洞分析-慢雾安全团队(https://mp.weixin.qq.com/s/8hg-Ykj0RmqQ69gWbVwsyg)
Newdex关于假EOS刷币事件的公告(https://support.newdex.io/hc/zh-cn/articles/360015772052关于假EOS刷币事件的公告)
EosRoyale被盗声明
ECAFAO017仲裁令
ECAFAO018仲裁令
来源链接:mp.weixin.qq.com
本文来源于非小号媒体平台:
IMEOS
现已在非小号资讯平台发布1篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/3627074.html
EOS柚子漏洞风险安全
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
下一篇:
「币圈杨超越」?8大套路带你看清币真相!
金色财经比特币5月24日讯Facebook已经敲定明年推出自己的加密货币,他们计划在2020年第一季度之前在十几个国家建立数字支付系统,而且准备在今年年底之前开始测试其加密货币.
1900/1/1 0:00:00BitMEX首席执行官ArthurHayes疑似在BitMEX官方账户下暗示客户做空ETH后,这个最高可设置100倍杠杆的加密交易所惹恼了以太坊支持者.
1900/1/1 0:00:00由于数字货币市场不断下跌,许多散户投资者开始对这个蓬勃发展的行业失去兴趣。尽管如此,加密货币业务仍在不断发展和扩展。这主要适用于专业的交易平台.
1900/1/1 0:00:00原文阅读时长16分钟:https://medium.com/@Mat_Hargreaves/how-public-key-cryptography-will-continue-to-libera.
1900/1/1 0:00:00从FacebookATO漏洞到众多区块链安全事件,这些均表明,建立起防范于未然的安全检测体系,关乎一切科技公司的存亡.
1900/1/1 0:00:00原文阅读时长6分钟:https://medium.com/@Panama_TJ/we-need-a-new-encrypted-email-service-7e9a3b706cf3当谈到安全电子.
1900/1/1 0:00:00