# Cellframe Networkに対するフラッシュローン攻撃の解剖学2023年6月1日10時7分55秒(UTC+8)、Cellframe Networkはバイナンススマートチェーン上で流動性移行プロセス中のトークン計算の問題によりハッキングを受けました。この攻撃によりハッカーは約76,112ドルの利益を得ました。! [Web3セキュリティ|.] プール比率のフラッシュローン操作によるセルフレームネットワーク攻撃事件の解析](https://img-cdn.gateio.im/social/moments-6c9507885f4ac7353632bd9445fac0bd)## 攻撃の詳細攻撃者は最初にフラッシュローンを通じて1000個のBNBと50万個のNew Cellトークンを取得しました。次に、彼らはすべてのNew CellトークンをBNBに交換し、プール内のBNBの数量がほぼゼロに近づきました。最後に、攻撃者は900個のBNBをOld Cellトークンに交換しました。注目すべきは、攻撃者が攻撃を実施する前にOld CellとBNBの流動性を追加し、Old lpを獲得したことです。! [Web3セキュリティ|.] プール比率の操作によるフラッシュローンに対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/social/moments-5a5c4537315796a60ae82412408601a1)## 攻撃フロー1. 攻撃者が流動性移転関数を呼び出します。この時、新しいプールにはほとんどBNBがなく、古いプールにはほとんどOld Cellトークンがありません。2. 移行プロセスには、古い流動性を削除し、対応する数量のトークンをユーザーに返却すること;新しいプールの割合に従って新しい流動性を追加することが含まれます。3. 旧プールにOld Cellトークンがほとんどないため、流動性を除去する際に得られるBNBの数量が増加し、Old Cellトークンの数量が減少します。4. ユーザーは少量のBNBとNew Cellトークンを追加するだけで流動性を得ることができ、余分なBNBとOld Cellトークンはユーザーに返されます。5. 攻撃者は新しいプールの流動性を取り除き、移動して返されたOld CellトークンをBNBに交換します。6. この時、古い池には大量のOld CellトークンがあるがBNBはない。攻撃者はOld Cellトークンを再びBNBに交換し、利益を得る。7. 攻撃者は移動操作を繰り返します。! [Web3セキュリティ|.] プール比率のフラッシュローン操作によるCellframeネットワークへの攻撃の分析](https://img-cdn.gateio.im/social/moments-12b37a73f151641fe15ccb0b2103e26b)! [Web3セキュリティ|.] プール比率のフラッシュローン操作に対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/social/moments-d95e38131d2cd07cf66d7cda1a719b1a)## 根本原因流動性移転プロセスにおけるトークン数の計算に問題が発生し、攻撃者がプールの比率を操作することで利益を得ることを許可します。! [Web3セキュリティ|.] フラッシュローン操作プール比率に対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/social/moments-d2404f8ad69c17b96bf7b87a315a029a)## セキュリティの提案1. 流動性を移動する際には、新旧プールの2種類のトークンの数量の変化と現在のトークン価格を総合的に考慮する必要があります。2. 取引ペアの2つの通貨の数量を直接使用して計算することは避けてください。これは操作されやすいです。3. コードを本番環境にデプロイする前に、潜在的な脆弱性を防ぐために徹底的なセキュリティ監査を実施してください。この出来事は、複雑な金融操作を設計し実施する際に、特に流動性移転などの敏感な操作が関与する場合に、さまざまな状況を十分に考慮することの重要性を再度浮き彫りにしました。同時に、ブロックチェーンエコシステムにおけるセキュリティ監査の重要性を軽視してはいけないことを私たちに思い出させます。! [Web3セキュリティ|.] プール比率のフラッシュローン操作の影響を受けたセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/social/moments-3734f1a6b3a2793edf1eac051b0d90dd)
Cellframe Networkがフラッシュローン攻撃を受け、76,000ドルの損失
Cellframe Networkに対するフラッシュローン攻撃の解剖学
2023年6月1日10時7分55秒(UTC+8)、Cellframe Networkはバイナンススマートチェーン上で流動性移行プロセス中のトークン計算の問題によりハッキングを受けました。この攻撃によりハッカーは約76,112ドルの利益を得ました。
! [Web3セキュリティ|.] プール比率のフラッシュローン操作によるセルフレームネットワーク攻撃事件の解析](https://img-cdn.gateio.im/webp-social/moments-6c9507885f4ac7353632bd9445fac0bd.webp)
攻撃の詳細
攻撃者は最初にフラッシュローンを通じて1000個のBNBと50万個のNew Cellトークンを取得しました。次に、彼らはすべてのNew CellトークンをBNBに交換し、プール内のBNBの数量がほぼゼロに近づきました。最後に、攻撃者は900個のBNBをOld Cellトークンに交換しました。
注目すべきは、攻撃者が攻撃を実施する前にOld CellとBNBの流動性を追加し、Old lpを獲得したことです。
! [Web3セキュリティ|.] プール比率の操作によるフラッシュローンに対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/webp-social/moments-5a5c4537315796a60ae82412408601a1.webp)
攻撃フロー
攻撃者が流動性移転関数を呼び出します。この時、新しいプールにはほとんどBNBがなく、古いプールにはほとんどOld Cellトークンがありません。
移行プロセスには、古い流動性を削除し、対応する数量のトークンをユーザーに返却すること;新しいプールの割合に従って新しい流動性を追加することが含まれます。
旧プールにOld Cellトークンがほとんどないため、流動性を除去する際に得られるBNBの数量が増加し、Old Cellトークンの数量が減少します。
ユーザーは少量のBNBとNew Cellトークンを追加するだけで流動性を得ることができ、余分なBNBとOld Cellトークンはユーザーに返されます。
攻撃者は新しいプールの流動性を取り除き、移動して返されたOld CellトークンをBNBに交換します。
この時、古い池には大量のOld CellトークンがあるがBNBはない。攻撃者はOld Cellトークンを再びBNBに交換し、利益を得る。
攻撃者は移動操作を繰り返します。
! [Web3セキュリティ|.] プール比率のフラッシュローン操作によるCellframeネットワークへの攻撃の分析](https://img-cdn.gateio.im/webp-social/moments-12b37a73f151641fe15ccb0b2103e26b.webp)
! [Web3セキュリティ|.] プール比率のフラッシュローン操作に対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/webp-social/moments-d95e38131d2cd07cf66d7cda1a719b1a.webp)
根本原因
流動性移転プロセスにおけるトークン数の計算に問題が発生し、攻撃者がプールの比率を操作することで利益を得ることを許可します。
! [Web3セキュリティ|.] フラッシュローン操作プール比率に対するセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/webp-social/moments-d2404f8ad69c17b96bf7b87a315a029a.webp)
セキュリティの提案
流動性を移動する際には、新旧プールの2種類のトークンの数量の変化と現在のトークン価格を総合的に考慮する必要があります。
取引ペアの2つの通貨の数量を直接使用して計算することは避けてください。これは操作されやすいです。
コードを本番環境にデプロイする前に、潜在的な脆弱性を防ぐために徹底的なセキュリティ監査を実施してください。
この出来事は、複雑な金融操作を設計し実施する際に、特に流動性移転などの敏感な操作が関与する場合に、さまざまな状況を十分に考慮することの重要性を再度浮き彫りにしました。同時に、ブロックチェーンエコシステムにおけるセキュリティ監査の重要性を軽視してはいけないことを私たちに思い出させます。
! [Web3セキュリティ|.] プール比率のフラッシュローン操作の影響を受けたセルフレームネットワーク攻撃の分析](https://img-cdn.gateio.im/webp-social/moments-3734f1a6b3a2793edf1eac051b0d90dd.webp)