250个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题

看穿黑客盗币的那些套路,提前预防!

近日,有黑客团队对加密货币钱包Electrum进行有组织的攻击,并通过钓鱼式攻击的方式窃取了近250个比特币。那么,整个事件的过程和机理是怎样的呢?北京链安的安全专家Hardman为大家献上专业的解析。

近日,有黑客团队对加密货币钱包Electrum进行有组织的攻击,并通过钓鱼式攻击的方式窃取了近250个比特币。那么,整个事件的过程和机理是怎样的呢?北京链安的安全专家Hardman为大家献上专业的解析。

1 事情概述

近期,比特币轻钱包electrum的部分用户遭到了定向的钓鱼弹窗攻击,用户在使用electrum轻钱包转账的时候提示转账失败,而在弹框中也引导用户前往指定地址下载该钱包的“最新版本”。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

接着,部分electrum用户便按照软件弹出的提示,去弹窗上的地址下载最新版本的钱包,但是此时下载的轻钱包却并非官方版本,而是黑客恶意篡改的假包。用户下载安装该钱包后,使用钱包时需要先导入私钥,而用户导入私钥之后,恶意软件便窃取了用户的比特币。

2 事情分析

2.1 比特币全节点钱包

全节点钱包除了保存有私钥外,还保存有所有区块的数据,这样就可以在本地直接验证交易数据的有效性。最著名的全节点钱包就是Bitcoin Core。其他比特币全节点如go语言编写的btcd,javascript编写的bcoin也都是全节点钱包。但是全节点钱包会占用大量硬盘空间,截止到18年底,比特币的全节点要占用将近200gb的硬盘空间。转账之前必须要同步200gb数据,这对于一般用户来说是难以接受的。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

2.2 比特币轻钱包

而轻钱包只保存跟自己相关的数据,体积很小,大都使用SPV进行交易的验证和支付。(全称“Simplified Payment Verification”,简单支付验证),所以也称为SPV钱包。比特币主要的SPV钱包有,MultiBit,Breadwallet等,而在手机上更有大量我们熟悉的钱包供我们使用,他们使用SPV协议直接连接到比特币全节点(中本聪客户端或者其他语言版本的比特币客户端)进行验证和支付。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

从上图可以看到,一个全节点有大量的比特币SPV轻钱包的连入。

Electrum是比特币比较出名的一个轻钱包,该轻钱包加入了一些新特性,如服务器使用SSL进行身份验证来防止MITM攻击。所以跟其他的比特币轻钱包不同,Electrum无法与不同版本的比特币全节点进行直接通讯,每次启动会连接到electrumserver进行通讯,而electrum server之间通过p2p进行通讯。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

可以看到用户可以手动指定连接到自己的electrumserver。但是大多数用户对原理并不了解,也不会搭建自己的electrum server。

2.3 攻击原理

问题最早由用户SomberNight在github上进行了反馈。

Electrum黑客预先在P2P网络埋伏了大量的“正常” electrum server。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

从网站监控上可以看到,比特币的electrum server目前只有210个节点在线。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

而比特币全节点bitnodes的统计数据为10205个全节点在线。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

前面已经说过,由于electrum轻钱包不同于MultiBit或Breadwallet等比特币轻钱包,无法与比特币全节点直接通讯,只能与electrum server进行通讯。此时有限的electrum server节点中大量混入了黑客的malicous节点。

用户使用钱包转账时,当手续费不足或者缺少输入的时候,钱包是要弹框给用户的。黑客正是利用了这个弹框,当electrum轻钱包用户连接到的几个节点全都是黑客的malicous节点,malicous节点便会拒绝帮用户广播转账消息,然后返回自定义的错误消息,此时electrum轻钱包软件便会弹窗展示malicous server的自定义消息给用户,自定义消息提示用户需要到https://github.com/electrum-wallet/electrum/releases 去下载最新版electrum 软件。由于弹窗在electrum中显示,迷惑性极大。

实际上electrum软件的真正下载地址是https://github.com/spesmilo/electrum/releases,根本不是弹窗中的地址。(注:假冒地址目前已经无法访问)。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

3 攻击复盘

从上述分析来看,攻击由于以下几点原因产生。

A: electrum server节点过少,网站统计仅仅有210个,使得黑客的malicous server大概率占据用户electrum链接的所有节点。

B: electrum server可以自定义消息在用户的electrum轻钱包软件中展示,给了黑客广播钓鱼消息以可乘之机。

C: 用户的安全意识差,安装重要软件之前不核对下载网址和校验软件发行版本hash。

北京链安在此郑重提醒所有用户提高安全防护意识,特别下载相关客户端的时候前往官方指定地址下载。

转载声明:本文 由CoinON抓取收录,观点仅代表作者本人,不代表CoinON资讯立场,CoinON不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。若以此作为投资依据,请自行承担全部责任。

声明:图文来源于网络,如有侵权请联系删除

