INE:独家 | Fairyproof Tech:Pinecone被攻击事件分析

本文由“Fairyproof Tech”原创,授权“金色财经”独家发布。

8月19日,BSC上的收益聚合项目Pinecone Finance的保险库受到黑客攻击,损失约350万没PCT代币(市值约合20万美元)。

截至写稿时为止,项目方已经针对此次攻击中受损的用户发布了补偿计划:项目团队及投资人共持有491万枚代币,将用所有代币补偿用户。

尽管此次攻击受损的金额相对近期动辄千万、上亿美元的金额不算太大,但这起攻击事件还是给我们留下了值得吸取的经验和教训。

这次攻击出现漏洞的地方在于转账过程使用的代币有损耗,而合约对这个损耗没有处理好于是就导致漏洞出现从而被黑客攻击。

在正常状况下,用户之间转账(ERC-20等)代币的时候,如果代币在转账过程中没有损耗,处理起来是比较简单的。但如果某些代币在转账过程中会出现损耗,则处理这类代币的转账就要非常小心了。

独家 | 加密货币市值前十币种6涨4跌:金色财经数据显示,截止当前,加密货币市值前十币种6涨4跌。近24小时涨跌情况分别为:BTC(8765美元,-0.45%)、ETH(224.82美元,-0.29%)、XRP(0.236美元,+2.94%)、BCH(322.54美元,+1.26%)、BSV(226.40美元,+0.86%)、USDT(1.00美元,-0.1%)、LTC(61.39美元,+0.66%)、EOS(3.58美元,+1.06%)、BNB(19.02美元,+2.27%)、Tezos(2.76美元,-0.51%)。[2020/2/28]

在Pinecone项目中,其代币PCT是作为资金池的质押代币,在其合约设计的代币转账过程中会有手续费的损耗。而项目将这个损耗计入了用户的份额中,于是用户份额和质押的PCT总额就会出现偏差。这个偏差就能被攻击者用来领取多余的奖励。

具体而言,本次攻击存在漏洞的合约有:

独家 | 近7天比特币搜索指数整体日均值整体同比上升132%:据百度指数数据,近7天区块链搜索指数整体日均值为3986,整体同比上升91%,移动同比上升83%;近7天比特币搜索指数整体日均值为25498,整体同比上升132%,移动同比上升133%。[2020/2/11]

PineconeFarm合约,其地址为:

0x4099f27fb72788b7bb5cb64e3d2b865eb82d0f8f

farm合约使用的策略合约IPineconeStrategy,其地址为:

0x1e542DB46eb87cc8E5fA8e1856eC53F89dc4bC89

PCT代币合约,其地址为:

0x6019384a802310117a6E889e7021d2d0A144fE50

漏洞涉及的相关代码片段为:

独家 | 印尼交易所FUTURAX用户交易存在token“耗损”风险:第三方大数据评级机构RatingToken最新数据显示,2018年8月12日全球共新增1418个合约地址,其中335个为代币型智能合约。RatingToken安全审计团队发现,近日上线的印尼加密货币交易平台FUTURAX(FTXT),该合约代码中存在除法类型强制转换,在使用ETH购买Token的过程中,会将购买数量强制转换为整数,该问题将导致部分ETH交易Token用户产生损失。

此外,昨日新增合约风险榜TOP10的包括Vote Bhelp(Bhelp)、SuperCard(SPC)、FoMo3D Long Official(F3D)、OK3D(OK3D)、Airpay Tier 3、Tokensale、Q3 Token(Q3)、3)、Seacharters.com Da Dan和Rich peasant chain(RPC)。如需查看更多智能合约检测结果,请查看原文链接。[2018/8/14]

PineconeToke的_transfer()函数:

独家 | 极豆资本创始合伙人张议云:分布式存储是下一个风口:区块链行业发展中,不同的投资机构之间投资逻辑不同。对此,极豆资本创始合伙人张议云对金色财经表示“极豆资本主要投赛道,真正的大钱不是赚来的,而是捡来的。区块链1.0的风口是比特币以及相关的山寨币,2.0的风口是围绕着以太坊的生态起来的,3.0下一个风口我们推测是分布式存储。现阶段的区块链技术跟1995年的互联网非常像,那时的操作系统只是个DOS命令行,还没有可视化界面,与现在的公链操作系统非常像。所以需要花时间去挖掘更好的公链操作系统以及分布式存储可落地的解决方案。”[2018/8/3]

在这里,PineconeToken的transferFrom的调用了_transfer()函数,在_transfer()中用户转账会收取手续费,因而实际到账的金额比transferFrom传入的 amount 值要小。

