当前位置:首页|资讯

231229 insc以太坊铭文攻击事件分析

作者:Web3SecAnalysisT发布时间:2024-10-10

0 总结

    insc在以太坊上的铭文ins-20由于合约代码逻辑漏洞,导致大量nft被盗走并上架到opensea和blur等

    截至发稿,insc官方仍未形成完整的解决方案和漏洞修补


1 一句话原理

    攻击者部署并执行攻击合约:Inscription合约的approve方法存在确权校验漏洞,攻击者在不需要该nft owner授权的情况下,将该nft的所有者转移给自己并最终完成第三方平台上架兑换。


2 攻击事件发生时间点

    23-12-29 11:09(utc+8)


3 攻击交易 

https://etherscan.io/tx/0x459b5fb324a0b38de3fc6d5e5e5e2ee4b3d38a9928b22606e3b6f6adeac70a5b


4 简略攻击流程

    攻击者部署攻击合约,该合约从0到99, 循环调用insc合约的approve和transferFrom函数。

4.1 攻击者合约调用approve命令,将nft token approve给攻击者地址

    因为insc的确权校验缺失,导致该交易可以在没有owner授权的场景下成功,相当于该nft的owner授权了攻击者随意操作该nft token

    可以看到,approve方法里没有任何权限校验,直接调用_approve方法进行授权。

    作为对比,常规的approve(被inscription合约override)的逻辑如下

    显然,原有的approve方法进行了权限校验,要求调用者必须是该token的owner


4.2 攻击者合约调用ownerOf命令获取该nft token的owner地址

    作为transferFrom命令的from参数


4.3 攻击者合约调用transferFrom命令,将该nft token 直接 转账给攻击者


相关链接

inscEvm官方推特  https://twitter.com/ins_evm/status/1740855250775671105

inscEvm官方铭文业务逻辑  https://twitter.com/ins_evm/status/1740857583102251145



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1