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
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意味着什么?
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。