1. 首页 > 快讯

如何判断你的数字资产是不是真的安全?

黑客从来只黑有价值的人,如果你觉得自己很安全,那只是你缺乏被黑的价值(人不出名,币还少)根据近几年的用户调研,掌柜发现有相当一部分用户,即使你告诉他千万遍“手机端软件更便捷,更安全”,他们仍然对PC端软件情有独钟。不得不承认,PC端软件确实有着不可替代的优势:显示面积大,鼠标键盘交互精确,适合流程复杂、规模更大的操作。

如果一定要使用PC端钱包软件进行资产管理(包括配合硬件钱包使用的观察钱包),我们需要付出两百倍的安全意识。

安全意识通常来自于对攻击面的了解,掌柜习惯通过以下3个“灵魂拷问”来判断:

01|哪些数据需要保护?

- 涉及隐私的敏感信息,如浏览记录、用户名&密码、私钥文件、钱包文件等

02|哪些应用程序存在敏感信息?

- 如交易软件、钱包软件、浏览器等

03|资产管理过程中哪些外部服务易被攻击?

- 如设备的通讯接口、交易软件、钱包软件、浏览器等

基于以上,我们试着对PC端钱包软件的各个使用环节展开疑问:

下载安装:登陆

的是不是官方网站?下载安装的是不是官方软件?

掌柜之前看到过一个案例,攻击者“山寨了一整套”下载网站和软件,山寨软件植入了专门针对MacOS开发的木马程序“GMERA”,然后诱导用户下载,实现盗取Cookie数据、网站浏览数据以及获取屏幕截图等。

这些被盗的隐私数据即使不包含关键的私钥或者密码信息,也非常有可能被应用到社会工程学,实施绑架、勒索、诈骗。

版本升级:这是不是官方升级提示?不升级有什么影响?升级前需要备份什么?

Electrum钱包就遭受过持续性钓鱼攻击。黑客利用旧版本的漏洞,给用户发送升级提示(不升级就不能发币),诱导用户升级到“携带后门”的客户端后,窃取私钥。

首先,肯定是鼓励大家持续升级的,新版本通常会包含:新功能,体验优化,修复bug。但是,升级前请务必检查:①升级包是否来自官方;②私钥/钱包文件是否已备份。

钱包文件备份:文件是什么内容?如果是私钥,触过网吗?触过网后还安全吗?

还是以Electrum钱包为例,创建新钱包,会生成一个WIF(Wallet Import Format)私钥文件。这个私钥文件会被用户自定义的密码加密。

私钥就是资产所有权,即使被攻击,只要私钥没泄露就还有可能保住资产。对于PC端保存的私钥文件,有以下三种主流攻击方式:

■木马程序窃取私钥文件 + 诱导用户输密码/暴力破解密码

■木马程序/蠕虫病毒恶意加密 + 勒索赎金

■直接损坏私钥文件或者电脑设备

那么,实现上述攻击的路径又有哪些呢?

■ 钓鱼网站/钓鱼邮件(远程)

在浏览网页和查看邮件时,一个简单的点击动作就足已中招,木马/病毒在不被察觉的情况下已下载运行。

现在很多重视安全的企业都会实行随机内部演练(给全员发送钓鱼邮件),运维工程师和一级部门负责人也会上中招名单——安全意识再强,也会有翻车的时候。

■ USB设备(物理)

所有USB设备都有一个微控制器芯片,可以被重新编程固件或写入恶意代码。

常规攻击路径:

① 准备一个可以被重新编程的USB设备,成本20不到

② 植入恶意代码(决定最终的攻击方式,如文件加密、文件传输、远程监控、摄像头监控等)

③ 插入电脑,恶意代码自动执行

USB攻击还包括利用USB协议/标准与操作系统交互中的漏洞实施攻击,如掌柜之前提到过的冷启动攻击(Cold Boot Attacks)。

冷启动攻击-demo

还有一种更为极端的情况:USB电气攻击,插入电脑后可触发电力超载,对设备造成永久性破坏。

交易签名:收币地址会不会被替换?签名的时候密码会不会被偷窥?

综上,下载到山寨客户端,收币地址被替换的可能性存在;恶意程序可以实现远程监控键盘输入或摄像头,密码也存在被偷窥的风险。

随着越来越的人参与到区块链这个行业中来,为行业注入新活力的同时也由于相关知识的薄弱以及安全意识的匮乏,给了攻击者更多的可乘之机。面对频频爆发的安全事件,慢雾特推出区块链安全入门笔记系列,向大家介绍区块链安全相关名词,让新手们更快适应区块链危机四伏的安全攻防世界!

短地址攻击 Short Address Attack

