DeFiは確かにユーザーにかなりの収入をもたらすことができますが、資金の安全性は資産の着実な成長の中核です。 コブセキュリティチームは、一般的なセキュリティリスクと対応するセキュリティ対策のDeFiの相互作用を調べ、私はブルDeFiのセキュリティの相互作用であなたを助けることができることを願っています。
私は、あなたがDeFiのセキュリティ対話に役立つことができることを願っています。
DeFiサマー2019が始まって以来、イーサを筆頭とする、より創造的な分散型金融プロトコル(DeFiプロトコル)が次々と登場し、オンチェーン資産の利用可能性が大幅に豊かになり、ブロックチェーンユーザーがオンチェーン資産をより多様な金融活動により活用し、有利な収益を生み出すことができるようになりました。ブロックチェーン・ユーザーは、オンチェーン資産をより多様な金融活動に活用し、そこから有利な収益を得ることができます。しかし、より多くのDeFiプロトコルが出現するにつれ、セキュリティ上の課題も生じている。不完全な統計によると、ブロックチェーン攻撃による資産の損失は、2023年だけで26億1000万ドルに達している。DeFiプロトコルに参加する過程で、対応する収益の期待値を評価することに加え、プロトコルのセキュリティ面の評価も無視すべきではなく、そうでなければユーザーに大きな損失をもたらすことは明らかだ。
一般的に、プロトコルのセキュリティ評価の定義の主流はコードのセキュリティ評価であり、この定義の次元は比較的一次元的である。 ここでの問題は、評価自体が静的なプロセスにおけるプロトコルのセキュリティを考慮するだけであるのに対し、DeFiの相互作用のプロセスでは、セキュリティはしばしば動的であることである。アカウント管理、プロトコル相互作用前の準備、相互作用完了後の資産管理、データ監視、極端なケースでは資産喪失後の自助努力などです。
新しいDeFi村に足を踏み入れようとしているユーザーとして、収益を得ながら資金の安全性を最大限に高めるにはどうすればよいか、Coboのセキュリティチームは、DeFiの相互作用における一般的なセキュリティリスクと、それに対応するセキュリティ上の注意事項を整理しました。強気相場での交流
DeFi インタラクションに共通するセキュリティリスクと予防策
プライベートアカウントの鍵漏えいは、初心者ユーザーにとって簡単な問題の1つです。 市場に出回っているウォレットは多種多様であり、初心者ユーザーがウォレットの安全性を自分で判断する能力がないため、多くの初心者ユーザーはいくつかの安全でないウォレットをダウンロードしています。多くの初心者ユーザは、いくつかの安全でないウォレットをダウンロードし、それを使って秘密鍵を生成する。その結果、秘密鍵が悪意を持って攻撃者に送り返され、秘密鍵の漏洩につながる。多くの経験豊富なユーザーが、自分のメインアカウントがある日にすべての資産を譲渡されたことを発見し、半日すべての行動を分析したところ、それらは正常であり、このケースのほとんどは、アカウントが初期に秘密鍵を生成するために安全でないウォレットを使用し、ずっと前に秘密鍵の漏洩につながったというものでした。
同時に、ブロックチェーンのエアドロップによる富の効果により、多くの初心者ユーザーは、非常に深刻なプロジェクトのウェブページとして自分自身をパッケージ化し、未請求のトークンが大量にあることをユーザーに伝えた、いわゆるエアドロップサイトのいくつかを盲目的にクリックします。興味に駆られた多くの初心者ユーザーは、ウェブページに誘導されて自分のアカウントの秘密鍵を入力し、結果として秘密鍵が漏れることになります。
秘密鍵の漏洩を防ぐために、ユーザーは以下のことを行う必要があります:
署名フィッシング
署名フィッシングは秘密鍵の漏洩と同じです。秘密鍵の漏洩は、同じく初心者ユーザーが最も苦手とする分野です。このタイプのフィッシング攻撃は、ユーザーに直接秘密鍵の記入を求める代わりに、トランザクションや署名を開始するよう誘導し、それによってユーザーの関連資産に対する認可を得るもので、非常に秘密性が高く、分析が容易ではなく、検出が難しいなどの特徴があります。
多くの場合、攻撃者はまずフィッシングページにユーザーを誘い込み、エアドロップの取得やログインの検証などの名目で署名を開始するよう求めます。
フィッシング取引にはいくつかのタイプが考えられます:
直接送金タイプ。ETHを直接送金するか、ERC20送金コールを行い、ウォレット資産を攻撃者のアドレスに送金します。
承認タイプ。攻撃者のウォレットを承認するためにERC20 Approveメソッドを呼び出します。ユーザーが署名したときに資産の移動は発生しません。しかし、攻撃者ウォレットはtransferFromを呼び出すことでユーザーアセットを転送できます。
EIP712メッセージ署名。例えば、ERC20 Permitメソッド、Permit2認可、NFT保留注文の署名などです。これらの署名は通常、Jsonデータまたは整形されたツリーデータとしてウォレットに表示されます。ユーザーが署名しても取引は開始されず、ガスは消費されません。しかし、署名結果はフィッシングサイトによって記録され、攻撃者は署名結果を利用して被害者のERC20またはNFT資産を移転することができます。
生のハッシュ署名。署名データは16進数のハッシュデータであり、署名の正確な内容は署名データ自体から推測することはできません。ハッシュは上記の1~3種類のデータのいずれかによって裏付けられている可能性があります。署名は資産の損失につながる可能性が高い。しかし、主要なウォレットは通常このタイプの署名を禁止しているか、リスクを明示しています。
最近、フィッシングサイトがユーザーにいくつかの連続した署名に署名するよう求めるケースがあります。その後、悪意のある署名内容が混じっている。フィッシング・サイトが連続して複数の署名を要求し、最初の数個の署名が無害で正常なもので、その後に悪意のある署名が混ざっていたのは今回が初めてです。
フィッシングによる資金損失を防ぐために、中心となるのはブラインド署名を拒否することです。各署名を注意深く確認し、トランザクションの内容が不明確な場合は署名を拒否します。
第三に、転送アドレスポイズニング
転送アドレスポイズニングは比較的新しい攻撃方法です。これは、トランザクションの受信者のアドレスに似たアドレスを使って送金(ERC20、ネイティブトークンなど)を開始したユーザーに、同じ金額のトランザクション、または偽のトークンを使った同じ金額のトランザクションを送ることを含みます。
例:
Aliceは毎月1ETHの固定額をBobに給与として送金し、Charlieはこの取引を監視し、Bobと類似したアドレス(同じ最初と最後の8桁)を使って0.001ETHをBobに送金します。チャーリーはこの取引を監視し、ボブと似たアドレス(アドレスの最初と最後の8ビットが同じ)を使ってアリスに0.001ETHを送るので、アリスが次にボブに送金するときは、チャーリーのアドレスを取引の受け取りアドレスとして使うことができる。この理由は、ブロックチェーンのアドレスは長く不規則であるため、ユーザーがアドレスを覚えるのが難しく、利便性のために最後の取引記録から直接アドレスをコピーしてしまうことがよくあるからだ。チャーリーとボブのアドレスは非常に似ているため、アリスがその違いを見分けるのは難しく、最終的に資産の損失につながる。
アドレスポイズニングを防ぐために、ユーザーは以下の対策を取ることができます:
すべての取引をチェックし、各取引のアドレスが正しいことを確認する。strong>すべてのトランザクションで転送アドレスをチェックし、前後のバイトを比較するだけでなく、全内容をチェックする。
よく使うアドレスのホワイトリスト(アドレス帳)にエイリアスを設定し、アドレス帳のアドレスにのみ送金するようにする。
ブロックチェーンブラウザやウォレットの取引ログなど、オンチェーンチャネルからコピーしたアドレスへの送金をターゲットにするのは避けましょう。
4: トークンの過剰承認
トークンの承認は、DeFiを実行するほぼ最初のステップです。DeFiインタラクションを実行する最初のステップです。DeFi操作を実行する際、トランザクションデータはユーザーではなくプロジェクトウェブページによって構築されるため、プロジェクトウェブページは通常、認証を繰り返す必要なく複数のやり取りを容易にするために、ユーザーが署名するための無制限の認証トランザクションを構築する。出発点はユーザーのガスを節約することですが、これはその後の資金の安全性も節約します。その後、プロジェクト・コードに、無許可のインターフェイスや任意呼び出しの脆弱性などの問題が発生したと仮定すると、契約に対するユーザーの無制限の承認が攻撃者に悪用され、ユーザーの資産が移転されることになる。この攻撃シナリオは、クロスチェーンブリッジやDEXプロトコルでよく見られます。
後続のプロジェクトがアップグレード中にリスクのあるコードを導入したり、プロジェクトのコード自体に未発見の脆弱性があったりするのを防ぐため、ユーザーは最小認可の原則を採用し、今回の取引で使用される量だけを認可するように心がけることで、後続のプロジェクトのリスクによって資産が失われるのを防ぐことができます。
Fifth, insecure DeFi operations
取引前の準備のほかにも、見落としがちなリスクがたくさんあります。見落としがちなリスクもたくさんあります。これらのリスクは通常、ユーザーがプロジェクトそのものを理解していないことに起因します。具体的な例としては、
オンチェーン交換プロトコルでトークンを交換する際にスリッページポイントを大きく設定しすぎたり、レシートの最小数(書きやすいように0に設定されている)を設定せずにスワップを実行するスクリプトを書いたりしたことが挙げられます。その結果、トランザクションはMEVボットによる「サンドイッチ」攻撃の対象となりました。
オンチェーンレンディングプロトコルによる貸し借りの際、ポジションの健全性をタイムリーに管理できなかったため、ボラティリティが高い時にポジションが清算されてしまいました。
特定のプロジェクトとやり取りする際、プロジェクトのクレデンシャルが適切に保持されていませんでした。例えば、Uniswap V3 NFTのクレデンシャルをOpenSeaで販売される通常のNFTとして扱っていました。
このようなリスクから身を守るため、ユーザーはプロジェクトとやり取りする際には必ずプロジェクト調査を行い、プロジェクトの仕組みや関連機能を明確にして、資産の損失を防ぐ必要があります。
安全なDeFi取引のための新しいパラダイム -- Cobo Argus
以上、ブロックチェーン上のDeFi取引に関連する一般的なリスクについて説明しました。ユーザーが誤ってこれらのリスクの餌食になった場合、長年の苦労が水の泡となり、ほんの一歩間違えれば、すべての人生の終焉につながりかねません。では、安全で、効果的で、管理しやすいリスク・コントロール・ソリューションはあるのだろうか?
コボ・アーガス(Cobo Argus)は、コボ・チームが開発し、グノーシス・セーフ(Gnosis Safe)上に構築されたオンチェーン・リスクコントロール製品です。主な機能は、ユーザートランザクションを解析し、リスクコントロールルールを満たさないトランザクションをブロックするためのさまざまなACLポリシーを構築し、ユーザー資金の安全性を確保することです。
コボ・アーガスはDeFi環境のセキュリティリスクにどのように対処していますか?
1.下部のマルチシグネチャウォレット、上部のシングルシグネチャ認証:秘密鍵漏洩の単一リスクポイントの回避、フィッシングリスクの軽減、運用効率の確保
コボ・アーガスはDeFi環境のセキュリティリスクに対処できています。align: left;">コボ・アーガスは、マルチシグネチャコントラクトウォレットを基盤・中核とするSafe {Wallet}をベースとしたマルチシグネチャウォレットです。そのため、Cobo Argusは当然Safe {Wallet}マルチシグネチャウォレットのセキュリティを継承しています。
資金管理を単一の秘密鍵から複数の秘密鍵に変更することで、単一の秘密鍵の漏洩による資産の損失・ロックリスクを排除します。マルチシグネチャーのウォレット自体、取引実行のトリガーとなる複数の署名が必要であり、1つのアドレスの秘密鍵の漏洩が資金全体のセキュリティに影響を与えることはない。さらに、マルチシグネチャトランザクションは、紛失した、または危険にさらされたシングルシグネチャアドレスを置き換えるために開始することができ、マルチシグネチャウォレットのセキュリティを保証します。
さらに、シングル署名アドレスからマルチ署名アドレスに切り替えた後、各ユーザーは単一の取引に署名する必要があり、これは取引内容の相互監査に資するため、フィッシングされる可能性が大幅に減少します。
マルチシグネチャは、複数の担当者がトランザクションをレビューする必要があるため、業務効率に影響を及ぼします。Cobo Argusでは、特定の低リスクで高頻度の業務(定期的なクレームを伴うファーミングなど)をEOAアドレスに承認できる柔軟な承認ルールを設定できます。このアドレスは、マルチシグネチャーのウォレットの代わりにオペレーションを開始するために使用することができ、効率が向上します。同時に、アドレスの権限が厳しく制限されているため、ウォレット全体のセキュリティが大きく損なわれることはありません。
2.カスタムボット:24時間365日の自動リスク監視と対応
コボ・アーガスの監視ボットを設定することで、監視・実行する条件やトリガーをカスタマイズすることができます。また、条件をトリガーするために実行する必要があるアクションも設定できます。
融資プロジェクトのレバレッジ管理を例にとると、自身の健全性要素を監視するようにアーガス・ロボットを設定することができ、ポジションが清算間近になると、担保の補充や返済を行うことでロボットを使ってレバレッジを下げることができます。
3.カスタムACL戦略
カスタム監視ボットに加え、開発スキルのある人はカスタムACL(アクセス制御リスト)契約を開発し、より洗練されたアプローチを実現することができます。アクセス・コントロール・リスト)契約により、より柔軟な権限管理が可能になります。これはCobo Argusのコア機能の一つです。
アドレスポイズニング攻撃は、ACLコントラクトを記述することによって実現できます。ユーザーはACLコントラクトのホワイトリストとして一般的なアドレスを指定することができ、トランザクション処理中にACLコントラクトはトランザクション内の受信アドレス(ERC20 / ネイティブトークン)を解析し、ユーザーによって設定されたホワイトリストのアドレスと比較し、受信アドレスが対応するアドレスにない場合、トランザクションは正常に完了しません。
過剰認可の問題に対処するために、ユーザーはACLポリシーコントラクトを記述して、Approveトランザクションの認可量を解析し、トークンのApprove認可量をユーザーのプリセット値以下に制限することができます。または、問題のトークンの認可を定期的にゼロにするカスタムボットを設定することもできます。
スリッページチェックのないスワップ取引など、安全でないDeFi操作の場合、Argus ACLポリシー契約を書くことで、取引所取引の最小許容スリッページを設定できます。いったん設定されると、ACLポリシー契約は設定されたスリッページに基づいて異なるスワップ取引を解析し、為替スリッページが満たされない場合は取引をブロックすることができます。
まとめ
DeFi取引には、防ぐのが難しいリスクがたくさんあります。この記事で紹介した内容は、一般的なシナリオの多くをカバーしていますが、すべてのリスクを完全にカバーしているわけではありません。は全てのリスクポイントを完全にカバーすることはできない。ユーザーはすべての取引に真剣に取り組む必要があります。
Cobo Argusは、これらの一般的なセキュリティリスクのいくつかを防ぐための、信頼性が高く設定が簡単な手段を提供します。ACL は柔軟で安全な認証管理を可能にし、セキュリティを維持しながら運用効率を向上させます。カスタムボットは手作業を減らし、リアルタイム監視機能は7*24時間のユーザー資金のセキュリティを提供します。
DeFiは確かにユーザーに大きな収益をもたらすことができますが、資金の安全性こそが資産を着実に増やす核心です。コボ・アーガスはすべてのDeFiファーマーに寄り添い、強気市場でより多くの価値を生み出す手助けをします。