智能合约攻击分析之庞氏代币合约漏洞

栏目: 编程工具 · 发布时间: 6年前

内容简介:以太坊智能合约中混杂进了不少庞氏骗局合约,他们向投资者承诺,如果你向某合约投资一笔以太坊,它就会以一个高回报率回赠你更多的以太币,然而高回报只能从后续的投资者那里源源不断地吸取资金以反馈给前面的投资者。根据区块链大数据评级机构RatingToken最新数据显示,2018年7月20日全球共新增9552个合约地址,其中317个为代币型智能合约,另外值得关注的是同一个账户创建了7900个完全相同的智能合约,共消耗Gas费22 ETH,疑似代投机构批量创建。ETH是一个典型的庞氏代币合约。该合约可以看成虚拟币交易

以太坊智能合约中混杂进了不少庞氏骗局合约,他们向投资者承诺,如果你向某合约投资一笔以太坊,它就会以一个高回报率回赠你更多的以太币,然而高回报只能从后续的投资者那里源源不断地吸取资金以反馈给前面的投资者。

根据区块链大数据评级机构RatingToken最新数据显示,2018年7月20日全球共新增9552个合约地址,其中317个为代币型智能合约,另外值得关注的是同一个账户创建了7900个完全相同的智能合约,共消耗Gas费22 ETH,疑似代投机构批量创建。

ETH是一个典型的庞氏代币合约。该合约可以看成虚拟币交易所,但只有ETH和ETHX (ERC20 token)交易对,每次交易,都有5%的token分配给整个平台的已有的token持有者,因此token持有者在持币期间,将会直接赚取新购买者和旧抛售者的手续费。从ETHX合约代码可以看出,该合约对transferFrom函数进行了扩展,transferFrom函数首先进行allowance限额判定,然后调用了自定义的transferTokens函数来完成转账。

智能合约攻击分析之庞氏代币合约漏洞

在transferTokens函数中,当to账户地址不等于合约地址,由于事先对from账户额度进行了安全检查,因此后面对from账户的balance运算不会产生溢出。

智能合约攻击分析之庞氏代币合约漏洞

当to账户地址等于合约地址时,则调用sell函数,sell函数中由于代码编写失误,错误的将from写成msg.sender,对msg.sender的额度进行了减法操作,而在减法操作前没有进行安全检查,因此存在溢出漏洞。

智能合约攻击分析之庞氏代币合约漏洞

为了完成对这个溢出漏洞的攻击,攻击者需要2个账户A、B,其中A账户代币余额不为0,B账户代币为0。

1)A账户调用approve给B授权一部分转账额度,假设授权额度为1;

2)B账户调用transferFrom,从A账户转1单位代币到智能合约;transferFrom调用sell函数时触发整数溢出,即0-1=2^255。B账户在余额为0的情况下获得了最大额度的token。

在ETHX合约攻击链中,攻击者使用了两个账户地址,分别为:

0x423b1404f51a2cdae57e597181da0a4ca4492f30

0x17a6e289e16b788505903cc7cf966f5e33dd1b94

首先,0x17a6e289e16b788505903cc7cf966f5e33dd1b94调用approve给0x423b1404f51a2cdae57e597181da0a4ca4492f30授权转账额度,参数value=1。

智能合约攻击分析之庞氏代币合约漏洞

然后,0x423b1404f51a2cdae57e597181da0a4ca4492f30调用transferFrom方法,从账户0x17a6e289e16b788505903cc7cf966f5e33dd1b94向ETHX合约地址0x1c98eea5fe5e15d77feeabc0dfcfad32314fd481 转移1个Token。

智能合约攻击分析之庞氏代币合约漏洞

调用前,balance(0x423b1404f51a2cdae57e597181da0a4ca4492f30)=0。调用后,溢出后balance(0x423b1404f51a2cdae57e597181da0a4ca4492f30)=2^255。

监控平台显示已经被攻击的同类代币合约如下表:

智能合约攻击分析之庞氏代币合约漏洞

总结:

但其实究其根本,之所以如此多的智能合约出现同类漏洞,其背后是混乱的数字代币发行现状。还要提醒的是,在数字货币的世界里,各种漏洞都潜伏其中,投资者需要做好漏洞随时暴露的心理准备,同时,平台自身的资质,也是投资者需要仔细考虑的重要因素。

(作者:区块链安全档案,内容来自链得得内容开放平台“得得号”;本文仅代表作者观点,不代表链得得官方立场)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人工智能

人工智能

Stuart J. Russell、Peter Norvig / 清华大学出版社 / 2011-7 / 158.00元

《人工智能:一种现代的方法(第3版)(影印版)》最权威、最经典的人工智能教材,已被全世界100多个国家的1200多所大学用作教材。《人工智能:一种现代的方法(第3版)(影印版)》的最新版全面而系统地介绍了人工智能的理论和实践,阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向。全书仍分为八大部分:第一部分“人工智能”,第二部分“问题求解”,第三部分“知识与推理”,第四部分“规划”,第五部......一起来看看 《人工智能》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具