短地址攻击(Short Address Attack)是针对以太坊上 ERC20 智能合约的一种攻击形式,利用的是 EVM 中的对于输入字节码的自动补全机制进行攻击。

一般而言,针对 ERC20 合约中的 transfer 函数的调用,输入的字节码位数都是 136 字节的。当调用 ERC20 中的 transfer 函数进行 ERC20 Token 转账时,如果攻击者提供的地址后有一个或多个 0,那么攻击者就可以把地址后的零省去,提供一个缺位的地址。

当对这个地址转账的时候,比方说转账 100 的 A Token,然后输入的地址是攻击者提供的缺位地址,这时候,经过编码输入的数据是 134 字节,比正常的数据少了 2 字节,在这种情况下,EVM 就会对缺失的字节位在编码数据的末尾进行补 0 凑成 136 字节,这样本来地址段缺失的 0 被数据段的 0 补齐了,而由于给地址段补 0,数据段会少 0,而数据段缺失的 0 由 EVM 自动补齐,这就像数据段向地址段移动补齐地址段缺失字节位,然后数据段缺失的字节位由 EVM 用 0 补齐。

这种情况下,转账金额就会由 100 变成 100 * 16 的 n 次方,n 是地址缺失的 0 的个数。通过这种方式,攻击者就能对交易所或钱包进行攻击,盗窃交易所和钱包的资产。

慢雾安全团队建议交易所和钱包在处理转账的时候,要对转账地址进行严格的校验,防止短地址攻击的发生。详情可参考:遗忘的亚特兰蒂斯:以太坊短地址攻击详解

假币攻击 Fake Token Attack

假币攻击(Fake Token Attack),是针对那些在创建官方 Token 时采用通用创建模版创建出来的代币,每个 Token 的识别仅根据特定的标记进行识别,如 EOS 官方 Token 的识别标记是 "eosio.token"合约,波场的 TRC10 的识别标记是 tokenid,以太坊的 ERC20 是用合约地址作为识别标记。

那么这样就会出现一个问题,如果收款方在对这些 Token 进行收款的时候没有严格校验这些 Token 特有的标记,攻击就会发生,以 EOS 为例子,由于 EOS 官方 Token 采用的是合约来发行一个名为 EOS

的 Token,标记 EOS 本身的标识是 "eosio.token" 这个发行帐号,如果在接受转账的时候没有校验这个标识,攻击者就能用其他的帐号同样发行一个名为 EOS 的 Token,对交易所或钱包进行假币充值,换取真的代币。

2019 年 4 月 11 日,波场 Dapp TronBank 1 小时内被盗走约 1.7 亿枚 BTT(价值约 85 万元)。监测显示,黑客创建了名为 BTTx 的假币向合约发起“ invest ”函数,而合约并没有判定发送者的代币 id 是否与 BTT 真币的 id 1002000 一致。因此黑客拿到真币 BTT 的投资回报和推荐奖励,以此方式迅速掏空资金池。

对此,交易所和钱包在处理转账的时候,切记要严格检验各种代币各种标识,防止假币攻击。

整型溢出攻击 Integer Overflow Attack

数据的存储是区块链上重要的一环。但是每个数据类型本身是存在边界的,例如以太坊中 uint8 类型的变量就只能存储 0~255 大小的数据,超过了就存不下了。

那么如果要放一个超过数据类型大小的数字会怎样呢?例如把 256 存进 uint8 的数据类型中,数据显示出来会变成 1,而不是其他数值,也不会报错,因为 uint8 本身能存一个 8 位二进制数字,最大值为 11111111,如果这个时候加 1,这个二进制数就变成了 100000001,而因为数据边界的关系,只能拿到后 8 位,也就是 00000001,那么数字的大小就变成 1 了,这种情况我们称为上溢。

有上就有下,下溢的意思就是一个值为 0 的 uint8 数据,如果这个时候对它进行减 1 操作,结果会变成该数据类型所能存储的最大值加 1 减去被减数,在这个例子中是 255,也就是该数据类型所能存储的最大值。

那么如果上述两种情况发生在智能合约当中的话,恶意用户通过下溢的操作,操纵自己的帐号向其他帐号发送超过自己余额数量的代币,如果合约内没有对余额进行检查,恶意用户的余额就会下溢出变成一个超大的值,这个时候攻击者如果大量抛售这些代币,就能瞬间破坏整个代币的价值系统。

慢雾安全团队建议所有的智能合约开发者在智能合约中对数据进行操作的时候,要严格校验数据边界,防止整形溢出攻击的发生。详情可参考:BEC 智能合约无限转币漏洞分析及预警。

条件竞争攻击 Race Condition

