DEF:DeFi安全篇:合约留后门,无脑授权有风险|烤仔星选

很多用户在参与DeFi流动性挖矿的过程中,需要授权合约,但大家可能有所不知,如果你不小心授权了某些不靠谱的合约,钱包里的币就危险了。

之前就有人在Twitter上讨论过授权合约被钓鱼的案例,因不小心授权某些开了后门的合约,有人一夜之间被盗走价值14万美金的UNI。这个故事的主人公名叫JhonDoe,去年九月,他参与了Unicats收益农场,当时他对这个项目还蛮看好的,觉得它可能会成为下一个YFI。

接下来,Jhon打算质押UNI,然后收到了MetaMask钱包的提示,“需要授权合约无限使用UNI”。授权是在DeFi挖矿中是很常见的一个操作,所以他就没细看。

Delphi Labs研究员:针对加密资产经纪人的拟议法规明确将参与DeFi的各类人员定性为经纪人:金色财经报道,Delphi Labs研究员lex_node在社交媒体X(原推特)上称,针对加密资产经纪人的拟议财政法规刚刚发布,明确将参与DeFi的各类人员(包括与钱包通信的网站运营商)定性为经纪人。许多拥有美国用户的DeFi网络应用程序将需要跟踪用户的损益并每年向他们出具税务报表。这可能会对在美国使用P2P协议造成毁灭性打击。它甚至会影响以太坊,因为它可以与智能合约一起使用。此外,猜测KYC和税务报告将包括Metamask,还将包括AMM等网络应用程序的运营商,以及潜在的DAO。[2023/8/26 12:58:13]

质押UNI之后,挖出来一些MEOW,他觉得赚的差不多了,可以收菜收工了,就把资金都撤回了自己的钱包。撤走资金以后,Jhon以为钱都放在自己钱包里就可以高枕无忧了。殊不知,这个合约留了后门,一旦他授权了这个合约使用自己的token,即使他从挖矿池子中撤走资金,这个合约任何时候都能调用他的token。第二天醒来以后,Jhon发现自己一半的UNI都在未通过自己授权和签署交易的情况下被转走了。Jhon一下子就懵了,他钱包的私钥从没有泄露过,钱包也没有漏洞,自己并没有操作过转账,钱好好放在钱包里还能被转走?排除了种种因素,推测出最有可能导致丢币的原因是:以太坊网络上最流行的token使用的ERC20标准设计中的一个已知但经常被忽略的漏洞。这个UniCats是个什么项目?为什么就能轻轻松松盗走别人钱包里的币?这让以后我们DeFi挖矿还敢挖吗?“小猫钓鱼”

Terra链上DeFi锁仓量跌至16.3亿美元:金色财经消息,据DefiLlama数据显示,当前Terra链上DeFi锁仓量跌至16.3亿美元,近24小时减少23.36%。在公链中仍排名跌至第9位。目前,Terra链上DeFi锁仓量排名前3的分别为:Anchor(10.1亿美元,近24小时减少62.21%)、Mirror(1.09亿美元,近24小时减少51.90%)、PylonProtocol(9262万美元,近24小时减少41.76%)。[2022/5/13 3:12:32]

