如何应对区块的堵塞攻击?
一句话对这个漏洞进行总结:合约中的漏洞是个典型的逻辑漏洞,漏洞主要在Pool合约中的mint方法中,在mint方法中调用calcMint方法计算了铸造xFTM时需要的最少FTM和最少FSM,而合约代码只对FSM进行了销毁,却没有考虑FTM的情况,导致即使用户不输入FTM,也能获得xFTM。
逻辑漏洞
Pool合约
mint
没有考虑FTM
约通常也处理以太,并且经常将以太发送到各种外部用户地址。这些操作要求合约提交外部调用。这些外部调用可能会被攻击者劫持,攻击者可以强制合约执行进一步的代码(通过一个回退函数),包括对自身的调用。
虽然 The DAO 攻击发生在2016年,但解除攻击的方案依然值得学习。
tx.origin攻击实现,一次调用,转干合约