火星链 火星链
Ctrl+D收藏火星链
首页 > Luna > 正文

区块链:区块链安全科普:假币攻击如何窃取你的数字资产

作者:

时间:1900/1/1 0:00:00

随着越来越的人参与到区块链这个行业中来,为行业注入新活力的同时也由于相关知识的薄弱以及安全意识的匮乏,给了攻击者更多的可乘之机。

面对频频爆发的安全事件,慢雾特推出区块链安全入门笔记系列,向大家介绍区块链安全相关名词,让新手们更快适应区块链危机四伏的安全攻防世界!

短地址攻击?ShortAddressAttack

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

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

南京市鼓楼区开建区块链产业先导区:6月21日,南京市鼓楼区块链产业先导区正式启动。据介绍,区块链产业先导区位于即将投入使用的鼓楼创新广场A3栋,总面积约2万平方米,将依托高新区核心资源优势,集中打造区块链公共平台、聚集区块链企业、配套区块链专项政策。鼓楼高新区招商发展与人才工作部部长吴素芹表示,接下来,鼓楼区将通过加大区块链产业投入和扶持力度,加快推进区块链技术产业化应用,力争用3至5年时间,将鼓楼区块链产业先导区打造成为省内区块链产业最集中、国内有影响力的区块链产业先导区。(南京日报)[2020/6/22]

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

行情 | 区块链板块收跌1.72% 数字货币板块收跌2.67%:A股收盘,上证指数收跌0.64%,区块链板块收跌1.72%,数字货币板块收跌2.67%。区块链板块中194只概念股中,43只上涨,147只为跌,4只平盘,其中深大通涨停,光一科技、安妮股份和金财互联跌停。数字货币板块31只概念股中,6只上涨,1只平盘,24只下跌,其中朗科科技跌停。[2019/11/15]

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

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

动态 | 美股收盘:区块链中概股涨少跌多 美股区块链概念股普跌:今日美股收盘,道琼斯指数收涨1.49%,纳斯达克指数收涨1.20%。中概股中区块链相关公司:人人网收跌1.37%,中网在线收涨3.08%,寺库收跌2.83%,迅雷收跌1.45%,猎豹移动收跌4.87%,兰亭集势收平,优点互动收涨3.11。美股区块链概念股:柯达收跌6.22%, 埃森哲收跌0.77%,Overstock.com收跌0.87%,Riot Blockchain收跌4.59%,Marathon Patent收跌2.42%,Square收跌4.80%。[2019/8/13]

假币攻击?Fake?Token?Attack

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

GroundX与韩国首尔数据化基金会为区块链达成共识:韩国KAKAO的区块链协力社GroundX与韩国首尔数据化基金会为构造基于区块链的公共部门创新服务达成共识。通过此次合作协议两个机构将在区块链创新事业与生态的活动进行共同合作。[2018/6/11]

那么这样就会出现一个问题,如果收款方在对这些Token进行收款的时候没有严格校验这些Token特有的标记,攻击就会发生,以EOS为例子,由于EOS官方Token采用的是合约来发行一个名为EOS的Token,标记EOS本身的标识是"eosio.token"这个发行帐号,如果在接受转账的时候没有校验这个标识,攻击者就能用其他的帐号同样发行一个名为EOS的Token,对交易所或钱包进行假币充值,换取真的代币。

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

华尔街巨头试行DLT 用区块链智能合约管理股权互换交易:高盛和摩根大通在内的一些华尔街巨头已经完成了一项试点,使用区块链智能合约来管理股权互换交易和交易后生命周期事件,其试点项目是由DLT初创公司Axoni利用其AxCore平台进行管理,这也拉动了DLT币价值的上涨。[2017/11/22]

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

整型溢出攻击?IntegerOverflowAttack

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

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

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

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

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

条件竞争攻击?RaceCondition

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

关于Edgeware锁仓合约的拒绝服务漏洞。

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

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

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

系列回顾:

区块链安全入门笔记(三)|慢雾科普

区块链安全入门笔记(四)|慢雾科普

区块链安全入门笔记(五)|慢雾科普

区块链安全入门笔记(六)|慢雾科普

区块链安全入门笔记(七)|慢雾科普

标签:区块链TOKETOKKEN区块链技术最早应用于Litecoin TokenbvctokenC3 Token

Luna热门资讯
SHO:给比特币装上“保险库”? 开发者:通过内置时间延迟可实现交易逆转

如果有一种机制可以在用户支付比特币时设置时间延迟,那会是什么样子? 图片来源:visualhunt这个想法已经提出来好几年了,而且有充分的理由相信,这会使坏人更难从比特币用户那里窃取资金.

1900/1/1 0:00:00
USD:销毁中本聪的比特币!为了不再让“假本聪们”惹是生非,有人这样建议

如今,网络上有很多人宣称自己就是“中本聪”本尊,比如CraigWright、爱沙尼亚的科学家、营销专家等等.

1900/1/1 0:00:00
BTC:主流币走势各异,能否脱离BTC下行颓势?

作者|哈希派分析团队本周灰度增持529枚LTC,其余主流币种未增持:据统计,本周灰度信托累计增持529枚LTC,本周BTC、ETH、BCH、ETC无增持.

1900/1/1 0:00:00
LTC:QKL123行情分析 | 山寨币率先反攻?需新资金破局(0812)

摘要:近日,BTC回调下行后反弹,而山寨币的反弹力度较强,市场避险情绪略有缓解,但量能不足以支撑继续上攻,市场很可能延续震荡调整,短期等待新资金入场.

1900/1/1 0:00:00
CON:引介 | 市集开发模式与以太坊 2.0 开发进程

我最近重读了EricRaymond于1997年撰写的经典论文《大教堂与市集》。这篇论文探讨了如果允许各类参与者加入软件项目的开发中,会发生什么样的情况。Eric称之为开源软件项目的“市集”模式.

1900/1/1 0:00:00
KKT:Bakkt的真正作用:或传统基金控制比特币份额的工具

一、加密货币市场的痛点:基础设施难以满足大额资金流动在开始讨论Bakkt交易所的具体影响之前,先看一下这个平台推出的目的.

1900/1/1 0:00:00