freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

DeFi借贷协议Akropolis重入攻击事件分析
2020-11-13 17:15:43

近日,DeFi借贷协议Akropolis遭到网络黑客的攻击。Akropolis创始人兼首席执行官Ana Andrianova表示,攻击者利用在衍生品平台dYdX的闪电贷进行重入攻击,造成了200万美元的损失。

007apYDply4gknmg506ujj30qo0g0jtn.jpg

成都链安团队在接到自主独立研发的区块链安全态势感知平台(Beosin-Eagle Eye)报警后,第一时间对本次攻击事件进行了调查,结果发现:

1、Akropolis确实遭到攻击

2、攻击合约地址为

0xe2307837524db8961c4541f943598654240bd62f

3、攻击手法为重入攻击

4、攻击者获利约200万美元

攻击手法分析

通过对链上交易的分析,发现攻击者进行了两次铸币,如下图所示:

007apYDply4gknmg4s7e9j30mf075gmz.jpg

图一

007apYDply4gknmg4ulx1j30nh076abf.jpg

图二

参考链接:https://etherscan.io/tx/0xddf8c15880a20efa0f3964207d345ff71fbb9400032b5d33b9346876bd131dc2

但据oko.palkeo.com交易调用情况显示,攻击者仅调用了一次deposit函数,如下图所示:

007apYDply4gknmg54lp6j30c2098wfs.jpg

图三

通过跟踪函数调用,成都链安团队发现,攻击者在调用合约的deposit时,将token设置为自己的攻击合约地址,在合约进行transferFrom时,调用的是用户指定的合约地址,如下图所示:

007apYDply4gknmg4t9v3j30b504tmxk.jpg

图四

通过分析代码发现,在调用deposit函数时,用户可指定token参数,如下图所示:

007apYDply4gknmg4r3svj30ki0k1wfx.jpg

图五

而deposit函数调用中的depositToprotocol 函数,存在调用 tkn 地址的safeTransferFrom函数的方法,这就使得攻击者可以通过构造“safeTransferFrom”从而进行重入攻击。

007apYDply4gknmg4q708j30m803lt8o.jpg

图六

事件小结

Akropolis作为DeFi借贷、存储服务提供商,其存储部分使用的是Curve协议,这在当天早些时候的攻击中曾被利用。攻击者从该项目的yCurve和sUSD池中取出了5万美元的DAI,而在耗尽这些池子前,共计窃取了价值200万美元的DAI。

在本次攻击事件中,黑客使用重入攻击配合dYdX闪电贷对存储池发起了侵占。在协议中,资产存储池可谓是防守重点,作为项目方,对资金池的安全预防、保护措施应置于最优先级别。特别是,为应对黑客不断变化的攻击手段,定期全面检查和代码升级缺一不可。

最后,成都链安强烈呼吁,对于项目方而言,安全审计和定期检测切勿忘怀;对于投资者而言,应时刻不忘安全警戒,注意投资风险。

本文作者:, 转载请注明来自FreeBuf.COM

# 数据泄露 # 漏洞分析 # 数据安全
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦
收入专辑