10.我的钱包给盗了!(github盗取私钥)
2023-06-23 20:42:20 # 00.security

我的钱包给盗了!

这是我的真实经历,哭死 :(

回顾

2022年12月14日,这一个夜黑风高的晚上,我打开了视频学习web3js,嗯,视频里面要用小狐狸钱包,然后我打开钱包,发现是0Goerli,有点奇怪,可能我没挂VPN没显示出来。然后我去挂梯子,刷新页面,还是没显示,我还是认为网络的问题,因为如果被盗了应该小狐狸页面应该会有转出记录。

image-20221214232832581

然而尝试了多次,还是0测试币,纳闷了,然后我访问浏览器,发现惊人一幕:我的钱给转出去了!

image-20221214232947729

盗我账户的用户

image-20221214234540346

分析过程

钱包被盗这事情一直是听说,现在终于落到我头上了。我没多慌,只是觉得太倒霉了,应该是我哪里出了问题。然后我开始找问题出在哪

首先,我记得我写的文章里面,将etherscan的API key和ALCHEMY_API_KEY公之于众过,但是仅靠这两个东西是无法盗取钱包账户的

然后,我看时间线,我在4天之前根据一个活动获取了10goerli测试币,在那之后的2天,就被盗了,我估计是不是那个是钓鱼的活动?然后我就问了也参与了这个活动的人,他们都没有被盗(如果因为我分享给他们这个活动导致他们被盗,我实在过意不去)。那么这个可能性也排除了

之后,我在想是不是我点了什么钓鱼链接呢?我想了一下也不可能,我这几天没有点过任何陌生的链接,不可能进入了钓鱼链接和网站。

问了一些人,他们都认为是私钥泄露。有个人说是不是我将私钥放到了GitHub上了?在我印象中,我是没有放过私钥到GitHub上的。但是没有思路了,只能将GitHub仓库检查一遍

检查GitHub仓库发现问题

image-20221214234007457

问题找到了:私钥泄露
我把GitHub仓库看了一遍,发现我很久之前的一个练习里面写了私钥,那时候刚学solidity写了私钥都没注意,时间太长我都不记得了。虽然10月份将共有库改为私有,但是私钥早就被获取了。
应该是那个人一直在监控我的账户(应该也有其他跟我一样的受害者被监控),然后4天之前我的账户转入10测试币,他检测到了,2天之前他就转走
我猜测它的手法应该是扫描GitHub上所有有关solidity、web3的仓库,然后爬虫之类的东西进行扫描获取私钥

总结

  • 永远不要将私钥放到网络上,私钥一定要保存好
  • 警惕钓鱼网站和链接
  • 创建多个钱包,不要将所有鸡蛋放到同一个篮子里

损失10个测试币并不是什么大事,但这是一个很好的经历

Prev
2023-06-23 20:42:20 # 00.security
Next