Cointime

Download App
iOS & Android

SharkTeam: Prisma Finance への攻撃の分析

2024 年 3 月 28 日、Prisma Finance はフラッシュ ローン攻撃を受け、プロジェクトは約 1,221 万米ドルを失いました。

SharkTeam はこのインシデントの技術分析を実施し、セキュリティ上の注意事項をまとめました。今後のプロジェクトがこれから学び、ブロックチェーン業界のセキュリティ ラインを共同で構築できることを期待しています。

攻撃者 1: 0x7e39e3b3ff7adef2613d5cc49558eab74b9a4202 (0x7e39 と省略)

攻撃契約 1: 0xd996073019c74b2fb94ead236e32032405bc027c (0xd996 と省略)

攻撃者 2: 0x7fe83f45e0f53651b3ed9650d2a2c67d8855e385

攻撃契約 2: 0x4148310fe4544e82f176570c6c7b649290a90e17

攻撃対象コントラクト: 0x1cc79f3f47bfc060b6f761fcd1afc6d399a968b6

この攻撃には 16 のトランザクションが含まれており、最初の攻撃トランザクションを例に挙げます。

0x00c503b595946bccaea3d58025b5f9b3726177bbdc9674e634244135282116c7

攻撃プロセスは次のとおりです。

1. アドレス 0x56a201b872b50bbdee0021ed4d1bb36359d291ed (0x56a2 と省略) にあるターゲット契約のすべての担保と負債を読み取ります。

返された結果は次のとおりです。

返された結果は次のとおりです。

アドレス 0x56a2 には、対象契約の担保として合計 1,745 wstETH があり、負債総額は 1,442,100 mkUSD です。

2. 攻撃者 0x7e39 は、攻撃コントラクト 0xd996 を通じて、mkUSD 債務コントラクトの flashLoan 関数を呼び出します。

パラメーター受信者は MigrateTroveZap に設定され、金額は上記でクエリされたすべての負債です。

次に、受信側 (ここでは MigrateTroveZap) の onFlashLoan 関数が flashLoan 関数内で呼び出されます。

onFlashLoan 関数は、最初にフラッシュ ローンを通じて元の負債をすべて返済し、受け手に担保を引き出し、次に受け手が一定量の担保を再度抵当に入れて一定量の借金を借ります。次の 2 つの主要な関数があります。

(1) closeTrove 関数、借金を返済し、すべての担保 (1745.08 swtETH) を troverManager から受取人に引き出します (これは MigrateTroveZap コントラクトです)。

(2) openTrove 関数、受信者は 463.18 wstETH を troverManager に再抵当し、1,443,598 mkUSD の負債を負います。

上記のデータから、flashLoan 関数が実行された後、troverManager から抽出され、アドレス 0x56a2 に属する担保がまだ受信機に保持されており、その金額は約 1745.08 – 463.18 = 1281.90 wstETH であることがわかります。

3. 攻撃者 0x7e39 は、コントラクト 0xd996 を攻撃することにより、フラッシュ ローンを通じてバランサーから 1 wstETH を借りました。

次に、1 wstETH を住宅ローンにして 2000 mkUSD の借金を借り、手数料を加えた場合、合計借金は 2200 mkUSD になります。

4. ステップ 2 と同様に、mkUSD 債務コントラクトの flashLoan 関数を呼び出します。ここではパラメータ受信者はまだ MigrateTroveZap に設定されており、金額は 1 wstETH を約束した後の債務全体、つまり 2000 mkUSD です。 FlashLoan 関数では、受信側の onFlashLoan 関数が呼び出され、続いて closeTrove 関数と openTrove 関数が呼び出されます。

ただし、ここでの closeTrove 関数と openTrove 関数のパラメーター アカウントは、上記のアドレス 0x56a2 ではなくなり、1 wstETH を約束する攻撃コントラクト 0xd996 になります。

(1) closeTrove 関数、借金を返済し、すべての担保 (1 swtETH) を troverManager から受取人に引き出します (これは依然として MigrateTroveZap 契約です)。この時点で、受信機には 1281.90 +1=1282.90 wstETH が存在します。

(2) openTrove 関数。受信者は 1282.80 wstETH (ほぼ全額) を troverManager に再抵当し、2001.8 mkUSD の負債を負います。

実際、ここで担保にある 1281.80 wstETH は、攻撃コントラクト 0xd996 に属しているのではなく、上記のアドレス 0x56a2 に属しています。

