Back to Blog

三州犬セキュリティインシデントの分析

Code Auditing
2021年7月21日
3 min read

7月21日、当社のDeFiRangerシステムは、いくつかの疑わしいトランザクションを報告しました。手動分析の結果、これらのトランザクションはSanshu Inuに対する攻撃であると確認しました。具体的には、Sanshu InuのMemstakeコントラクトが、deflationメカニズムを悪用して攻撃されました。 以下では、複数の攻撃トランザクションを使用して攻撃プロセスを説明します。

攻撃フロー

以下の図は、攻撃者(0x333)によって開始されたトランザクションの一部を示しています。

攻撃は4つのステップで構成されています。最も重要なのは2番目のステップで、ERC20トークンのデフレメカニズムを利用してMemstakeスマートコントラクトの報酬計算を操作します。

  • ステップ1(準備):攻撃者は2つの攻撃コントラクトを作成します。1つ目は2,049BのKEANUを預金するコントラクトです。2つ目は攻撃コントラクトです。

  • ステップ2(操作):攻撃者はまず、フラッシュローン(Flash LoanとDeFiエコシステムにおけるその応用のための第一歩(SBC 2021))を使用してUniswapV2から大量のKEANUトークンを借用し、次にステップ1で作成した2番目のスマートコントラクトを使用してトークンをMemestakeに預け入れ/引き出します。KEANUにはデフレメカニズムがあり、各トランザクションで2%のトークンがバーンされるため、Memestakeに預け入れられた実際のトークン数は、Memestakeコントラクトによって維持されている値(user.amount)よりも少なくなります。攻撃者はこのプロセスを繰り返し、Memestake内のKEANUトークン数を1e-07という少量にします。トランザクション0x00edおよび以下の図を参照してください。

  • ステップ3(利益の創出):攻撃者はMemestake.updatePool()を呼び出してaccMfundPerShareを更新します。この値はKEANUトークンの数(ステップ2で操作された)に依存します。その後、攻撃者は大量のMfund(約61M)を取得します。 詳細については、トランザクション0xa945を参照してください。
  • ステップ4(WETHへの交換):攻撃者はMFundとKEANUをWETHに交換し、Tornado.Cashを通じて資金を洗浄します。攻撃者は55.9484578158357 ETHの利益を得ました。

その他

興味深いことに、攻撃のステップ2/3はFlashbotsに関連しています。ステップ2では38 ETHでKEANUを購入します(0x00ed)。このトランザクションはサンドイッチ攻撃(Flashbots経由)によって攻撃されており、攻撃者自身がサンドイッチ攻撃の被害者となっています。ステップ3(0xa945)はUniswapでMFundを売却しており、Flashbotsのシーカーによって捉えられたアービトラージ機会を生み出しています。

BlockSecについて

BlockSecは、2021年に世界的に著名なセキュリティ専門家グループによって設立された、先駆的なブロックチェーンセキュリティ企業です。同社は、進化するWeb3の世界のセキュリティとユーザビリティを向上させることで、その大量採用を促進することにコミットしています。この目的のために、BlockSecはスマートコントラクトおよびEVMチェーンのセキュリティ監査サービス、セキュリティ開発と脅威のプロアクティブなブロックのためのPhalconプラットフォーム、資金追跡と調査のためのMetaSleuthプラットフォーム、そしてWeb3ビルダーが暗号通貨の世界で効率的にサーフィンするためのMetaDock拡張機能を提供しています。

現在までに、同社はMetaMask、Uniswap Foundation、Compound、Forta、PancakeSwapなど300社以上の著名なクライアントにサービスを提供し、Matrix Partners、Vitalbridge Capital、Fenbushi Capitalなどの著名な投資家から2回の資金調達で数千万米ドルを受け取っています。

公式ウェブサイト:https://blocksec.com/

公式Twitterアカウント:https://twitter.com/BlockSecTeam

Sign up for the latest updates
安全な保管を超えて、第2部:ウォレットの暗号技術を安全に実装する
Security Insights

安全な保管を超えて、第2部:ウォレットの暗号技術を安全に実装する

攻撃者は、保護された秘密鍵のコピーを読み取らずに、その秘密鍵を復元できるのでしょうか。『Beyond Secure Storage』の第2部では、乱数の品質不足、エントロピーの損失、署名用ノンスの不備によって鍵の予測や復元が可能になった6件の事例を検証します。そこから鍵生成と署名に関する実装要件を導き出し、決済機関がコードレビューと導入済みシステムのテストを通じて、それらをどう評価できるかを説明します。

安全な保管を超えて、第1部:安全な決済・署名ワークフローの設計
Security Insights

安全な保管を超えて、第1部:安全な決済・署名ワークフローの設計

攻撃者が秘密鍵を盗まずに、認可されていない操作が有効な署名を得ることは、なぜ可能なのでしょうか。「安全な保管の先へ」第1回では、Bitget、Bybit、Binanceなどの事例を通じて、支払い要求、トランザクションの構築、署名、実行、決済の各段階における認可の不備を検討します。そのうえで、認可されていない操作を防ぎ、損失を抑えるための設計原則を導き出し、レビュー、監査、ペネトレーションテスト、演習によって、それらの防御策をどう検証できるかを説明します。

NEAR Intentsの悪用:返金処理の欠陥とセキュリティ上の教訓
Security Insights

NEAR Intentsの悪用:返金処理の欠陥とセキュリティ上の教訓

NEAR Intentsへの攻撃では、過大な払い戻しイベントを利用し、預け入れた資産が返還された後も内部残高を維持しました。本分析では、レシートの処理の流れと、合計3,865,021 USDTに上るBNB Chainでの7件の出金を再構成します。また、これらの資金流出とプロジェクトが報告した全額回収を区別し、NEARスマートコントラクトの開発と監査におけるセキュリティ上の考慮事項を示します。

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit
三州犬セキュリティインシデントの分析