币灵灵财经 2024-11-01 07:44 486
欧易交易所
软件大小:268.26MB
软件版本:v3.4.2
黑客,这是一个让Web3生态中每个人都闻风丧胆的存在,对于项目方来说,在全世界黑客都可能盯着你的情况下,代码开源的特性使得项目方开发的时候生怕写错一行代码留下漏洞,一旦出现安全事故后果难以承担。
通过查询交易细节,我们可以发现一些关键线索:
那么疑点来了,尾号fd51的地址是如何拿到这笔资产的权限的?为什么会和Uniswap有关系?
首先我们需要知道,要想成功调用Transfer From这个函数的前提是调用方需要拥有这个Token的额度权限,也就是approve,相信大家有过链上操作的一定熟悉不过了,当我们去使用一些Dapp的时候,一旦涉及到资产的转移就需要我们先进行一个授权(approve)操作,这样Dapp的合约才有权限对我们的资产进行转移。
Uniswap Permit2合约是Uniswap在2022年年底推出的新的智能合约,根据官方的说法,这是一个代币审批合约,允许代币授权在不同的应用程序中共享和管理,创造一个更统一、更具成本效益、更安全的用户体验。
图片来源:https://github.com/dragonfly-xyz/useful-solidity-patterns/tree/main/patterns/permit2
图片来源:https://github.com/dragonfly-xyz/useful-solidity-patterns/tree/main/patterns/permit2
permit函数:
那么这个函数是怎么工作的呢?
首先,它会检查现在的时间是否超过了你的签名的有效期(sigDeadline)。就像你签署的合同有个有效期一样,如果现在的时间超过了有效期,那么这个"合同"就不能再用了,程序会直接停止。
重点则主要在于verify函数和_updateApproval函数。
verify函数:
_updateApproval函数:
owner就是小A的钱包地址(尾号308a);
Details中可以看到授权的Token合约地址(USDT)和金额等信息;
Spender就是尾号fd51的黑客地址;
sigDeadline是签名的有效时间,而signature就是小A的签名信息。
来源:https://etherscan.io/address/0x000000000022d473030f116ddee9f6b43ac78ba3
来源:https://etherscan.io/address/0x000000000022d473030f116ddee9f6b43ac78ba3
1 理解并识别签名内容:
Permit的签名格式通常包含Owner、Spender、value、nonce和deadline这几个关键格式,如果你想享受Permit2带来的便利和低成本的话一定要学会识别这种签名格式。(下载安全插件是一个很好的选择)
2 放资产的钱包和交互的钱包分离使用:
3 不要授权过多额度给Permit2合约或取消授权:
4 识别代币性质,是否支持permit功能:
5 若被骗后还有代币存在其他平台,需制定完善的拯救计划:
热门文章
为华为手机提供摄像头模组?欧菲光董事长回应
萨尔瓦多比特币浮盈8300万美元!Tim Draper:将成最富裕国家之一
大模型独角兽“智谱 AI”正以200亿元估值进行新一轮融资,此前阿里腾讯等已投资25亿
跨境理财通2.0正式起航 个人投资者额度提高到300万元
9月8日涨停复盘:捷荣技术8天7板 华映科技7天6板
又一城缩减住宅限购范围!已有7个省会城市全面取消限购
Voyager赔偿用户需再等!清算计划修正版待法院批准才能分配代币
5.24 是多还是空 我们该如何抉择?
3年内禁止参加军队采购!奥维通信围标串标被罚 影响几何?
未来健康获罗斯柴尔德家族1亿美金投资,与国际NMN医药集团合作打造全球首创NMN期货产品