前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >这次又坑多少人? 深度解析 Dash 钱包"关键"漏洞!

这次又坑多少人? 深度解析 Dash 钱包"关键"漏洞!

作者头像
区块链大本营
发布2019-07-16 14:57:22
6200
发布2019-07-16 14:57:22
举报
文章被收录于专栏:区块链大本营区块链大本营

作者 | Beosin 成都链安

出品 | 区块链大本营(blockchain_camp)

随着区块链市场商业模式的不断丰富,安全问题也不断暴露,其中钱包安全事件屡曝不止。

4月13日,Electrum 钱包遭受黑客攻击,黑客利用其钱包漏洞,窃取用户密钥,导致资金被盗。

5月7日,黑客利用币安热钱包安全漏洞,访问大量用户应用程序接口密钥(API keys)、双因素身份验证码(2FA码)、以及其他信息,从中盗取7000枚比特币。

而近日又有一起钱包被盗事件发生。据相关媒体报道,有网友爆料 My Dash Wallet 钱包存在安全漏洞、导致用户钱包内资金被盗取。

针对一事,成都链安技术团队做出详细分析:

其主要原因在于在线钱包用户在创建 HD 钱包和解锁 HD 钱包时,网页插件会将用户的 keystore 加密数据以及解密密码以 post 的方式发送到

https://api.dashcoinanalytics.com/stats.php

具体分析步骤如下:

在 https://mydashwallet.org/ 上创建 HDWallet 以后,网页会直接向 https://api.dashcoinanalytics.com/stats.php 以 POST 的方式传送数据,如图所示:

Form Data:为 Base64 编码后的数据。具体如下:

解码后数据为:

本地下载 MyDashWallet.HDSeed 后,打开文件获取数据如下:

MyDashWallet.HDSeed 中的加密的数据与上传的 a2c 数据中 “ks” 数据相同。

Seed 文件存储在本地,如下所示,可通过 js 脚本直接获取到 seed 的值。

在解锁钱包时,网页会会直接以 POST 的方式传送 a2c 数据,数据跟上面创建钱包时传输的数据一样。

攻击手法:

通过查看网页源码,generateKeystoreFile() 函数内容如下:

其中生成 enryptedData 时,需要传入 key 和钱包的密码,用于加密生成 HDSeed 文件。

解锁钱包的 unlockKeystore() 函数内容如下:

两个函数都调用了 CryptoJS.AES.decrypt() 函数。

当输入解锁钱包密码后,网页向 https://api.dashcoinanalytics.com/stats.php 传输数据,Initiator 是 CryptoJSlibByteArray.js:753,其内容如下:

通过查看网页源码发现网页中加载了引用自 greasyfork.org 的 CryptoJSlibByteArray.js 文件。

直接在浏览器中打开 CryptoJSlibByteArray.js 文件,开头内容如下:

此文件中插入大量的空白,真实发送数据的代码从728行开始。内容如下:

通过设定循环执行函数,通过 localStrage 获取到相关的 HDSeed 内容和解锁密码。在钱包实例化以后,直接在浏览器 console 中输入 dashWallet 可得以下内容:

从上面的分析来看,攻击者通过某种方式在在线钱包中插入恶意插件,用户使用在线钱包时,加载了恶意插件,恶意插件设置循环执行函数获取到 seed 的值和解锁的密码。从而获取到钱包的控制权。

存在的危害:

在线钱包,顾名思义,它是在联网状态下进行交易的钱包,一般又称“热钱包””。其种类多样,有电脑客户端钱包、手机 APP 钱包、网页钱包等。热钱包对于交易频繁的用户来说是非常便捷的,但由于其联网使用的模式,也增加了受到黑客攻击,被盗取秘钥的风险。而一旦被黑客掌握秘钥,就相当于获得了资产的直接掌控权。

此次事件中,用户正是使用此在线钱包后,被攻击者通过某种攻击方式将恶意插件插入钱包中,从而获得钱包用户的密钥,直接利用密钥盗取用户资产的。

对用户的建议:

建议最近使用过此在线钱包的用户,通过其他方式生成新的钱包,并将财产转移至新钱包。

同时,对于会经常使用到在线钱包的用户,我们建议在使用时,在不同平台设置不同的密码,并且开启二次认证。另外,建议资产占有量较大的个人投资者最好将冷钱包与热钱包配合使用,根据具体使用需求分配使用冷热钱包,做到冷热分开,以便隔离风险。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 区块链大本营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档