BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

小さな視点から見た SushiSwap 攻撃事件の簡単な分析

慢雾科技
特邀专栏作者
この記事は約1303文字で、全文を読むには約2分かかります
クレイジーな寿司、隠れたリスク。
AI要約
展開
クレイジーな寿司、隠れたリスク。

投稿者 : yudan@スローフォグセキュリティチーム

副題

バックグラウンドフィード

攻撃プロセス

攻撃プロセス

1. 攻撃者は、USDT/WETH などの Sushi Swap の取引ペアを選択し、流動性を追加して対応する SLP (USDT/WETH Liquidity Proof、以下 SLP) を取得し、取得した SLP と別の少額を使用します。新しい Sushi Swap トランザクション ペアは、新しいトークン プールの SLP1 (WETH/SLP(USDT/WETH) 流動性証明、以下 SLP1 と呼びます) を取得し、それを Sushi Maker コントラクトに転送します。

2. Sushi Swap の変換関数を呼び出します。受信 token0 は最初のステップで取得した SLP で、token1 は WETH です。 Convert 関数を呼び出した後、Sushi Maker コントラクトは token0 と token1 で構成されるトークン プールの burn 関数を呼び出して SLP1 を書き込み、攻撃者が最初のステップで Sushi Maker コントラクトに入力した SLP1 を書き込み、WETH と SLP を取得します。 。

3. Sushi Maker コントラクトの変換関数は、内部 _toWETH 関数を呼び出して、書き込みによって取得されたトークンを WETH に変換します。これは、2 番目のステップで、Sushi Maker コントラクトが書き込みによって SLP と WETH を取得したためです。このうち、WETH は変換する必要がなく、SLP のみ変換する必要があります。この時点で、変換は、最初のステップで攻撃者によって作成されたトランザクション ペアである SLP/WETH トランザクション ペアを呼び出すことによって実行されます。 Sushi Maker コントラクトは変換中にすべての BalanceOf (token0) を WETH に変換するため、ここで渡される token0 は SLP であるため、コントラクトは SLP / WETH トランザクション ペアを通じてコン​​トラクト内のすべての SLP を変換します (交換された SLP には USDT/生成された収入が含まれます) WETH トランザクションと、第 2 ステップの書き込み機能を介してコントラクトによって取得された SLP の各スワップによって)。 SLP / WETH トークン プールは攻撃者によって作成され、攻撃者は初期化時に少量の WETH を追加するだけでよく、交換プロセス中に少量の WETH を Sushi Maker コントラクト内の対応するトランザクションと交換できます。 Sushi Maker トランザクション ペア。すべての SLP が正しいです。

要約する

要約する

攻撃者は、SLP と WETH を使用して新しいトークン プールを作成し、新しいトークン プールの SLP1 を使用して Sushi Maker で変換し、少量の SLP を使用して Sushi Maker コントラクト内のすべての SLP を自分が作成したトークン プールに転送します。一定期間内の当該取引ペアの手数料を全額徴収させていただきます。そして、他の取引ペアでもこのプロセスを繰り返し、利益を上げ続けます。

Sushiswap
安全
投资
Odaily公式コミュニティへの参加を歓迎します
購読グループ
https://t.me/Odaily_News
チャットグループ
https://t.me/Odaily_GoldenApe
公式アカウント
https://twitter.com/OdailyChina
チャットグループ
https://t.me/Odaily_CryptoPunk