1. 首页 > 快讯

比特币安全吗?木马钱包盗币原理分析

比特币安全吗?木马钱包盗币原理分析

2018年,是公认的区块链大年。随着区块链的经济价值不断升高,促使不法分子利用各种攻击手段获取更多敏感数据,“盗窃”、“勒索”、“挖矿”等,接下来小编就开给网

友们分析下木马钱包盗币原理。

最近比特币的安全问题频发,我本想找个盗取比特币的钱包进行分析,恰巧此时网友smtp在彩云比特论坛发帖揭示LTC木马钱包,并提供了LTC木马钱包样本,我就逆向了木马钱包的程序,分析了钱包盗取LTC的原理,盗取方式同样可以用于比特币及其他山寨币。

一、原理分析

此LTC木马钱包盗取LTC的方式很简单,查看钱包的接收地址时,隐藏钱包的真实接收地址,显示黑客的LTC地址,当向此接收地址发送LTC时,发送的LTC自然就到了黑客的钱包中,永远到不了这个钱包中。

验证过程很简单,先安装LTC木马钱包,创建新的接收地址,然后卸载木马钱包,安装LTC官网钱包,查看接收地址,两者显示的地址是不同的,官网钱包显示的是真实地址,木马钱包显示的是黑客的LTC地址。

钱包中不存在黑客的LTC地址,所以导出私钥失败。官网钱包显示的LTC地址是存在的,可以导出私钥。通过命令dumpprivkey可以验证。

二、钱包显示接收地址

LTC的代码是开源的,黑客下载了LTC代码,做了些修改,重新编译代码,把程序打包,放到网盘中提供下载,盗取网友的LTC。

显示钱包的接收地址,LTC与BTC的代码相同,主要是在列表中显示LTC地址,木马钱包通过修改列表中要显示的LTC地址的字符串,来达到隐藏真实地址的目的。

显示LTC接收地址,主要涉及到2个模块:程序加载时显示接收地址、创建新接收地址。在这里先简单讲解如何在地址列表中显示地址。

钱包的接收地址保存在是类CWallet的mapAddressBook中,接收地址列表是类AddressTablePriv的QListcachedAddressTable控件。

三、黑客修改的代码

木马钱包就是修改了类AddressTablePriv的函数refreshAddressTable、函数updateEntry,在显示、插入地址之前修改显示的接收地址。

1. 函数refreshAddressTable

在调用函数cachedAddressTable.append之前,加入修改显示地址的代码。

2. 函数updateEntry

当CT_NEW时,在调用函数parent->beginInsertRows之后,在调用函数cachedAddressTable.insert之前,加入修改显示地址的代码。

黑客的LTC地址一共10个,按照显示、插入地址的顺序,依次显示这10个地址,超过10个地址时,循环显示。

在木马钱包中定义了一个数组,指向这10个LTC地址。在木马钱包中定义了一个整形变量,标识地址索引,显示此索引指向的LTC地址,然后递增,当等于10时,重置为0。

对于上述几种情况在一定程度上可以采用修改注册表,使用第三方的一些任务管理器来停止任务,重新启动进入命令行模式来手工清除木马,使用一些专杀。

希望全面深入的了解币圈炒币、打新币、以及挖矿收益的问题,那么可以添加我们的官方微信进行更加详细深入的沟通和交流,同时我们可以邀请大家进入我们的官方社群进行深入学习和交流,群里也有非常多的一级市场的粉丝币友们,他们有的是行业大咖和职业玩家,经验知识都是非常丰富的,可以给大家解疑答惑。快联系我们的客服申请加入吧。

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:http://www.fjxmta.com/kuaixun/61817.html

联系我们

在线咨询:点击这里给我发消息

微信号:wx123456