ericet
ericet

Likecoin/Desmos/Evmos/Nomic/Cerberus 验证人。喜欢分享各类脚本。 网站: https://ericet.xyz

【科学家养成日记#12】挽救被黑钱包里面的剩余资产

今天看到Matters上一篇帖子说自己的钱包被黑,账号上的币被转走,钱包里剩下一些NFT,问大家是否有办法转走?

一般钱包被黑,大几率是黑客掌握了钱包的私钥,所以如果你把ETH转进去作为转走剩余资产的GAS,很大可能转进去就被黑客程序自动转走

要想把剩余资产转走,就需要用到Flashbot,在同一个区块里面完成转币进去,同时转资产去另外一个钱包的操作。


怎么用Flashbot挽救钱包里面的NFT呢?

这里要用到脚哥script money的flashbot工具(https://github.com/script-money/ens-claim-flashbot-example )

源代码里面授权ERC721那部分有个小bug,所以就用我fork的代码进行NFT转移

设置

git clone https://github.com/ericet/ens-claim-flashbot-example.git
cp .env.example .env
yarn install

打开.env文件,添加所需信息


NFT授权

添加好后,保存并打开/src/index.ts,修改ERC721的合约地址(需要转移的NFT的合约地址)


修改后,运行

yarn start

程序就会给将给要执行转移的钱包NFT授权


转移NFT

注释掉NFT授权那段(75-76), 取消注释NFT转移那段(80-82), 并且修改一下NFT_ADDRESS那里的NFT合约地址(需要转移的NFT的合约地址)和TOKENIDS(NFT的ID)


修改好后,运行

yarn run

等待交易成功,你的


最终链上的记录:


可以看到3个操作是在同一个区块里面完成的,这样如果钱包被黑客监控,他们也不可能在同一个区块里把你的币劫走

上面只介绍了转移NFT,程序还支持转移代币,领取空投并转移,等等

想了解的可以看看index.ts里面的注释

源代码来自脚哥的github: https://github.com/script-money/ens-claim-flashbot-example

研究一下是否能改成页面操作,降低一下门槛

CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

第一个支持了这篇作品
加载中…
加载中…

发布评论