风险提示:投资有风险,入市需谨慎。本资讯不作为投资理财建议。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2018年12月29日 上午10:33
下一篇 2018年12月29日 上午10:33

相关推荐

250个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题

星期六 2018-12-29 10:33:17

近日,有黑客团队对加密货币钱包Electrum进行有组织的攻击,并通过钓鱼式攻击的方式窃取了近250个比特币。那么,整个事件的过程和机理是怎样的呢?北京链安的安全专家Hardman为大家献上专业的解析。

近日,有黑客团队对加密货币钱包Electrum进行有组织的攻击,并通过钓鱼式攻击的方式窃取了近250个比特币。那么,整个事件的过程和机理是怎样的呢?北京链安的安全专家Hardman为大家献上专业的解析。

1 事情概述

近期,比特币轻钱包electrum的部分用户遭到了定向的钓鱼弹窗攻击,用户在使用electrum轻钱包转账的时候提示转账失败,而在弹框中也引导用户前往指定地址下载该钱包的“最新版本”。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

接着,部分electrum用户便按照软件弹出的提示,去弹窗上的地址下载最新版本的钱包,但是此时下载的轻钱包却并非官方版本,而是黑客恶意篡改的假包。用户下载安装该钱包后,使用钱包时需要先导入私钥,而用户导入私钥之后,恶意软件便窃取了用户的比特币。

2 事情分析

2.1 比特币全节点钱包

全节点钱包除了保存有私钥外,还保存有所有区块的数据,这样就可以在本地直接验证交易数据的有效性。最著名的全节点钱包就是Bitcoin Core。其他比特币全节点如go语言编写的btcd,javascript编写的bcoin也都是全节点钱包。但是全节点钱包会占用大量硬盘空间,截止到18年底,比特币的全节点要占用将近200gb的硬盘空间。转账之前必须要同步200gb数据,这对于一般用户来说是难以接受的。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

2.2 比特币轻钱包

而轻钱包只保存跟自己相关的数据,体积很小,大都使用SPV进行交易的验证和支付。(全称“Simplified Payment Verification”,简单支付验证),所以也称为SPV钱包。比特币主要的SPV钱包有,MultiBit,Breadwallet等,而在手机上更有大量我们熟悉的钱包供我们使用,他们使用SPV协议直接连接到比特币全节点(中本聪客户端或者其他语言版本的比特币客户端)进行验证和支付。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

从上图可以看到,一个全节点有大量的比特币SPV轻钱包的连入。

Electrum是比特币比较出名的一个轻钱包,该轻钱包加入了一些新特性,如服务器使用SSL进行身份验证来防止MITM攻击。所以跟其他的比特币轻钱包不同,Electrum无法与不同版本的比特币全节点进行直接通讯,每次启动会连接到electrumserver进行通讯,而electrum server之间通过p2p进行通讯。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

可以看到用户可以手动指定连接到自己的electrumserver。但是大多数用户对原理并不了解,也不会搭建自己的electrum server。

2.3 攻击原理

问题最早由用户SomberNight在github上进行了反馈。

Electrum黑客预先在P2P网络埋伏了大量的“正常” electrum server。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

从网站监控上可以看到,比特币的electrum server目前只有210个节点在线。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

而比特币全节点bitnodes的统计数据为10205个全节点在线。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

前面已经说过,由于electrum轻钱包不同于MultiBit或Breadwallet等比特币轻钱包,无法与比特币全节点直接通讯,只能与electrum server进行通讯。此时有限的electrum server节点中大量混入了黑客的malicous节点。

用户使用钱包转账时,当手续费不足或者缺少输入的时候,钱包是要弹框给用户的。黑客正是利用了这个弹框,当electrum轻钱包用户连接到的几个节点全都是黑客的malicous节点,malicous节点便会拒绝帮用户广播转账消息,然后返回自定义的错误消息,此时electrum轻钱包软件便会弹窗展示malicous server的自定义消息给用户,自定义消息提示用户需要到https://github.com/electrum-wallet/electrum/releases 去下载最新版electrum 软件。由于弹窗在electrum中显示,迷惑性极大。

实际上electrum软件的真正下载地址是https://github.com/spesmilo/electrum/releases,根本不是弹窗中的地址。(注:假冒地址目前已经无法访问)。

50个比特币遭遇钓鱼式攻击,详解背后的钱包安全问题"

3 攻击复盘

从上述分析来看,攻击由于以下几点原因产生。

A: electrum server节点过少,网站统计仅仅有210个,使得黑客的malicous server大概率占据用户electrum链接的所有节点。

B: electrum server可以自定义消息在用户的electrum轻钱包软件中展示,给了黑客广播钓鱼消息以可乘之机。

C: 用户的安全意识差,安装重要软件之前不核对下载网址和校验软件发行版本hash。

北京链安在此郑重提醒所有用户提高安全防护意识,特别下载相关客户端的时候前往官方指定地址下载。