UniCats是一个类似Yam和Sushiswap的DeFi衍生品项目,抄袭抄的赤裸裸的,连前端界面都和Sushiswap完全一样,除了可以挖平台代币MEOW之外,还可以挖UNI等其它代币,在2池中还可以质押UNIOW和UNI的LP代获得MEOW代币。为什么这个项目会选择UNI呢,因为当时Uniswap发币,很多Uniswap的老用户都免费领到了一堆UNI空投,大家不用专门买UNI,会有比较低的参与门槛。JhonDoe是参加这个协议的用户之一,当时DeFi的fomo情绪很浓,很多人都说“审计是为新手准备的”,所以进了这个坑也很难怪他。JHON先后在UniCats合约中质押了两笔UNI,价值分别为$17K、$15K,质押的操作要求他准许UniCat合约对钱包里UNI代币的无限制访问。可能是因为Jhon看到大家都这么做,每个人都要一开始点击授权合约,所以没有对此有任何疑虑。一开始还挺好的,收成不错,赚了一些MEOW。耕种一天之后,Jhon开始从Unicats合约中解押自己的UNI。链上记录:https://etherscan.io/tx/0xaf90d9ff2e9dc63ef6c6082a18214f991cc52493b0cc5c47d84590faac798f42https://etherscan.io/tx/0x751ae0fba597496f057426672fb736efdc837aa0860f1d626b4e7dd6e9052c80收获颇丰,又入袋为安,是一次很成功的经历,他就放心地睡觉去了。之后的事情,我们在上文也提到了。之后项目方表示:“出了bug”、“被黑客入侵”、“项目方非常努力”...换句话说就是,他们希望这个项目有成功的未来,现在正在“把这个美好的项目留给社区”,然后就卷款删号跑路了。除了Jhon还有一些用户也被坑了,甚至有的人还没来得及撤出资金。

数据:以太坊上DeFi协议总锁仓量765.6亿美元,环比下降2.04%:据欧科云链OKLink数据显示,截至今日16时,以太坊上DeFi协议总锁仓量约合765.6亿美元,环比下降2.04%。

其中锁仓量排名前三的协议分别是Compound?84.9亿美元(-2.4%),WBTC?82.8亿美元(-6.23%)以及Maker?78.1亿美元(-7.68%)。[2021/4/20 20:40:25]

开发人员跑路前在Tg群发的消息贪婪的“猫”

UniCats合约的有一个功能:setGovernance,有人读的未经审核合同可能掠过这部分,因为它是相当流行的有智能的管理重点和管理地址合同。

setGovernance是开发者Whiskers用来直接从用户帐户中提取资金的功能。函数接收两个参数:一个地址、一些数据,需要将_governance设置为UNItoken地址,并为数据传递函数transferFrom,然后会触发UNI合约,要求它代表用户将资金转移到UniCats合约。实际上,transferFrom的调用者是UniCats合约,像刚才我们提到的Jhon,他已经批准合约随意使用自己所有的UNI资产,合约会将Jhon的UNI资产转移到合约中相同的trasnferFrom,然后从他的钱包中盗取资金。当UNI合约收到此项调用时,会尝试这项请求不会遇到任何错误。所有的转账都会通过,因为Jhon确实授权了合约来处理他的资金。资金从Jhon的帐户中转到UniCats合约中,然后再转给Whisker。所以关键点就在于Jhon对UniCats合约的授权。除了Jhon之外,这个合约也有其他一些受害者,比如另一位用户也是通过完全相同的过程损失了1万个的UNI,他质押在UniCats中的资金全被删除了,根本无法提现。

跨链借贷DeFi项目FilDA上线MDX借贷功能:据FilDA团队消息,3月9日19:00,FilDA将上线 MDX 借贷功能。

据了解,FilDA是基于HECO的跨链借贷DeFi项目。 FilDA于2021年1月5日晚20:00开启创世挖矿Fair launch,首发HUSD、HBTC等17种资产借贷功能,同时也是HECO首个公开平台各项APY数据,存借双向实时透明数据的借贷项目。FilDA 平台存借款总额高峰值突破12亿美元,FilDA LP 峰值超过3000万美金。FilDA项目无募资,无预挖,致力于HECO首选的用户友好型的DeFi借贷平台。[2021/3/9 18:29:22]

有一个信息大家需要知道,即使你地址余额为0,这个无限批准的风险都还在,也就是说UniCats随时都能把你的钱拿走。只要你没有撤消批准,或者这个账户/地址之后完全废弃再也不用了,就会随时会被攻击。在盗取了用户的资金之后,UniCats项目方将UNI换成ETH,然后将ETH被转移到Whiskers控制的帐户中,接着又以每次100ETH的方式存入TornadoCash。练习钓鱼

