黑客通过这些方法盗取数字资产 看看你是否中招?
当前区块链技术和应用尚处于快速发展的初级阶段,面临的安全风险种类繁多,从区块链生态应用的安全,到智能合约安全,共识机制安全和底层基础组件安全,安全问题分布广泛且危险性高,对生态体系,安全审计,技术架构,隐私数据保护和基础设施的全局发展提出了全新的考验.
黑客们是如何窃取钱包资金呢?
“伪装客服取私钥”
1. 攻击者伪装为客户潜伏在社群中
2. 当有用户出现转账或者提取收益求助时,攻击者及时联系用户协助其处理
3. 通过耐心的解答,发送伪装的专业工单系统,让用户输入助记词解决其交易异常
4. 攻击者拿到私钥后盗取资产,拉黑用户
“扫描恶意二维码被盗”
1. 攻击者将预先准备好的恶意二维码发送给用户;
3. 用户输入小额或者指定金额后,确认转账交易(实际运行的是用户approve授权给攻击者USDT的过程);
4. 随后用户钱包大量USDT丢失(攻击者调用TransferFrom转走用户USDT)。
“贪小便宜,随意领取空投被盗”
1. 攻击者伪造成各种交易平台,DeFi,NFT等区块链项目;
2. 攻击者通过媒体社群发起可明显薅羊毛的空投活动;
4. 用户扫码后点击领取空投(其实也是用户approve授权给攻击者USDT的过程);
5. 随后受害者账户大量USDT被转走(攻击者调用TransferFrom转走用户USDT)
“在线云平台账号被盗”
多数人将秘钥/助记词通过截屏、拍照或者拷贝粘贴,然后同步保存在云端,例如通过邮件、QQ、微信、网盘、笔记等进行传输或存储,攻击者会通过攻击这些云端平台账号,从而盗取私钥/助记词。
目前零时科技安全团队已经收到大量用户反馈称将私钥/助记词保存在网盘或者笔记中,由于平台账号被盗,导致钱包资产被盗。
“热钱包服务器被攻击”
很多区块链应用都会使用到热钱包,热钱包中存有大量数字资产,由于热钱包服务器为进行安全加固,或者运维不当,安全意识缺失,导致热钱包服务器被黑客攻击,导致热钱包中数字资产被盗,甚至通过热钱包服务器作为跳板,攻击其他钱包。
“被身边人窃取私钥”
日防夜防,家贼难防。被身边熟人无意间窃取钱包私钥/助记词,最终导致资产丢失。
“网络钓鱼窃取私钥”
攻击者通过克隆一个知名区块链项目,通过精心设计成同原始真实项目一模一样的假项目钓鱼网站,对于精心设计的这个钓鱼网站,普通用户无法辨别真假,通过各种渠道发布这些信息,以假乱真,这样即可轻易引诱用户访问钓鱼网站并引导他们输入帐户密码或密钥,盗取用户钱包中数字资产。
“电信”
近年来,电信事件突发,手段越发高明,由于互联网的大量信息泄露,攻击者通过邮件,短信,电话对受害者进行,例如打着区块链幌子的中心化项目,杀猪盘项目,高额收益的投资项目等,诱受害者投资,导致最终血本无归。
“恶意软件”
黑客以某些加密货币资源的名义,将应用程序添加到Google Play商店,或者通过网络钓鱼的方式,用户下载改应用程序,该应用程序实则为一个恶意软件,当下载、启动该应用程序后,攻击者即可控制受害者电话或者手机,然后允许攻击者窃取帐户凭据,私钥等更多信息,导致钱包被盗。
“通过公共 Wi-Fi进行攻击”
在火车站、机场、酒店等人流量较大的公共区域,Wi-Fi 网络尤其不安全,受害者用户的设备能够连接到与黑客相同的的 Wi-Fi 网络中,甚至黑客会专门搭建一些恶意Wi-Fi热点供大家使用,此时,受害者用户通过网络下载或发送的所有信息,在一定情况下,都可被攻击者拦截查看,包括加密货币钱包私钥/助记词等。
PART02
如果密钥丢了怎么办?
1、?是否还留有备份助记词私钥,尽快重新导入助记词,将资产转移到其他钱包;
2、?确认被丢失的钱包中是否有在抵押或者锁仓的资产,计算好时间,等这部分资产解锁后第一时间转移;
3、?如果被丢失钱包资产已经被转移,使用专业资金监控小程序,进行资金实时监控,第一时间了解资金状况,同时寻求帮助。
4、?可以联系专业的安全团队进行协助,找回秘钥及丢失的资产。
从钱包被盗总结Web3的安全指南
2022 年元旦假期的某个早上,小 C 准备写代码,继续测试 Web3js 的链上合约交易。突然发现自己的测试账号(Bsc 链)在?MetaMask?归零了,明明前一晚账户内还有 100usd,然后查完转账就发现:
钱都没了,钱哪去了?
背景
技术出身的小 C,最近在学习区块链开发。本身是专业开发者,已经很谨慎小心了,通常都是在测试网络上跑,跑完之后,再会去正式网络上部署,但是没有意识到整个产业目前还处在相对混乱的阶段,麻痹大意,顺手习惯导致造成了损失。
损失是如何造成的?
2021 年的最后一天,小 C 偶然看到一个账号很有趣(这个账号有很多活跃的交易),就追踪了他的一些链上交易,然后看到了一个非常有意思的项目(有很高的年化收益率),然后就鬼使神差地连上了自己的 MetaMask,然后鬼使神差的进行了 approve,因为一般 Web3 的项目就是这个流程,approve 然后转账就结束了。
但是令人惊呆的一幕出现了:点完之后,整个网站突然卡死了(其实在卡死这段时间,盗取者就把钱转走了),没有任何反应,小 C 当时没当回事,把站点给关了,去做其他事情了。
过了大概一天,小 C 重新回来开发的时候,发现账上的钱全部没有了,去查了历史记录,发现账上的余额已经被全部转走。
回顾过程
盗取者是怎么把小 C 账户上的钱都转走的?
现象:只要你 approve 了,不需要私钥理论上也可以把对应的钱全部转走。
小 C 进行了下溯源,大概是在一个钓鱼网站的 approve 出了问题,于是追溯该转账记录。
如图,可以看到,先是 approve(授权)了一个合约,授权了钓鱼合约能够对账号里面 BUSD 进行操作,而且是没有数量限制的。
为什么会是 BUSD 呢?小 C 回忆了一下,一进入这个钓鱼站点是默认选了 BUSD ,估计在浏览站点链接钱包之后,盗取者就已经筛选了出了账号里面钱最多的 token 了。
然后当小 C 以为这是一个新的 swap 合约,并且有很高的年化收益,准备先试试的时候,按照常规流程就进行 approve。approve 结束后,网站直接卡了。
后来经过追溯,大概在授权之后几十秒,合约就直接触发了一个转账操作,直接把 BUSD token 给转走了。
后来去查了一下授权的信息
基本上 MetaMask 默认授权的时候是:
转换成数字,我们认识的就是 1.157920892373162 乘以 10 的 59 次方。基本上就可以理解为无限量转账了,也就是这个授权的操作,可以让这个合约无限量的操纵我账号的 token。看到这里感觉背后一凉,因为以前点过很多次 approve 都是不会去看的。
然后黑客操纵一个可以控制这个合约方法的钱包地址,就发起合约转账方法,把钱转走了。所以小伙伴之后点 metamask 授权的时候一定要小心。
小 C 查了下,盗取者现在这个账号里大概已经有了 3w 美金的 token 了,现在还有源源不断的受害者在转钱。但是面对区块链没有办法,根本无法找不到这个黑客是谁。
出现问题的环节
问题到底出在哪里?
因为最近在学习区块链。小 C 大概理了一下这个钓鱼的逻辑方式,害人之心不可有,防人之心不可无。大家有兴趣可以了解一下:
正常转账
案例一:直接用户间转账 A 用户向 B 用户转账 BUSD
合约正常会检查以下逻辑
1)判断 A 用户账户余额是否有足够的钱;2)是否是 A 用户发起的转账
流程如下图
正常合约兑换
就是我们平时使用 pancakeswap、uniswap 等兑换时候的流程
案例二:通过 swap 进行 token 兑换 A 用户进行 token 兑换(BUSD 兑换 WBNB)流程 合约进行判断:
1)A 用户账户余额是否有足够的 BUSD,(假设已经授权 swap 合约可以操作 A 账户的 BUSDtoken)
2)swap 合约取 A 账户下的 500BUSD 放入 swap 的合约池中(假设汇率是 1:500)
3)成功后合约再向 A 账户转入 1BNB
注意第 2、3点,是由合约控制 token 进行操作。那么也就是说合约可以绕过我们直接发起对我们账号下的 token 的操作。
钓鱼合约
先看这张溯源图
正常的转账,转账方和合约执行的转账方应该是同一个人,即上图(1)与(2)应该是由同一个人发起的。而我被转账的这笔交易,这两个不是同一个地址。推测应该是由一个可以执行钓鱼合约的钱包地址控制执行了合约,然后将我授权给钓鱼合约里的 BUSD 转走了。
去查看钓鱼合约,不出意料钓鱼合约是一个加密的合约。不过想一下也不难,稍微学过 Solidity 的人都知道,在合约定义的时候,多设置几个 Admin 或者 Owner 就可以了。
所以以后一定要注意项目方的背书,不要随便给不知道的项目授权!!!
安全建议
因为这件事,小 C 搜了一些有用的建议和方法,也看到了很多血淋淋的教训。
这里列出来一些方法大家可以根据自己的需要选择。
1)不要共用密钥
之前看有帖子说一个助记词生成多个账号的,这种我不建议哈,因为很可能被一锅端。
2)密钥离线保存
因为现在有很多剪贴板工具输入法会将你的剪贴板记录上传到云端,如果你直接复制了,如果云端泄漏,你的密钥就直接无了。
我的建议就是生成之后,第一时间抄到本子上。当然抄到本子上,你也可以参考我对密钥自己的字典加密,比如 a 用 1 代替,b 用 2 代替,1 用 a 代替,这样就可以保证即使有人看到了你的纸质密钥,也不能动你的数字资产。
3)开发和测试分开(空投和主账号隔离)
安装 2 个浏览器,一个可以是 chrome,一个是 brave。一个管理你的主钱包。另外一个可以参与领取空投,各种链上操作等
4)不要下载来历不明的软件
不要去用 baidu 这些下载来历不明的软件,我看到有案例是下载盗版 metamask,直接破产的。一定要去正规的地址下载,有条件的可以参考 google play。chrome web store 等
5)立即检查你的授权
看到图上所示,基本上就是无限的。
每次唤起 MetaMask 的时候一定要多看看授权,不要像我现在这样无脑点授权下一步。
6)进行授权前,对合约安全进行确认
可以使用慢雾的合约审计功能。
也可以看看该合约是否开源,如果开源的话需要确认该合约是否是可升级合约等等。
7)撸空投和福利的时候注意安全
用小号去领取,别用大号,授权的时候可以设置额度!!!
8)警惕社工的入侵,小心?Discord?私聊你的陌生人
比如 Discord 或者 Telegram,有人跟你认识几天,说要带你赚钱拿空投,让你安装他发给你的软件并登录,这种 99.99% 你会血本无归。账号被盗。
特别地,Discord 里面,进 NFT 的官方 Discord,会有人私聊你,告诉你获得了白名单,附带一个 mint 链接。子会把头像和名称改成官方的样子,其实是把他和你拉了一个组来实现的。
其实只要不贪,这种局还蛮好识破的,一般会告诉你在几个小时内 mint,数量 1-10。很多大热项目一个白名单 mint 一两个不错了,这一上来顶格 10 个还带时间限制。
还有,会有子模仿项目官网做个假网站,私信给项目 Server 里的人,让他们来 mint.
还有小伙伴在 opensea 买了假 NFT 后来发现不是官方的 然后过了几天那个 NFT 就从账户消失了 然而已经扣了...(怎么发现的?看链条 还有官方 discord 发了官方 Opensea 网址 )
还有假的 collab.land 钱包密码,给大 v 空投然后号称大 v 买了那个 NFT/token.
新的一年到来,大家一定要注意安全呀,希望看到本文的朋友都能平平安安顺顺利利!
首先大家都知道比特币最早的市场定位是支付,存放比特币的就是钱包,类似于支付宝,但又有不同,我们是把财产的安全性交给了支付宝,但比特币的安全性完全由我们自己负责。
比特币钱包对于大多数人来说熟悉又陌生,熟悉是因为听到很多,但是了解的并不多,因为钱包中的公钥、私钥、地址等诸多概念是难以理解的。我们看一下数字货币钱包类型:
全节点客户端
全节点客户端也被称之为(重钱包),是由比特币核心开发组(Bitcoin Core)设计开发比特币全节点客户端,是拥有完整区块链账本的节点,全节点需要占用内存同步所有的区块链数据,能够独立校验区块链上的所有交易并实时更新数据,全节点在区块链分布式账本中主要的作用是负责区块链的交易的广播和验证。
但由于比特币网络数据较大,首次使用下载同步需要的时间较长,对网络宽带以及硬盘也有一定的要求,据比特币官方数据,需要占用超过20G的硬盘空间。
因此,比特币全节点客户端并不适用于普通用户,一般都是一些专业的矿工,组织或者机构在使用。
根据bitnodes数据显示,全球比特币全节点客户端有10556个,主要分布在北美洲和欧洲。
轻钱包
轻钱包不存储比特币全部的交易数据,主要是用于支付和收款,交易信息只需要通过连接全节点调取即可。因此,轻钱包也称之为(SPV)Simple-payment-verification,这是早期比特币用于快捷支付的方式之一。
在线钱包
一般都是我们把钱包和私钥交给第三方进行管理,我们常用的交易所,各种钱包APP都是在线钱包的一种,例如比特币钱包比太钱包,多链钱包imtoken等等,他们也都是轻钱包的一种。但是,imtoken同时还是一个多重签名钱包,私钥掌握在用户手中。
硬件钱包(冷钱包)
硬件钱包一般是存储加密数字货币的硬件设备,可以是电脑,硬盘,手机,U盘等等。
但是他们也存在一定的风险,目前,安全系数最高的还是专业的硬件钱包设备,也是目前币圈公认的最安全的存放加密货币的方式。
专业的硬件钱包设备之所以安全可靠,主要是因为这些设备都会安装专业的芯片,例如有些硬件钱包使用的是军工级芯片 CC EAL6 +。
区块链钱包的核心就是私钥,而私钥其实质就是一串随机数,随机数的安全性直接影响着私钥的安全性。
安全性较好的芯片就是采用真随机数发生器生成的随机数,真随机数发生器通常采用来自热噪声方式生成随机数,随机性强,安全性高,很难被预测,这从源头上保证了私钥的机密性,也即确保了钱包的安全性。
专业的硬件钱包适用户大多数普通用户,非专业的硬件钱包设备需要掌握一定的技术才能更安全的存储用户的加密货币。
纸质钱包
纸质钱包就是把私钥抄写或者打印出来存放起来,也可以是生成的二维码。
这种方式也被称之为“冷存储”,技术含量低,安全系数也是比较高的。这也是早期离线存储加密货币的方式之一。
钱包只是一个软件,钱包的选择不重要,重要的是钱包里的加密货币需要安全。
网络是不安全的,只有离线保存私钥才是最安全的存储方式。
但币种硬件钱包设备不适合大多数用户,因为,普通用户不只是有比特币资产,还会有以太坊网络的各种资产等。
他们需要的是一个可以安全的存储多种加密货币的钱包,这时就需要一个多链性能的钱包来支持用户对不同加密资产存储的需求与日常使用。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。