不要点击不明链接,也不要在不明站点批准任何签名请求。
据慢雾区情报,发现NFT钓鱼网站如下:
钓鱼网站1:https://c01.host/
钓鱼网站2:https://acade.link/
我们先来分析钓鱼网站1:
进入网站连接钱包后,立即弹出签名框,而当我尝试点击除签名外的按钮都没有响应,看来只有一张图片摆设。
我们先看看签名内容:
Maker:用户地址
Taker:0xde6135b63decc47d5a5d47834a7dd241fe61945a
慢雾:过去一周Web3生态系统因安全事件损失近160万美元:6月26日消息,慢雾发推称,过去一周Web3生态系统因安全事件损失近160万美元,包括MidasCapital、Ara、VPANDADAO、Shido、Slingshot、IPO、Astaria。[2023/6/26 22:00:21]
Exchange:0x7f268357A8c2552623316e2562D90e642bB538E5,查询后显示是OpenSeaV2合约地址。
大概能看出,这是用户签名NFT的销售订单,NFT是由用户持有的,一旦用户签名了此订单,子就可以直接通过OpenSea购买用户的NFT,但是购买的价格由子决定,也就是说子不花费任何资金就能「买」走用户的NFT。
慢雾:Rubic协议错将USDC添至Router白名单,导致已授权合约用户USDC遭窃取:12月25日消息,据慢雾安全团队情报,Rubic跨链聚合器项目遭到攻击,导致用户账户中的USDC被窃取。慢雾安全团队分享如下:1. Rubic是一个DEX跨链聚合器,用户可以通过RubicProxy合约中的routerCallNative函数进行Native Token兑换。在进行兑换前,会先检查用户传入的所需调用的目标 Router是否在协议的白名单中。
2. 经过白名单检查后才会对用户传入的目标Router进行调用,调用数据也由用户外部传入。
3. 不幸的是USDC也被添加到Rubic协议的Router白名单中,因此任意用户都可以通过RubicProxy合约任意调用USDC。
4. 恶意用户利用此问题通过routerCallNative函数调用USDC合约将已授权给RubicProxy合约的用户的USDC通过transferFrom接口转移至恶意用户账户中。
此次攻击的根本原因在于Rubic协议错误的将USDC添加进Router白名单中,导致已授权给RubicProxy合约的用户的USDC被窃取。[2022/12/26 22:07:00]
此外,签名本身是为攻击者存储的,不能通过Revoke.Cash或Etherscan等网站取消授权来废弃签名的有效性,但可以取消你之前的挂单授权,这样也能从根源上避免这种钓鱼风险。
慢雾:警惕QANX代币的双花攻击风险:据慢雾区消息,近期存在恶意用户利用QANX代币的转账锁定、解锁功能(transferLocked/unlock)触发的事件记录与正常使用transfer功能转账触发的Transfer事件记录相同而进行双花攻击。
慢雾安全团队建议已上架此币种的平台及时自查,未上架的平台在对接此类币种时应注意以上风险。
QANX: 0xaaa7a10a8ee237ea61e8ac46c50a8db8bcc1baaa[2022/3/26 14:18:46]
查看源代码,发现这个钓鱼网站直接使用HTTrack工具克隆c-01nft.io站点。对比两个站点的代码,发现了钓鱼网站多了以下内容:
慢雾:Cover协议被黑问题出在rewardWriteoff具体计算参数变化导致差值:2020年12月29日,慢雾安全团队对整个Cover协议被攻击流程进行了简要分析。
1.在Cover协议的Blacksmith合约中,用户可以通过deposit函数抵押BPT代币;
2.攻击者在第一次进行deposit-withdraw后将通过updatePool函数来更新池子,并使用accRewardsPerToken来记录累计奖励;
3.之后将通过_claimCoverRewards函数来分配奖励并使用rewardWriteoff参数进行记录;
4.在攻击者第一次withdraw后还留有一小部分的BPT进行抵押;
5.此时攻击者将第二次进行deposit,并通过claimRewards提取奖励;
6.问题出在rewardWriteoff的具体计算,在攻击者第二次进行deposit-claimRewards时取的Pool值定义为memory,此时memory中获取的Pool是攻击者第一次withdraw进行updatePool时更新的值;
7.由于memory中获取的Pool值是旧的,其对应记录的accRewardsPerToken也是旧的会赋值到miner;
8.之后再进行新的一次updatePool时,由于攻击者在第一次进行withdraw后池子中的lpTotal已经变小,所以最后获得的accRewardsPerToken将变大;
9.此时攻击者被赋值的accRewardsPerToken是旧的是一个较小值,在进行rewardWriteoff计算时获得的值也将偏小,但攻击者在进行claimRewards时用的却是池子更新后的accRewardsPerToken值;
10.因此在进行具体奖励计算时由于这个新旧参数之前差值,会导致计算出一个偏大的数值;
11.所以最后在根据计算结果给攻击者铸造奖励时就会额外铸造出更多的COVER代币,导致COVER代币增发。具体accRewardsPerToken参数差值变化如图所示。[2020/12/29 15:58:07]
查看此JS文件,又发现了一个钓鱼站点?https://polarbears.in。
如出一辙,使用HTTrack复制了?https://polarbearsnft.com/,同样地,只有一张静态图片摆设。
跟随上图的链接,我们来到?https://thedoodles.site,又是一个使用HTTrack的钓鱼站点,看来我们走进了钓鱼窝。
对比代码,又发现了新的钓鱼站点?https://themta.site,不过目前已无法打开。
通过搜索,发现与钓鱼站点thedoodles.site相关的18个结果。同时,钓鱼网站2也在列表里,同一伙子互相Copy,广泛撒网。
再来分析钓鱼站点2:
同样,点击进去就直接弹出请求签名的窗口:
且授权内容与钓鱼站点1的一样:
Maker:用户地址
Exchange:OpenSeaV2合约
Taker:子合约地址
先分析子合约地址,可以看到这个合约地址已被MistTrack标记为高风险钓鱼地址。
接着,我们使用MistTrack分析该合约的创建者地址:
发现该钓鱼地址的初始资金来源于另一个被标记为钓鱼的地址,再往上追溯,资金则来自另外三个钓鱼地址。
总结
本文主要是说明了一种较为常见的NFT钓鱼方式,即子能够以0ETH购买你所有授权的NFT,同时我们顺藤摸瓜,扯出了一堆钓鱼网站。建议大家在尝试登录或购买之前,务必验证正在使用的NFT网站的URL。同时,不要点击不明链接,也不要在不明站点批准任何签名请求,定期检查是否有与异常合约交互并及时撤销授权。最后,做好隔离,资金不要放在同一个钱包里。
原文标题:《「零元购」NFT钓鱼分析》
撰文:Lisa
来源:ForesightNews
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。