# Cellframe Network 遭受闪电贷攻击事件分析2023年6月1日10时7分55秒(UTC+8),Cellframe Network 在某智能链上因流动性迁移过程中的代币数量计算问题遭到黑客攻击。据悉,黑客从此次攻击中获利76,112美元。## 攻击过程分析攻击者首先通过闪电贷获得了1000个某智能链原生代币和50万个 New Cell 代币。随后,攻击者将所有 New Cell 代币兑换成原生代币,导致交易池中原生代币数量接近零。最后,攻击者用900个原生代币兑换成了 Old Cell 代币。值得注意的是,攻击者在发起攻击前,先添加了 Old Cell 和原生代币的流动性,获得了 Old lp 代币。接下来,攻击者调用了流动性迁移函数。此时,新池子中几乎没有原生代币,而老池子中几乎没有 Old Cell 代币。迁移过程包括以下步骤:1. 移除旧流动性,将对应数量的代币返还给用户2. 按照新池子的比例添加新的流动性由于旧池子中基本没有 Old Cell 代币,在移除流动性时获得的原生代币数量增加,而 Old Cell 代币的数量减少。这导致用户只需添加少量的原生代币和 New Cell 代币即可获取流动性,多余的原生代币和 Old Cell 代币则返还给用户。最后,攻击者移除新池子的流动性,并将迁移返回的 Old Cell 代币兑换成原生代币。此时,老池子中有大量的 Old Cell 代币但没有原生代币,攻击者将 Old Cell 代币重新兑换成原生代币,从而完成盈利。攻击者随后重复进行迁移操作,进一步扩大收益。## 攻击根本原因此次攻击的根本原因在于流动性迁移过程中的计算问题。在迁移流动性时,项目方直接取交易对两个币种的数量进行计算,这种方法容易被攻击者操控。## 安全建议1. 在迁移流动性时,应当综合考虑新旧池子中两种代币数量的变化以及当前的代币价格,而不是简单地计算代币数量。2. 在代码上线前,应进行全面的安全审计,以发现并修复潜在的漏洞。这起事件再次提醒我们,在设计和实施复杂的金融操作时,需要格外注意安全性和稳健性,以防止潜在的攻击和漏洞被利用。
Cellframe Network遭闪电贷攻击 黑客获利7.6万美元
Cellframe Network 遭受闪电贷攻击事件分析
2023年6月1日10时7分55秒(UTC+8),Cellframe Network 在某智能链上因流动性迁移过程中的代币数量计算问题遭到黑客攻击。据悉,黑客从此次攻击中获利76,112美元。
攻击过程分析
攻击者首先通过闪电贷获得了1000个某智能链原生代币和50万个 New Cell 代币。随后,攻击者将所有 New Cell 代币兑换成原生代币,导致交易池中原生代币数量接近零。最后,攻击者用900个原生代币兑换成了 Old Cell 代币。
值得注意的是,攻击者在发起攻击前,先添加了 Old Cell 和原生代币的流动性,获得了 Old lp 代币。
接下来,攻击者调用了流动性迁移函数。此时,新池子中几乎没有原生代币,而老池子中几乎没有 Old Cell 代币。迁移过程包括以下步骤:
由于旧池子中基本没有 Old Cell 代币,在移除流动性时获得的原生代币数量增加,而 Old Cell 代币的数量减少。这导致用户只需添加少量的原生代币和 New Cell 代币即可获取流动性,多余的原生代币和 Old Cell 代币则返还给用户。
最后,攻击者移除新池子的流动性,并将迁移返回的 Old Cell 代币兑换成原生代币。此时,老池子中有大量的 Old Cell 代币但没有原生代币,攻击者将 Old Cell 代币重新兑换成原生代币,从而完成盈利。攻击者随后重复进行迁移操作,进一步扩大收益。
攻击根本原因
此次攻击的根本原因在于流动性迁移过程中的计算问题。在迁移流动性时,项目方直接取交易对两个币种的数量进行计算,这种方法容易被攻击者操控。
安全建议
在迁移流动性时,应当综合考虑新旧池子中两种代币数量的变化以及当前的代币价格,而不是简单地计算代币数量。
在代码上线前,应进行全面的安全审计,以发现并修复潜在的漏洞。
这起事件再次提醒我们,在设计和实施复杂的金融操作时,需要格外注意安全性和稳健性,以防止潜在的攻击和漏洞被利用。