大家好,我是大葱哥 tw: @blockchain_dcg wx: t52861700 喜欢研究技术,专职Web3脚本撸毛,感兴趣的朋友可以关注一波 今天给大家介绍的一个python三方库偷私钥的案例分析,希望大家引以为戒,在web3领域多注意财产安全。背景介绍这两天有朋友需要搞solana链的一个交互脚本,所以葱哥就准备写一下。 因为之前大都是在搞EVM/BTC链,solana只草草搞过一次,不是很熟悉,于是翻出以前的代码(代码之前是可正常执行的)准备仔细研究一番。 突然发现以前的代码运行报错,习惯性以为可能某个依赖库更新导致的,于是将几个依赖库都重新更新了。 发现还是报错,通过仔细查看发现代码中用到了 solana 和 solders 两个依赖库,两个依赖库中有些参数类型混淆导致的错误。 为了查找问题修复错误,对代码进行了断点调试,逐步分析,当我在最终发送交易的代码出打上断点后,奇怪的事情发生了,我明明只提交了一笔交易,但发送交易的断点却又被命中了。 这就是核心问题所在,他在后台启动了线程偷偷发送交易。机制分析通过调试发现,流程如下:最初有 solana.Keypair.fr...