DeFi项目y3d Protocol将开启y3d挖矿,首次开放矿池为yCrv:DeFi项目y3d Protocol宣布于北京时间周三凌晨3:00开启y3d挖矿,首次开放的矿池为yCrv。y3d项目结合了yam和p3d的机制,用户抵押的资产可以同时挖出y3d和crv,并且在取出时会收取5%的yCrv作为合约的利润平均分给其它矿工。y3d作为社区治理代币,一共仅发行21000枚,并且矿池的crv代币收益将会参与回购销毁。截止目前,合约中已经抵押了超过20000枚yCrv。[2020/8/25]

在UniCats项目方发起攻击之前,Whiskers还做过一些链上的练习,创建了一个单独的合约和管理员帐户,以确保黑客攻击能够正常工作。在此交易中,Whiskers尝试使用相同的setGovernance调用,直接从合约中提走少量UNI,从合约中获取2.75UNI。这个是第一阶段,UniCats合同本身的资金被耗尽。后来,该帐户执行另一种转账练习,它滥用了baDAPProve漏洞,由Tornado现金资助的帐户将少额UNI直接转换为ETH。这些练习运行了几个小时之后,才发起了正式的攻击。正式攻击的方式和练习的方式基本上是差不多的,都是分两个阶段。练习攻击的记录:https://etherscan.io/address/0xcdd37ada79f589c15bd4f8fd2083dc88e34a2af2回顾曾经与Unicats进行过互动但尚未拒绝UniCats使用其令牌的每个帐户,在它们这样做之前都仍然很脆弱。即使是那些只批准了令牌但从未实际发送过任何资金的人。在直接抽走UniComp合约的同时,whiskers能够在Uniswap、SushiSwap和Balancer上获取17KUNI以及押注LP代币的UNI/ETH。。在第二阶段,使用baDAPProve漏洞,Whiskers总共捞了6万UNI。这些钱是从大概30个账户中取出来的,损失最大的是JhonDoe,总共损失了37KUNI,当时价值约12万美元。从他们账户中拿走的资产比他们原本在协议中质押要多,因为Jhon的UNI并不是全部质押进合约中挖矿了。每一个曾经和Unicats交互过,并且授权UniCats使用自己代币的账户都随时有被攻击的风险,哪怕仅仅只是授权过但从没有转过资金。你可能会觉得这个故事中的JhonDoe很笨,但其实他在DeFi领域还挺有经验的,他的地址有超过1600笔交易。这是一场很“完美”的攻击,需要无限使用的授权,很少有人真正了解其中的含义。在大环境的fomo情绪下,每一个投资者都梦想暴富,渴望自己找到下一个YFI,黑客就是从中利用了这些因素以及这些系统经常试图隐藏的复杂性达到目的。如何保护自己免受攻击

我建议,参与DeFi时,只授权可信任的合约,如果是去体验新项目,用的资金要控制在自己能承受的最大损失之内,以将风险最小化。这次攻击的根源在于ERC20的工作方式以及它的一些限制,这个限制仅存在于ERC20协议中,其它的协议标准还没有这个问题,但是由于ERC20仍然是最受欢迎的token标准,所以大家有必要了解一些策略来避坑:首次与未知的DeFi合约交互时,要先做研究。诸如MetaMask这样的钱包有一个功能是,可以自己设置最大批准的金额。如果你不完全信任一个DeFi合约时,就可以提前进行设置,把风险控制在自己能够承担的范围之内。

如果你已经授权了一些DeFi合约,而且有一些顾虑,不太确定会不会有风险,就可以用工具撤销授权,我给大家介绍几个工具:https://approved.zonehttps://revoke.cashhttps://tac.dappstar.io/#/未来DeFi和ERC20都会继续发展壮大,建议大家好好学习,了解清楚这些复杂的金融系统,保护好自己的钱袋子,注意安全!Reference:zengo.com

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-10:147ms