10月24日上午10点11分,美国东部时间,以太坊上的X100项目在一笔交易里丢了治理权。攻击者先借来约194万美元USDT闪电贷,买了约38200枚X,分给两个新部署的辅助合约各冻结19000多枚,挤掉原来的席位,拿下三人参议院里的两个席位。拿到多数席位之后,提案的提出、投票和执行发生在同一笔交易里,国库40万枚X被卖进攻击者刚建好、几乎没有USDT的池子,只换回约36美元。还掉闪电贷之后,攻击者手里剩下约475万美元USDT。安全公司Blockaid把后续交易也算上,总损失定在约485万美元。

三处设计叠在一起,才让这事成立。第一,交100枚X就能立刻加入参议院,没有最短持有期。第二,席位按当前冻结余额排,谁冻得多谁上,没有提前快照,投票权可以只借几秒钟。第三,提案没有时间锁,提出来就能马上执行,没有等待期。单独看每一条都像是为了方便,合在一起等于把金库钥匙放在门口,任何人借一笔钱就能进来开一次门,开完把钱还回去。

事情没有在一笔交易里结束。第一笔过去约24分钟,第二名攻击者用同样办法再拿两个席位,撤走了Freezer合约放在Uniswap V3里的流动性头寸。再过约5分钟,第三个钱包直接借用第二名攻击者留下的辅助合约,没有门槛地再提提案,转走约55万枚X。同一扇门,半小时内被三拨人推开。截至10月25日凌晨,按DexScreener当时的数据,主交易池24小时跌96.6%,X价格约1.75美元,池子里只剩约340美元流动性。钱不是从用户钱包里直接掏走的,掏的是项目国库和流动性,但持币人手里的币一下子没了能出手的地方。

对散户来说,碰带治理的项目之前,先看三件事。投票权是不是按快照算,借来的币能不能投票。提案通过之后有没有等待期,能不能在执行前拦下来。金库和流动性是不是同一个合约管着,一个口子失守会不会连锅端。X100这三项全是反面答案。项目方到发稿时还没有公开声明,没有冻结通报,没有悬赏和事后复盘,报警的是Blockaid、Chainalysis、Panda Security这些外部公司。首笔收益很快换成ETH,分散到多个钱包,截至发稿没有混币、冻结或归还的通报。

我的看法很直接,治理写成这样,等于在规则里写明借钱就能当家。散户进场之前先把投票规则读一遍,比看白皮书写了什么愿景管用。

你手里有没有投过票的治理代币,投票之前看过它的投票规则吗?

#X100 #链上安全 #被黑复盘 #治理攻击 #闪电贷

—— web3韭菜小凯

本帖仅为事件复盘与个人观点,不构成投资建议,提到的金额以公开报道与安全公司通报为准,最终损失以官方确认结果为准。