最近惊闻BSC上2个土矿又跑路了,金额在千万级别,有一个矿朋友还中招了,实在是看不下去,和大家谈谈,如何避免大部分土矿的坑。
土矿一般来讲,抽走资金一般这几个步骤:
通过高APY吸引你冲动梭哈,毕竟高APY都是真金白银支撑的,收益这么高大户早来了,正所谓的收益越高,风险越大
通过一些“所谓的”安全措施让你觉得风险很低
盗取资金之后马上换为非erc代币或者无法冻结的代币,然后等待混币机会逃走
看到了这个步骤,你应该明白了,如果能够做到:
不开源的土矿一律不碰,不管他APY写的多么诱人
开源的土矿,如果要参与,一定是在diff合约,检查变量参数之后,少量资金参与。
那么相信你能规避大部分风险,下面简单讲一下怎么diff合约,怎么检查参数,以及一些衍生的思考。
2023年上半年有100多个加密货币rugpulls损失约2.195亿美元:金色财经报道,PeckShieldAlert发推称,在2023年上半年,有100多个加密货币rugpulls损失约2.195亿美元,与2022年上半年保持相同的速度。[2023/7/21 15:50:10]
第一步:diff
这里以在线对比工具?https://www.diffchecker.com/?为例
注意一点,diff的合约需要是你真实要转币进去的合约地址
首先拿到原版的MasterChef代码:
https://bscscan.com/address/0x73feaa1ee314f8c655e354234017be2193c9e24e#code
接着这里以popcornswap为例:
美国司法部对Terra USD崩盘一事展开调查:金色财经报道,美国司法部对Terraform Labs的创始人Do Kwon名下的稳定币Terra USD崩盘一事展开调查。美国联邦调查局和纽约官员已经对前Terra成员进行了质询。[2023/3/14 13:02:07]
https://bscscan.com/address/0x584527ded17aceb3dc617c40b04e8fe9afc57096#code
分别吧代码复制到两边,开始diff
这里我保存了diff结果,可以直接点这个link:https://www.diffchecker.com/VqaCP3DK
像结果中字符串的修改,或者//后的内容都可以忽略
如上图这种,可以忽略
百度Apollo首发 “Apollo 001”系列纪念数字藏品:金色财经报道,据百度Apollo智能驾驶官方公众号,百度Apollo全网首发首款 “Apollo 001”系列纪念数字藏品,以百度汽车机器人为主体形象,每款对应一个百度Apollo自动驾驶重要里程碑事件。据悉,该数字藏品将于2022年7月8日 09:55发布汽车机器人家族全家福空投款。[2022/7/7 1:58:19]
如果是原版添加的代码,土狗删除的,一般也不重要,重点是土狗和原版代码不同的地方:
上图为关键差异,土狗修改了原版的migrator方法,还增加了个一个叫做preUpgrade的函数。
看到这里,如果你对合约一无所知,安全期间,就可以直接关闭页面保平安了。
这里简单分析一下差异,首先migrate方法,这个是sushiswap继承的代码,原版代码就有将池子里钱掏空的可能性。
灰度比特币信托负溢价达33.71%,创历史新低:金色财经报道,据Coinglass数据显示,灰度比特币信托负溢价达33.71%,创历史新低。以太坊信托的负溢价达34.01%,ETC信托的负溢价达47.73%,LTC信托的负溢价为37.5%,BCH信托的负溢价为8%。[2022/6/17 4:35:02]
popcorn这里,新的preUpgrade方法,是public的,代表所有人都能调用,就是一个非常可疑的点,理论上在migrator设置为恶意地址的时候能够让migrator掏空所有的钱。
第二步:检查变量
点击土狗合约的这个按钮:
检查migrator,owner等变量:
可以看到migrator是0,owner是一个timelock地址,土狗的一种套路是,声称自己有timelock,给出了合约地址,但owner并不是timelock的地址,那明显就是局了。
Multichain已支持Fantom进行fUSDT和USDC的跨链转移:金色财经消息,跨链互操作性协议Multichain(原AnySwap)已支持Fantom进行fUSDT和USDC的跨链转移。其中USDC现在可以在Fantom和以太坊、Arbitrum、Avalanche、Optimism、BNBChain、OKC、Polygon、KCC和Moonbeam之间跨链;fUSDT现在可以在Fantom和以太坊、Cronos、BNBChain、OKC、Heco、Polygon、BTTC、KCC和Avalanche之间跨链。[2022/5/31 3:52:13]
当然timelock合约,也可以做小动作,所以也需要做diff操作,这里他的timelock没有问题,就不赘述了
那么完成了上面两步,很多资深矿工可能会觉得,timelock有的,合约变量没问题,虽然有代码存在风险,但是有timelock啊,没事,冲tmd,对低级土狗而言,可能确实就无风险了,但很可惜,popcornswap是一个略高级的土狗。看我下面分解盗币过程:
项目方通过调用:
https://bscscan.com/tx/0x38f75296e3343228c0309f8c99a24ca4f4812372f2b032f38ce25ac5a992b768
preUpgrade方法,让自己的地址有了合约里token的transferFrom权限
看前面的代码可以发现,preUpgrade确实又这个功能,但他只会给migrator这个权限,而migrator又是0,修改migrator需要经过时间锁,那么他是怎么做到的呢?
答案是:项目方在部署合约后,加timelock之前,把migrator改成了自己的地址,并通过preUpgrade提前获取了里面所有token的allowance,然后再改回migrator,添加时间锁。
因为这些tx混在项目方添加池子的tx中,普通人根本不可能去检查一个池子之前的每一个tx,所以popcornswap得以在2小时内盗取2mil的代币。
这个作案手法也引起了我的思考,目前并没有有效的工具,能够查出一个合约地址里,tokenallow给其他地址的情况,因此非常难发现问题。普通的用户,没有能力,也不太可能发现这个端倪,甚至我相信在本次事件中,一些对合约代码有所了解的土矿老司机也一并翻车。
那么popcornswap的解析就讲到哪里,下面是我个人的一些思考,以及私货
后续思考
本次作案手法曝光之后,相信未来的土矿也很有可能利用类似的手法进行盗币,而对普通用户而言防不胜防,事实上最近2天bsc上就有2个矿翻车,金额还都不小。
作为交易所公链,不管是bsc,还是heco,他们的核心竞争力是什么?是去中心化吗?
我个人认为不是的。
bsc,heco等,他们最大的优势应该是1.低手续费2.交易所公信力背书
以bsc为例,作为一个类似DPos的设计公链,跨链桥非去中心化,以及上面的大部分资产都是币安发放的情况下,即使代码开源,谈何去中心化?
个人认为,反而应该反其道行之,引入类似EOS的仲裁机制,最大程度的保证用户在链上的的财产安全才是生存之道。
本次popcornswap事件以及最新翻车的土矿,币安目前都还在踢皮球阶段,要求用户去报案或者说我们在监视黑客地址等等,而不是想办法帮用户挽回损失,长此以往,当土矿跑路越来越多的情况下,请问币安,谁还会去用BSC?
如果类似事件在Heco或者其他交易所公链发生,而他们拥有类似的安全机制,保证了用户的资产安全,这样大部分散户才敢放心的在上面继续使用,毕竟,你作为交易所背书的公链,优势不是,也不可能会是去中心化。
希望所有交易所公链技术团队三思,通过代码升级保证自己公链的安全性来差异化竞争,也许还不太晚。
原标题:Popcornswap合约解析教你如何避免大部分土矿风险
作者:iNexusPro
标签:RATATOTORATORBRAT价格Crypto Gladiator ShardsTORI币Senator Karen
拜登走马上任,政策总体倾向积极,业界普遍预计拜登政府会对区块链行业更加友好,监管会更加宽松,利好行业发展。拜登区块链政策持谨慎乐观观点主要依据是:拜登团队里有不少数字货币的支持者.
1900/1/1 0:00:00你也许了解过比特币,但听到数字证券这个词可能还是会感到有些陌生。IDHub基金会主席、MagicCircle创始人曲明曾于专访中介绍道,以区块链底层技术为基础,数字证券可通过写入智能合约快速实现.
1900/1/1 0:00:00尊敬的ZT用户:“波卡狂欢节活动”活动已结束。活动奖励已于2月2日发放至用户ZT账户中,用户可登陆自己ZT账户,在资产中查看是否已到账。未达到活动要求的用户则不予发放奖励.
1900/1/1 0:00:00链闻消息,DeFi保险聚合器Armor.Fi宣布完成战略性融资,金额暂未披露,参投方包括ColliderVentures、DelphiVentures、DivergenceVentures、De.
1900/1/1 0:00:00Gate.io全新理财福利产品“天天理财”每天中午12点至少一场理财福利,赚主流币理财收益,天天理财天天乐!《Gate.io“天天理财”第112期ETH锁仓理财》于今日中午12点上线.
1900/1/1 0:00:00尊敬的欧易OKEx用户:欧易OKEx上线MirrorProtocol(MIR)具体时间如下:1.MIR充值:1月29日18:002.MIR/USDT的市场交易:1月29日20:003.
1900/1/1 0:00:00