揭秘 TGBS 代币价格操纵 - 攻击分析

本文为机器翻译
展示原文

TGBS 代币已被利用,并且由于 TGBS 代币合约中的漏洞,代币对已被耗尽,导致该代币对中的 TGBS 代币余额被销毁。所利用资金的估计总价​​值约为 15 万美元。

概述

攻击者地址:

https://bscscan.com/address/0xff1db040e4f2a44305e28f8de728dabff58f01e1

攻击交易: https://bscscan.com/tx/0xa0408770d158af99a10c60474d6433f4c20f3052e54423f4e590321341d4f2a4

漏洞合约(TGBS代币): https://bscscan.com/address/0xedecfa18cae067b2489a2287784a543069f950f4

漏洞利用分析

查看漏洞交易,我们可以看到攻击者的攻击合约反复向自己转移 1 wei 的 TGBS 代币。为了进一步分析攻击,我们应该检查 TGBS 代币合约的transfer函数。

_transfer函数中,我们可以注意到_burnPool内部函数被呼叫以进行正常传输。

这意味著,对于正常的转账, _swapPair TGBS 代币余额的 0.3% 的少量将被定期销毁。如果攻击者能够重复触发_burnPool ,他们就可以有效操纵_swapPair中的 TGBS 代币价格并从中获利。但是,我们可以看到_burnPool函数受到_burnBlock变数的保护,每次呼叫函数时,该变数都会与block.number进行比较并增加。

唯一重置_burnBlock值的函数是setBurnBlock ,该函数只能由合约所有者呼叫。

透过对最近呼叫setBurnBlock函数的交易进行进一步分析,我们发现该函数是由合约所有者在2024-03-06 06:24:25中呼叫的。攻击发生于 2024-03-06 07:27:55(大约在管理员呼叫setBurnBlock之后 1 小时)。攻击发生后, _burnBlock被管理员于 2024-03-06 07:38:37 重设回正常值。

结论

我们仍然不清楚这个漏洞是否是一种跑路。但是,在任何情况下都不建议在没有任何安全意识或向使用者公开的情况下呼叫可以更改重要内部变数值的函数。

来源
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
收藏
评论