> 最近、エーテルオンチェーンの Cork Protocol が攻撃を受け、攻撃者はプロジェクト契約の論理的な脆弱性(重要なパラメータの未検証)を利用して 1200 万ドルを獲得しました。本記事では今回の攻撃事件について詳細な分析と資金追跡を行いました。 **作者: ベオシン** 最近、イーサリアムチェーン上のCork Protocolが攻撃され、攻撃者はプロジェクトのコントラクトの論理的な脆弱性を通じて1,200万ドルの利益を得ました(主要なパラメータは検証されていません)。 Beosinセキュリティチームは、攻撃の詳細な分析と財務追跡を行い、その結果を次のように共有しました。 ## 詳細な攻撃ステップ 攻撃を分析する前に、Cork Protocolの特別なビジネスロジックを理解する必要があります。 従来の金融と同様のクレジットデフォルトスワップメカニズム(Depeg Swapと呼ばれる)を導入し、ペッグ資産(stETHなど)のデペギングリスクをトークン化し、ユーザーはペッグ資産のデペギングリスクをヘッジまたは取引することができます。 トークンの種類は次のとおりです。 - 償還資産(RA):原資産(ETHなど) - ペッグ資産(PA):原資産にペッグされている資産(stETHなど) - デペッグスワップ(DS):プットオプションに似ており、価格下落をヘッジします。 - カバー トークン (Cover Token, CT) — コール オプションに似ており、デペグが発生していない場合は利益を得ることができ、デペグが発生した場合は損失を負担する必要があります。 ユーザーが RA を預けると、Cork Protocol は DS と CT トークンを鋳造します。ユーザーはこれらを取引したり、リスクを賭けるために引き換えたりできます。 今回の攻撃は、実際のトークン市場と攻撃者が構築した偽の市場に関係しています: ! [](https://img.gateio.im/social/moments-d2838b9b3db25f3461df0e4cc5aef492) (1) 攻撃者は最初に偽の市場を作成しました。この市場の RA は weETH8DS-2 トークンで、PA は wstETH です。weETH8DS-2 は本来、実際の市場では DS として機能するはずですが、偽の市場では RA として機能することができます。これは、クロスマーケットのトークン検証によって禁止されるべきものでした。 ! [](https://img.gateio.im/social/moments-b413d457ca0eaced203f83fd092d68ac) (2)攻撃者は実際の市場からweETH8CT-2を購入します。 ! [](https://img.gateio.im/social/moments-0d0454174d3e3c268c2330bcfb183089) (3)攻撃者は、CorkHook関数のbeforeSwap関数の適切なアクセス制御の欠如を悪用して、カスタムフックデータをCorkCall関数に送信し、weETH8DS-2をフェイク\_DSとフェイク\_CTに分割しました。 これが可能なのは、weETH8DS-2がフェイクマーケットのRAであり、フェイク_DSとフェイク_CTを攻撃者のものと見なすためです。 ! [](https://img.gateio.im/social/moments-280440871057dd82ff46831c9d8a8545) (4) fake\_DS と fake\_CT トークンが攻撃者に移転された後、Cork Protocol のルールに基づき:DS と CT トークンは RA トークンに交換可能です。攻撃者は受け取った fake\_DS と fake\_CT トークンを仮想市場で weETH8DS-2 に交換しました。 (5) 現在、攻撃者はステップ2で購入した weETH8CT-2 と再構成された weETH8DS-2 を所有しており、これは実際の市場で RA(すなわち wstETH)に交換することができます。 これにより、攻撃者は実際の市場の DS 流動性を別の市場(構築された偽の市場)に移転し、RA として償還することで、実際の市場の RA の流動性を引き出すことができます。攻撃者は今回の事件で3761 wstETHを盗み、約1200万ドル相当の ETH に交換しました。 ## 脆弱性分析 上記の攻撃プロセスを通じて、私たちはこの事件の脆弱性の利用理由が以下の3点であることを確認できます: - 検証が不足しています:RAとして使用されるDSが他の市場で使用されているかどうかを確認していません。 - CorkCall 不適切に検証された信頼できるユーザーが提供するコールバックデータ。 - このプロトコルは、許可なしで制限のない市場を作成することを可能にします。 Cork Protocolは複数回のセキュリティ監査と監査コンペを経てきましたが、この論理的な脆弱性は見落とされていました。もしトークンの再利用性に対してより厳格な検査を行い、コールバックデータの厳格な検証を行い、市場の創出に対してより厳格な管理を行えば、このような攻撃は回避できたでしょう。 ## 盗まれた資金の追跡 Beosin Traceは盗まれた資金を追跡し、攻撃者の0xea6f30e360192bae715599e15e2f765b49e4da98アドレスが約3761wstETHの利益を上げ、その後、Uniswapや1inchなどのDeFiプロトコルを介してwstETHをETHに交換し、合計金額が4530.6であることを発見しました。 現在、盗まれた資金はまだ移転されていません。Beosin Traceはハッカー関連のアドレスをブラックリストに追加し、今後も追跡を続けます。 ! [](https://img.gateio.im/social/moments-41ef7d2d759fed516c336f4702b00147) Beosin Trace の分析によると、すべての盗まれた資金は依然として攻撃者のアドレスに保管されています。 ## まとめ この攻撃の中心にあったのは、Cork Protocolの中核となるビジネスロジックの脆弱性であり、これにより攻撃者は偽のトークンを通じて大量のwstETHを盗むことになりました。 Cork Protocolのような複雑なDeFiプロトコルでは、多面的かつ多層的なセキュリティ監査を通じて、コントラクトのビジネスロジックの詳細なテストとレビューが必要です。 これまで、Beosinのセキュリティチームは、複数のDeFiプロトコル(Surf Protocol、SyncSwap、LeverFi、Owlto Financeなど)のセキュリティ監査を完了し、見落とされがちなコントラクトロジックの欠陥やエッジケースの発見に焦点を当て、プロトコルが完全にテストされていることを確認してきました。
脆弱性分析|アンカー型資産プロトコルであるCork Protocolからの1,200万ドルの盗難と資金追跡の分析
作者: ベオシン
最近、イーサリアムチェーン上のCork Protocolが攻撃され、攻撃者はプロジェクトのコントラクトの論理的な脆弱性を通じて1,200万ドルの利益を得ました(主要なパラメータは検証されていません)。 Beosinセキュリティチームは、攻撃の詳細な分析と財務追跡を行い、その結果を次のように共有しました。
詳細な攻撃ステップ
攻撃を分析する前に、Cork Protocolの特別なビジネスロジックを理解する必要があります。 従来の金融と同様のクレジットデフォルトスワップメカニズム(Depeg Swapと呼ばれる)を導入し、ペッグ資産(stETHなど)のデペギングリスクをトークン化し、ユーザーはペッグ資産のデペギングリスクをヘッジまたは取引することができます。 トークンの種類は次のとおりです。
償還資産(RA):原資産(ETHなど)
ペッグ資産(PA):原資産にペッグされている資産(stETHなど)
デペッグスワップ(DS):プットオプションに似ており、価格下落をヘッジします。
カバー トークン (Cover Token, CT) — コール オプションに似ており、デペグが発生していない場合は利益を得ることができ、デペグが発生した場合は損失を負担する必要があります。
ユーザーが RA を預けると、Cork Protocol は DS と CT トークンを鋳造します。ユーザーはこれらを取引したり、リスクを賭けるために引き換えたりできます。
今回の攻撃は、実際のトークン市場と攻撃者が構築した偽の市場に関係しています:
!
(1) 攻撃者は最初に偽の市場を作成しました。この市場の RA は weETH8DS-2 トークンで、PA は wstETH です。weETH8DS-2 は本来、実際の市場では DS として機能するはずですが、偽の市場では RA として機能することができます。これは、クロスマーケットのトークン検証によって禁止されるべきものでした。
!
(2)攻撃者は実際の市場からweETH8CT-2を購入します。
!
(3)攻撃者は、CorkHook関数のbeforeSwap関数の適切なアクセス制御の欠如を悪用して、カスタムフックデータをCorkCall関数に送信し、weETH8DS-2をフェイク_DSとフェイク_CTに分割しました。 これが可能なのは、weETH8DS-2がフェイクマーケットのRAであり、フェイク_DSとフェイク_CTを攻撃者のものと見なすためです。
!
(4) fake_DS と fake_CT トークンが攻撃者に移転された後、Cork Protocol のルールに基づき:DS と CT トークンは RA トークンに交換可能です。攻撃者は受け取った fake_DS と fake_CT トークンを仮想市場で weETH8DS-2 に交換しました。
(5) 現在、攻撃者はステップ2で購入した weETH8CT-2 と再構成された weETH8DS-2 を所有しており、これは実際の市場で RA(すなわち wstETH)に交換することができます。
これにより、攻撃者は実際の市場の DS 流動性を別の市場(構築された偽の市場)に移転し、RA として償還することで、実際の市場の RA の流動性を引き出すことができます。攻撃者は今回の事件で3761 wstETHを盗み、約1200万ドル相当の ETH に交換しました。
脆弱性分析
上記の攻撃プロセスを通じて、私たちはこの事件の脆弱性の利用理由が以下の3点であることを確認できます:
検証が不足しています:RAとして使用されるDSが他の市場で使用されているかどうかを確認していません。
CorkCall 不適切に検証された信頼できるユーザーが提供するコールバックデータ。
このプロトコルは、許可なしで制限のない市場を作成することを可能にします。
Cork Protocolは複数回のセキュリティ監査と監査コンペを経てきましたが、この論理的な脆弱性は見落とされていました。もしトークンの再利用性に対してより厳格な検査を行い、コールバックデータの厳格な検証を行い、市場の創出に対してより厳格な管理を行えば、このような攻撃は回避できたでしょう。
盗まれた資金の追跡
Beosin Traceは盗まれた資金を追跡し、攻撃者の0xea6f30e360192bae715599e15e2f765b49e4da98アドレスが約3761wstETHの利益を上げ、その後、Uniswapや1inchなどのDeFiプロトコルを介してwstETHをETHに交換し、合計金額が4530.6であることを発見しました。
現在、盗まれた資金はまだ移転されていません。Beosin Traceはハッカー関連のアドレスをブラックリストに追加し、今後も追跡を続けます。
!
Beosin Trace の分析によると、すべての盗まれた資金は依然として攻撃者のアドレスに保管されています。
まとめ
この攻撃の中心にあったのは、Cork Protocolの中核となるビジネスロジックの脆弱性であり、これにより攻撃者は偽のトークンを通じて大量のwstETHを盗むことになりました。 Cork Protocolのような複雑なDeFiプロトコルでは、多面的かつ多層的なセキュリティ監査を通じて、コントラクトのビジネスロジックの詳細なテストとレビューが必要です。 これまで、Beosinのセキュリティチームは、複数のDeFiプロトコル(Surf Protocol、SyncSwap、LeverFi、Owlto Financeなど)のセキュリティ監査を完了し、見落とされがちなコントラクトロジックの欠陥やエッジケースの発見に焦点を当て、プロトコルが完全にテストされていることを確認してきました。