5. 最後に、攻撃者 0x7e39 は、攻撃コントラクト 0xd996 を通じて個別に closeTrove 関数を呼び出し、抵当に設定された 1282.80 wstETH を攻撃コントラクト 0xd996 に抽出しました。

フラッシュローンを返済した後も、攻撃者は 1281.80 wstETH (約 230 万米ドル) の利益を得ました。

このインシデントの根本原因は、プロジェクト契約にロジックと権限の検証があり、攻撃者がこの脆弱性を利用して他のアカウント アドレスから質入された資産を取得できることです。

攻撃者が最終的に取得した wstETH は、troverManager コントラクトの元のアドレス 0x56a2 の担保であり、mkUSD コントラクトの flashLoan 関数を通じて、MigrateTroveZap コントラクトの onFlashLoan 関数のパラメータをカスタマイズし、MigrateTroveZap を使用して担保に変換しました。攻撃コントラクトを抽出し、それを使ってコントラクトを攻撃したので、それを抽出します。

攻撃者は、mkUSD コントラクトの flashLoan 関数および MigrateTroveZap コントラクトの onFlashLoan 関数を通じて、他のアカウント アドレスの住宅ローンと引き出しを操作します。

(1) flashLoan 関数にはパラメータ受信者アドレスの検証がありません。onFlashLoan 関数の受信者は口座のすべての担保を受け取るため、受信者は信頼できると検証される必要があるためです。

(1) flashLoan 関数にはパラメータ受信者アドレスの検証がありません。onFlashLoan 関数の受信者は口座のすべての担保を受け取るため、受信者は信頼できると検証される必要があるからです。

(2) onFlashLoan 関数にはアカウント アドレスの検証がありません。closeTrove 関数と openTrove 関数は両方とも運用されているアカウントの資産であるため、アカウントに権限検証を追加する必要があります。

これら 2 つのアドレス パラメーターの検証に加えて、数量パラメーターと flashLoan 関数の実装ロジックも検証する必要がある場合があります。

この攻撃に対応するには、開発プロセス中に次の予防措置に従う必要があります。

(1) プロジェクトの設計および開発プロセス中、特に資産の譲渡を伴う場合には、ロジックの完全性と厳密性を維持する必要があり、呼び出し元が確実に機能研究許可を取得できるようにするための検証を強化する必要もあります。 、呼び出し関数、関数パラメータ、転送ロジックなどはすべて安全で信頼できます。

(2) プロジェクトがオンラインになる前に、契約監査を実施する専門の第三者監査チームを見つける必要があります。

SharkTeam のビジョンは、Web3 の世界を保護することです。このチームは、ブロックチェーンとスマート コントラクトの基礎理論に精通した、世界中から集まった経験豊富なセキュリティ専門家と上級研究者で構成されています。リスクの特定とブロック、スマートコントラクト監査、KYT/AML、オンチェーン分析などのサービスを提供し、高度な持続的脅威(高度な持続的脅威)に効果的に対抗できるオンチェーンのインテリジェントなリスク特定とブロックプラットフォームChainAegisを作成しました。 Web3 の世界における Persistent Threat)、APT)。 Polkadot、Moonbeam、polygon、Sui、OKX、imToken、Collab.Land など、Web3 エコシステムのさまざまな分野の主要企業と長期的な協力関係を確立しています。

公式ウェブサイト:https://www.sharkteam.org

Twitter: https://twitter.com/sharkteamorg

電報: https://t.me/sharkteamorg

ディスコード: https://discord.gg/jGH9xXCjDZ

コメント

全てのコメント

