About 链上没有新鲜事儿:
区块链有公开透明的特性,所有交易就是在链上可见的,完全公开的。你在做什么,他在做什么,通过区块链浏览器都可以看到。这里把日常发现的各种有意思的链上交易、合约发出来(包括不限于骗局、攻击、MEV 等)。老铁们如果发现有意思的交易也可以留言投稿。笔者会一起进行简单分析。
最近在开发一个交易监控系统,试运行过程中发现这么个 case。
0xF2F400C138F9fb900576263af0BC7fCde2B1b8a8[1] 地址的合约在 Etherscan 上标记为1inch: Aggregation Executor 1
似乎是 1inch
中用于执行合约调用的小组件,很多 swap
操作都会用到他,比如这笔[2]。
正常来说这个 Executor
中不会保存重要资产,是单纯的工具合约(类似于一种 library)。不过链上交易千奇百怪,不知道是什么原因(可能是合约 bug,误操作,空投,代币利息等)总会有各种资产被打到这个 Executor
合约中。
而这个 Executor
本身是开放给任何人使用的,因此也没有权限验证。其自带的 safeTransfer
函数就允许任何人将合约内的任何资产转移出来,比如这笔交易[3]。
不过也因为这个函数没有任何校验,因此有大量 MEV bot 在竞争这个羊毛。
白嫖到的资产包括 WETH
, ETH
, WBTC
这类主流的资产及各种非主流 token。有的羊毛还是挺大的(虽然要上交 $200 的 gas)。
流下了羡慕的泪水。
虽然人工反编译[4]去发现这个任意转账的问题并不困难。但一般而言并没有人有这样的精力去把每个链上闭源合约都分析一遍。对于 MEV bot 应该是在某些交易中自动探测到了这个接口,然后将对应的套利规则加到了数据库里,每当有新资产进入时,就自动发起转出操作。
1inch: Aggregation Executor 1: https://etherscan.io/address/0xF2F400C138F9fb900576263af0BC7fCde2B1b8a8
[2]1inch swap 交易: https://etherscan.io/tx/0x62b2b345d75ac146de0695ecf9f367240a8b8ae9d562b1d596ad231c8c76de23
[3]safeTransfer 套利交易: https://etherscan.io/tx/0x95c950aa546d489f86246c1e4459ce91d1d9291b9d6ec2d87acc03e74d1c27fa
反编译: https://library.dedaub.com/contracts/Ethereum/f2f400c138f9fb900576263af0bc7fcde2b1b8a8/decompiled?line=1
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。