独家 | 数字货币分析师肖磊:断崖式下跌后暴力反弹“施压”多空双方:昨天大盘开启“强势下杀与暴力拉升”模式,对此行情金色财经独家采访到数字货币分析师肖磊,他指出:“目前看来,比特币市场已经聚集了诸多的专业投资者,这些投资者很多可能都来自华尔街的专业操盘手,甚至是对冲基金团队,这种操作手法类似于外汇,断崖式下跌后暴力反弹,本身就是一种洗盘的方式,对多空双方都造成很强的压力,会导致后期很多投资者望而却步,但也有好处,就是促使更多的投资者,不得不选择长线投资,不得不降低杠杆,很多投机需求会被洗出。

在行情大幅波动的时候,持币地址多少等数据的研究意义不是很大,因为投资者都在用情绪在做交易。目前看来,除了比特币、以太币有一定的基础性现实需求之外,其他的币种可能缺乏现实支撑,因此场内资金更多的还是指交易需求比较强烈的资金,这部分资金目前撤离的迹象还是比较明显的,但这类资金如果遇到下一波行情,也随时可能回来。目前熊市已经很明显了,只是投资者往往会关注一些小币种的走势,对大趋势不太敏感。

关于未来行情回暖,肖磊进一步指出:“主要看政策面,大趋势下看待此次下跌,是投资者回归现实的开始。如果政策面没有太大变化,规模性用户还是难以出现,则并不乐观。当然熊市中也会出现很多小反弹,对于投资者而言,做波段是有意义的。[2018/6/25]

PineconeFarm合约的deposit()函数:

在上述代码中,PineconeFarm将存入的PCT质押到IPineconeStrategy合约中获取收益。通过使用BSC的vm trace工具,可以发现这个IPineconeStrategy是一个VaultRabbitCake合约。PineconeFarm对用户份额share的计算会用到_wantAmt。而这个_wantAmt和下面的函数片段又有关联。

策略合约的deposit()函数

从上述代码可以看出,在计算sharesAdded时,其分母是wantTotal,而wantTotal 依赖balance()。balance是关联的总锁仓PCT余额。由于实际的PCT余额小于 deposit传入的金额_wantAmt,这就会造成用户份额在计算时增加了。

最后,当攻击者调用withdraw函数时,只要输入比deposit值大的参数就可以赎回超过质押数的PCT代币。

按照这个机制,黑客在攻击时,可以重复重复调用deposit和withdraw功能,从而导致合约质押的PCT损耗不断增加、资金池持有的PCT余额不断变小。然后在计算奖励时,由于使用资金池中的余额作为分母,而分母越小,则可额外领取的奖励就越多。

了解了代码的漏洞及相关机制后,我们再来看黑客诸多攻击中的一次攻击:

这次攻击中,黑客的地址为:0xfc6682db7e9f57882e8b18ebc9adc7a19f770494,其交易流程如下:

可以看出第一笔交易0xe446f质押了8.1万PCT,然后在0x76d33 提取奖励时却提取了16万PCT。

我们继续查看withdraw交易的参数,可以看出传入amount值为 22603495a2af5d0ccc34,将其转换为10进制数就是16万,远超质押金额8.1万。详细细节如下图所示:

从这次攻击的漏洞原因看,在转账时有损耗的代币在参与收益类项目时,存在较多的问题。因此Fairyproof Tech提醒项目方要充分考虑损耗对收益计算的影响。

对此类问题,Fairyproof Tech一直以来都会在审计时特别和项目方强调。另外我们也再次强调审计在项目中的重要性,希望项目方在项目上线前充分做好审计工作。

关于Fairyproof Tech:

Fairyproof Tech科技有限公司是一家专注区块链生态安全的公司。Fairyproof Tech科技主要通过“代码风险检测+逻辑风险检测“的一体化综合方案服务了诸多新兴知名项目。公司成立于2021年01月,团队由一支拥有丰富智能合约编程经验及网络安全经验的团队创建。

团队成员参与发起并提交了以太坊领域的多项标准草案,包括ERC-1646、ERC-2569、ERC-2794,其中ERC-2569 被以太坊团队正式收入。

团队参与了多项以太坊项目的发起及构建,包括区块链平台、DAO组织、链上数据存储、去中心化交易所等项目, 并参与了多个项目的安全审计工作,在此基础上基于团队丰富的经验构建了完善的漏洞追踪及安全防范系统。

作者:

Fairyproof TechCEO 谭粤飞

美国弗吉尼亚理工大学(Virginia Tech, Blacksburg, VA, USA) 工业工程(Industrial Engineering) 硕士(Master)。曾任美国硅谷半导体公司 AIBT Inc(San Jose, CA, USA) 软件工程师,负责底层控制系统的开发、设备制程的程序实现、算法的设计,并负责与台积电的全面技术对接和交流。自2011至今,从事嵌入式,互联网及区块链技术的研究,深圳大学创业学院《区块链概论》课程教师,中山大学区块链与智能中心客座研究员,广东省金融创新研究会常务理事 。个人拥有4项区块链相关专利、3本出版著作。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-1:554ms