🎉 #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 联合推广任务上线!
本次活动总奖池:1,250 枚 ES
任务目标:推广 Eclipse($ES)Launchpool 和 Alpha 第11期 $ES 专场
📄 详情参考:
Launchpool 公告:https://www.gate.com/zh/announcements/article/46134
Alpha 第11期公告:https://www.gate.com/zh/announcements/article/46137
🧩【任务内容】
请围绕 Launchpool 和 Alpha 第11期 活动进行内容创作,并晒出参与截图。
📸【参与方式】
1️⃣ 带上Tag #Gate Alpha 第三届积分狂欢节 & ES Launchpool# 发帖
2️⃣ 晒出以下任一截图:
Launchpool 质押截图(BTC / ETH / ES)
Alpha 交易页面截图(交易 ES)
3️⃣ 发布图文内容,可参考以下方向(≥60字):
简介 ES/Eclipse 项目亮点、代币机制等基本信息
分享你对 ES 项目的观点、前景判断、挖矿体验等
分析 Launchpool 挖矿 或 Alpha 积分玩法的策略和收益对比
🎁【奖励说明】
评选内容质量最优的 10 位 Launchpool/Gate
Uniswap Permit2签名钓鱼新手法 一次授权可能导致资产全损
揭示Uniswap Permit2签名钓鱼骗局:仅一个签名就可能导致资产被盗
黑客是Web3生态系统中令人生畏的存在。对项目方而言,开源代码意味着全球黑客都可能在寻找漏洞,写错一行代码就可能造成严重后果。对普通用户来说,每次链上交互或签名都可能使资产面临风险。因此安全问题一直是加密世界的痛点之一,区块链的不可逆特性也使被盗资产难以追回,这更突显了安全知识的重要性。
最近,一位研究人员发现了一种新型钓鱼手法,仅需签名就可能导致资产被盗。这种手法极其隐蔽难防,而且曾与Uniswap交互过的地址都可能面临风险。本文将详细介绍这种签名钓鱼手法,以帮助读者避免更多资产损失。
事件经过
事情源于一位朋友(小A)的资产被盗。与常见被盗方式不同,小A并未泄露私钥,也未与可疑合约交互。进一步调查发现,被盗USDT是通过Transfer From函数转移的,这意味着是第三方操作转移了资产,而非钱包私钥泄露。
交易细节显示:
关键问题是:fd51地址如何获得了小A资产的权限?为何与Uniswap有关?
继续挖掘fd51地址的交互记录,发现在转移小A资产前,该地址还进行了一个Permit操作,且两个操作都与Uniswap的Permit2合约交互。
Uniswap Permit2是2022年底推出的新合约,旨在实现跨应用的统一授权管理,提高用户体验并降低交易成本。它的工作原理是:用户只需授权给Permit2合约,所有集成Permit2的应用都可共享这个授权额度。
这种设计虽然提高了便利性,但也带来了风险。传统交互方式下,授权和资金转移都需要链上操作。而Permit2将用户操作变为链下签名,链上操作由中间角色完成。这虽然带来了诸多好处,但也使链下签名成为最容易被忽视的安全隐患。
调查显示,要触发这个漏洞,关键前提是钱包需已授权给Uniswap的Permit2合约。值得注意的是,只要在2023年后与Uniswap交互并授权给Permit2,就可能面临这一风险。
更令人担忧的是,Uniswap的Permit2合约默认请求无限授权额度。虽然MetaMask允许自定义金额,但多数用户可能直接选择最大或默认值。
技术分析
Permit函数的核心逻辑是:
verify函数会从签名信息中提取v、r、s数据,用于恢复签名地址并与代币所有者地址比对。如匹配,则继续执行_updateApproval函数。
_updateApproval函数会更新授权值,实现权限转移。之后,被授权方就可以调用transferFrom函数转移代币。
如何防范
学会识别并理解签名内容,特别是Permit签名格式。使用安全插件可以帮助识别。
采用冷热钱包分离策略,将大额资产存放在冷钱包中。
谨慎授权Permit2合约,仅授权所需金额。如已授权,可使用安全插件取消。
了解所持代币是否支持permit功能,对支持的代币交易需格外谨慎。
如不幸被骗但仍有资产在其他平台,需制定完善的资产转移计划,可考虑使用MEV转移或寻求专业安全团队协助。
随着Permit2应用范围扩大,基于此的钓鱼攻击可能会更加普遍。这种签名钓鱼方式极其隐蔽且难以防范,暴露在风险中的地址也会越来越多。希望读者能够提高警惕,并将这些信息分享给更多人,共同维护资产安全。