Akropolis:无中生有?DeFi 协议 Akropolis 重入攻击简析

By:慢雾安全团队

11月13日,据CoinDesk消息,Akropolis协议遭受黑客攻击,损失约200万DAI,慢雾安全团队已于当天第一时间介入分析,并将结论同步给了相关关心方。以下为慢雾安全团队对此事件的简要分析,供大家参考。

背景提要

Akropolis是运行在以太坊上的借贷和存款协议,用户可以使用Akropolis进行借贷或在Akropolis存款收取借贷利息。

攻击流程简析

1.攻击者使用自己创建的token进行deposit,此时Akropolis合约会先记录一次合约中所有代币的总量;

2.Akropolis合约调用用户自己创建的token的transferFrom函数的时候,攻击者在transferFrom函数中重入Akropolis合约的deposit函数,并转入DAI到Akropolis合约中;

3.此时在重入的交易中,由于Akropolis合约会先获取合约中所有代币的总量,这个值和第一次调用deposit函数获取的合约代币总量的值一致;

4.Akropolis合约计算充值前后合约中代币总量的差值,攻击者在充值DAI后,会得到一定量的Delphitoken,获得token的数量就是充值DAI的数量;

5.铸币完成后,流程回到第一次deposit往下继续执行,这时合约会再次获取合约中所有代币的总量,这时由于在重入交易时,攻击者已经转入一定量的DAI,所以得到的代币总余额就是攻击者在重入交易完成后的代币总余额;

6.此时合约再次计算差值,由于第一次deposit的时候合约中所有代币的总量已经保存,此时计算出来的差值和重入交易中计算的差值一致,Akropolis合约再次铸币给攻击者。

总结

攻击者使用自己构造的token,对Akropolis合约的deposit函数进行重入,导致Akropolis合约使用相同的差值铸币了两次,但是只触发了一次转账,当攻击者提现的时候,就可以提两倍的收益,从而获利。

相关链接:

(1)CoinDesk关于Akropolis合约被攻击的报道:

https://www.coindesk.com/defi-project-akropolis-token-pool-drained

(2)分析样本:

https://etherscan.io/tx/0x3db8d4618aa3b97eeb3af01f01692897d14f2da090d5d6407f550a1b10c15133

往期回顾

BithumbGlobal入驻慢雾区,发布「安全漏洞与威胁情报赏金计划」

Web3大会|慢雾:区块链安全,永无止境的战争

慢雾:Harvest.Finance被黑事件简析

慢雾参与国家标准研究项目《区块链服务技术安全要求》编制

慢雾:DeFiSaver用户的31万枚DAI是如何被盗的?

慢雾导航

慢雾科技官网

https://www.slowmist.com/

慢雾区官网

https://slowmist.io/

慢雾GitHub

https://github.com/slowmist

Telegram

https://t.me/slowmistteam

Twitter

https://twitter.com/@slowmist_team

Medium

https://medium.com/@slowmist

币乎

https://bihu.com/people/586104

知识星球

https://t.zsxq.com/Q3zNvvF

火星号

http://t.cn/AiRkv4Gz

链闻号

https://www.chainnews.com/u/958260692213.htm

本文来源于非小号媒体平台:

慢雾科技

现已在非小号资讯平台发布68篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/9558992.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

币安为何推出第三条链?这对BNB意味着什么?

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

链链资讯

[0:0ms0-4:664ms