条件竞争(Race Condition)攻击的方式很多样,但是核心的本质无非是对某个条件的状态修改的竞争,如上期介绍的重入漏洞,也是条件竞争的一种,针对的是用户余额这个条件进行竞争,只要用户的余额没有归零,用户就能一直提走智能合约的钱。这次介绍的条件竞争的例子是最近发生的著名的 Edgeware 锁仓合约的拒绝服务漏洞,详情可参考:关于 Edgeware 锁仓合约的拒绝服务漏洞。

这个漏洞问题的本质在于对新建的锁仓合约的余额的这个条件进行竞争。攻击者可以监控所有链上的锁仓请求,提前计算出锁仓合约的地址,然后向合约地址转账,造成锁仓失败。

在官方没有修复之前,要防止这种攻击,只能使用比攻击者更高的手续费让自己的锁仓交易先行打包,从而与攻击者形成竞争避免攻击。最后,官方修复方案为不对锁仓合约的余额进行强制性的相等检查,而是采用大于等于的形式,避免了攻击的发生。

慢雾安全团队建议智能合约的开发者在智能合约中对某些状态进行修改的时候,要根据实际情况充分考虑条件竞争的风险,防止遭受条件竞争攻击。

你们的数字货币钱包真的安全吗?安全并没有绝对的保障,不仅是被盗,数字货币还有很多种失踪的机会。对于投资者来讲,口袋里的数字货币消失了分三种情况,第一类,全部都是你的错;第二类,这个锅你得背一半;第三类,真的不是你的错。

自2015年以太坊正式上线以来,就频繁发生资产被盗等安全事件。2016年6月,基于以太坊的众筹项目TheDAO遭到攻击,导致300多万以太坊损失;2017年7月,以太坊钱包Parity被盗,导致15万以太坊损失;2017年11月,Parity钱包再次出现bug,价值上亿美元的以太坊资产被冻结。

数字货币钱包:数字货币钱包分为热钱包(在线钱包)和冷钱包(离线钱包)大家常用的一直联网状态下的钱包都是热钱包。比如电脑客户端钱包,手机APP钱包,网页钱包等

热钱包:(在线钱包)

优点:使用方便,新手易操作

交易转账的效率比较高

缺点:安全性不如冷钱包号

冷钱包:(离线钱包)

没有联网状态下使用过的钱包是冷的。比如专业的硬件钱包,将私钥写在纸上,也有人利用不联网的设备制作冷钱包

优点:非常安全

缺点:创建钱包不方便,交易也很麻烦

据外媒报道几乎所有的硬件钱包,都能被破解。黑客只需要接触手机两分钟,不管你是否屏蔽,就可以轻易转走所有的币。

绝大多数硬钱包和软钱包,都不安全。

2017年,在美国拉斯维加斯举行的世界黑客大会DEF CON 25上,国外某安全团队,就向观众演示了如何破解比特币硬件钱包。

其中就包括最古老的比特币钱包Trezor。

Trezor使用了STMicroelectronics(意法半导体)生产的非安全芯片。黑客在拿到Trezor后,通过拆除其外壳,就可以利用漏洞,转走比特币。

这个过程最快只需要15秒。

现状:目前国内大部分基于手机平台(MTK

)的比特币钱包,都可以被破解。在对多款MTK钱包进行测试时发现,通过导出钱包固件,不仅可以看到多个币种的缓存信息,还可以找到生成助记词的各种库。业内安全人士评价道:这是一个很通用的USB漏洞。黑客可以很轻松地植入恶意软件,盗走交易口令和私钥信息。

随着钱包热兴起,越来越多的厂商加入这一战场,但它们对安全的理解往往不到位,这无疑大大增加了安全隐患。当然啦,没有多少人可以有精力、有能力去做这些,而且我们持有的比特币等数字加密货币数量也不会很多,对于我们来说,能做到不丢失写有钱包秘钥的纸条、U盘或者硬盘就可以,生活中,需要多留心。

随着区块链和数字资产逐渐普及,安全问题愈发成为投资者最关心的事情。据Bcsec数据显示,2018年区块链安全事件造成的经济损失高达22.5亿美元,今年累计损失已达7.3亿美金,长期来看,区块链安全爆发出来的问题处于高速上升趋势。

而在区块链安全问题中,交易所是最不能忽视的一环。昨日,币安“KYC风波”又把交易所的安全问题转移到投资者视野的中央,虽然CZ及时澄清了本次KYC事件,表示没有任何证据表明流传的KYC资料是新流出的、安全团队正在全力核实,但我们还是会思考和联想,应该如何守护自己拥有的数字资产的安全?

 1/2    1 2 下一页 尾页

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

联系我们

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

微信号:wx123456