Recommended for you

  • 米上院銀行委員会の委員長は、ステーブルコインの利回りに関する新たな草案が早ければ今週中にも公表される可能性があると述べた。

    Cointimeの報道によると、上院銀行委員会の委員長を務めるティム・スコット上院議員は、ワシントンD.C.で開催されたブロックチェーンサミットで、議員らは早ければ今週中にも、少なくともステーブルコイン関連の条項を含む新たな法案草案を目にする可能性があると述べた。スコット議員は、法案の中で最も注目を集めているのはステーブルコインの利回り問題だが、議員らは引き続きこの問題に取り組んでいると指摘した。 スコット議員は、「今週中に最初の提案が提出されるだろう。もしそれが週末までに実現すれば、少なくとも法案の枠組みが形になりつつあるかどうかが分かるだろう。そうなれば、我々はより良​​い状況に立てると思う」と述べた。また、ステーブルコインの利回り問題に関して、民主党のアンジェラ・アルソブルックス上院議員、共和党のトム・ティリス上院議員、そしてホワイトハウス高官のパトリック・ウィット氏の尽力も、この進展に貢献していると述べた。 スコット氏は、過去1か月間の交渉で、ドナルド・トランプ大統領とその家族の暗号資産プロジェクトに対する議員の懸念、主要な規制機関における超党派代表の欠如、顧客確認(KYC)規制など、その他の未解決問題も取り上げられたと述べた。 スコット氏はまた、「倫理問題と定足数については、合意に非常に近づいていると思います。これは相手側にとっても重要な問題だと認識しているので、こちらも対応しています。また、いくつかの人事についても進展が見られており、これは良いニュースです。DeFiに関しては、マーク・ワーナー上院議員が注力している分野であり、マネーロンダリング対策(AML)は非常に重要な要素です。これらの問題についても前進していると思います」と述べた。

  • ゴールデンモーニングブリーフィング|3月18日の主要な夜間動向

    21:00~7:00 キーワード:ファントムウォレット、ストライプウォレット、オートノマスウォレット、イラン 1. イランは、米国とイスラエルが自国領土を使用することを容認する国に対して、合法的に攻撃できると主張している。 2. 米国CFTC(商品先物取引委員会)は、ファントムウォレットはブローカーとしての登録を必要としないと発表。 3. アリゾナ州司法長官は、予測マーケティング担当者のカルシ氏を刑事告発。 4. 米国国務省は、世界中のすべての在外公館に対し、「直ちに」安全保障評価を実施するよう命じた。 5. ロビンフッド・ベンチャーキャピタルは、ストライプウォレットとイレブンラボに約3500万ドルを投資。 6. GSRは、オートノマスウォレットとアーキテックを買収するために5700万ドルを投資し、暗号資産ファンド管理プラットフォームを構築。 7. 米国証券取引委員会(SEC)とCFTCは、ほとんどのデジタル資産は証券ではないとする新たな暗号資産ガイダンスを発表。

  • 米国証券取引委員会(SEC)と商品先物取引委員会(CFTC)は、仮想通貨に関する新たな見解を発表し、ほとんどのデジタル資産は証券の範疇には含まれないとした。

    Cointimeは3月18日、米国証券取引委員会(SEC)と商品先物取引委員会(CFTC)が暗号資産に関する68ページのガイダンス文書を公表し、ほとんどのデジタル資産は証券ではないと明記したと報じた。この新たな説明では、ステーブルコイン、デジタル商品、および「デジタル商品」トークンの分類が詳細に説明されており、これらはすべて証券ではないと両機関は述べている。また、「非証券暗号資産」がどのようにして証券になり得るのかを説明し、マイニング、プロトコルステーキング、エアドロップに連邦証券法がどのように適用されるのかを明確にしている。 SECはさらに、非証券デジタル資産が投資契約の対象となる仕組みについても説明している。SECの説明によると、「非証券暗号資産は、発行者が投資家に対し共同事業への投資を促し、必要な経営業務を行うという約束または表明を行い、かつ購入者がそこから利益を得ると期待する理由がある場合に、投資契約の対象となる」。

  • マスターカードは、ステーブルコイン企業であるBVNKを最大18億ドルで買収する計画だ。

    Cointimeの報道によると、Mastercardはステーブルコインインフラのスタートアップ企業であるBVNKを、条件付き買収額3億ドルを含め最大18億ドルで買収する計画だ。この買収は、BVNKとCoinbaseの約20億ドル規模の合併交渉が決裂してからわずか4ヶ月後のことである。両社は火曜日に発表した共同声明で、この取引を確認した。

  • ビットコインが7万5000ドルを突破

    市場データによると、BTCは75,000ドルを突破し、現在75,033.01ドルで取引されており、24時間で2.83%上昇しています。市場は著しい変動に見舞われているため、リスク管理には十分ご注意ください。

  • FusnChainのメインネットがまもなくローンチされます。これは、金融取引のための世界初のパブリックブロックチェーンであり、PayFi時代に向けたオンチェーン金融取引インフラの到来を告げるものです。

    世界のWeb3インフラストラクチャ環境において、歴史的なパラダイムシフトが目前に迫っている。仮想通貨の世界と現実世界の資金の流れを結びつけることに特化した公式ネットワークであるFusnChainは、メインネットのローンチが間近であることを正式に発表した。

  • ビットコインが7万1500ドルを突破

    市場データによると、BTCは71,500ドルを突破し、現在71,510.19ドルで取引されており、24時間で1.06%上昇しています。市場は著しい変動に見舞われているため、リスク管理には十分ご注意ください。