作者:Beosin1月9日凌晨、Truebit Protocolが5年前に展開した未オープンソースのコントラクトが攻撃を受け、8,535.36 ETH(約2640万ドル相当)を失いました。Beosinセキュリティチームは本件のセキュリティインシデントに関する脆弱性と資金追跡の分析を行い、その結果を以下に共有します。攻撃手法分析本件では最も重要な攻撃取引を例に分析します。取引ハッシュは:0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb0141. 攻撃者はgetPurchasePrice()を呼び出して価格を取得2. その後、脆弱な関数0xa0296215()を呼び出し、msg.valueの値を極小に設定コントラクトはオープンソースではないため、逆コンパイルしたコードから推測すると、この関数には算術ロジックの脆弱性(例:整数の切り捨て問題)が存在し、攻撃者は大量のTRUトークンを成功裏に鋳造しました。3. 攻撃者はburn関数を通じて鋳造したトークンを「売却」し、コントラクトのリザーブから大量のETHを引き出しました。この過程を4回繰り返し、各回でmsg.valueの値を増加させ、コントラクト内のETHをほぼ全て引き出すまで続けました。盗難資金の追跡チェーン上の取引データに基づき、Beosinは子会社のブロックチェーン調査・追跡プラットフォームBeosinTraceを通じて詳細な資金追跡を行い、その結果を以下に共有します。現在、盗まれた8,535.36 ETHは、主に0xd12f6e0fa7fbf4e3a1c7996e3f0dd26ab9031a60と0x273589ca3713e7becf42069f9fb3f0c164ce850aに分散して保管されています。そのうち、アドレス0xd12fは4,267.09 ETHを保有し、アドレス0x2735は4,001 ETHを保有しています。攻撃者の発信元アドレス(0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50)も267.71 ETHを保持しており、他の3つのアドレスには現時点で更なる資金移動は確認されていません。被盗資金の流れ分析図 by Beosin Trace以上のアドレスはすべてBeosin KYTによって高リスクアドレスとしてマークされています。攻撃者のアドレスを例に挙げると:Beosin KYT結語今回の盗難資金は5年前に未オープンソースだったスマートコントラクトに起因します。この種のコントラクトに対しては、プロジェクト側はコントラクトのアップグレードを行い、緊急停止やパラメータ制限、新しいバージョンのSolidityのセキュリティ機能を導入すべきです。また、セキュリティ監査は依然としてコントラクトにとって不可欠な要素です。セキュリティ監査を通じて、Web3企業はスマートコントラクトのコードをできるだけ包括的に検査し、潜在的な脆弱性を発見・修正し、コントラクトの安全性を向上させることが可能です。*Beosinは本件の全資金流向とアドレスリスクに関する完全な分析レポートを提供します。公式メールsupport@beosin.comからご請求ください。
損失超過2600万ドル、Truebit Protocolセキュリティインシデントの分析と盗まれた資金の流れ追跡
作者:Beosin
1月9日凌晨、Truebit Protocolが5年前に展開した未オープンソースのコントラクトが攻撃を受け、8,535.36 ETH(約2640万ドル相当)を失いました。Beosinセキュリティチームは本件のセキュリティインシデントに関する脆弱性と資金追跡の分析を行い、その結果を以下に共有します。
攻撃手法分析
本件では最も重要な攻撃取引を例に分析します。取引ハッシュは:0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014
攻撃者はgetPurchasePrice()を呼び出して価格を取得
その後、脆弱な関数0xa0296215()を呼び出し、msg.valueの値を極小に設定
コントラクトはオープンソースではないため、逆コンパイルしたコードから推測すると、この関数には算術ロジックの脆弱性(例:整数の切り捨て問題)が存在し、攻撃者は大量のTRUトークンを成功裏に鋳造しました。
この過程を4回繰り返し、各回でmsg.valueの値を増加させ、コントラクト内のETHをほぼ全て引き出すまで続けました。
盗難資金の追跡
チェーン上の取引データに基づき、Beosinは子会社のブロックチェーン調査・追跡プラットフォームBeosinTraceを通じて詳細な資金追跡を行い、その結果を以下に共有します。
現在、盗まれた8,535.36 ETHは、主に0xd12f6e0fa7fbf4e3a1c7996e3f0dd26ab9031a60と0x273589ca3713e7becf42069f9fb3f0c164ce850aに分散して保管されています。
そのうち、アドレス0xd12fは4,267.09 ETHを保有し、アドレス0x2735は4,001 ETHを保有しています。攻撃者の発信元アドレス(0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50)も267.71 ETHを保持しており、他の3つのアドレスには現時点で更なる資金移動は確認されていません。
被盗資金の流れ分析図 by Beosin Trace
以上のアドレスはすべてBeosin KYTによって高リスクアドレスとしてマークされています。攻撃者のアドレスを例に挙げると:
Beosin KYT
結語
今回の盗難資金は5年前に未オープンソースだったスマートコントラクトに起因します。この種のコントラクトに対しては、プロジェクト側はコントラクトのアップグレードを行い、緊急停止やパラメータ制限、新しいバージョンのSolidityのセキュリティ機能を導入すべきです。また、セキュリティ監査は依然としてコントラクトにとって不可欠な要素です。セキュリティ監査を通じて、Web3企業はスマートコントラクトのコードをできるだけ包括的に検査し、潜在的な脆弱性を発見・修正し、コントラクトの安全性を向上させることが可能です。
*Beosinは本件の全資金流向とアドレスリスクに関する完全な分析レポートを提供します。公式メールsupport@beosin.comからご請求ください。