
今週報告されているように、FTX エクスプロイトに関連するアドレスが、いくつかのクロスチェーン プロジェクトを通じて資金を移動していました。
資金のほとんどはThorchainを経由していますが、一部はtBTCを経由しています。その過程で、2つのバグが明らかになりました。
どちらのバグもユーザーの資金を危険にさらすものではありません。最初のバグは昨日修正されリリースされましたが、2 番目のバグについてはコミュニティの議論と合意が必要です。
最初のバグ — サービス拒否攻撃ベクトル
9月30日土曜日、FTX関連のアドレスが76.81431578 BTCの償還をリクエストしました。
現在、tBTCでは、L1 tBTC残高を持つユーザーなら誰でも償還をリクエストできます。しばらくすると、Threshold DAOによって委任されたオフチェーンのメンテナーが、
ウォレットコーディネーター
契約は償還要求を検証し、署名者に償還要求を有効とみなすよう促します。特定のウォレットの 100 人の署名者のうち 51 人が同意した場合、彼らは共同で署名し、その資金を Bitcoin ブロックチェーンにリリースします。
しばらくして、この償還リクエストは償還管理者によって承認されました。関連するウォレットの署名者のうち少なくとも 51 人が同意し、償還が完了しました。
9 時間後、FTX エクスプロイトに関連付けられた別のアドレスが、今度は 76.62186419 BTC の別の償還を要求しました。
その後すぐに、信じられないようなことが起こりました。
未知の第三者が、tBTC の背後にある 2 つのウォレットに BTC トランザクションを送信しました。
さて、これはいつも起きていることです。tBTC は結局、BTC を入金することで発行されます。しかし、通常の入金取引ではなく、これらの取引は手動で作成されており、tBTC 署名クライアントはウォレットが資金の移動で「ビジー」で、償還要求に対応できないと考えていました。承認管理者はウォレットが「ビジー」でなくなるまで待ちましたが、それは決して起こりませんでした。
事実上、これらの BTC 取引により、未処理の tBTC 償還がすべてブロックされました。
これらのトランザクションを誰が送信したかはわかりません。しかし、誰であっても、tBTC ブリッジを強制的に一時停止し、その過程で単純なゼロデイ エクスプロイトを焼き尽くし、2 回目の FTX 関連の償還が承認されるのを防ぐのに十分な知識を持っていました。
これは私にとっては初めてのことです。善意の人物は連絡してこなかったし、誰も説明をしてくれませんでしたが、タイミングは信じられないほどでした。
この時点で、DAO 全体の貢献者が使用する警告および監視システムが鳴り響きました。Keep 開発チームは週末にサービス拒否を修正するパッチの準備を開始しました。
その時までには、ブロックされた償還の 1 つが FTX に関連していることもわかっていました。
2番目のバグ - 償還メカニズムの設計上の欠陥
2 番目のバグは、最初のパッチを準備しているときに明らかになりました。
しきい値DAOは、複数の承認者アドレスに委任することができます。
ウォレットコーディネーター
契約。
残念ながら、現時点では、単一のメンテナー アドレスへの委任は 1 つしか行われておらず、これは単一障害点です。現在、そのアドレスは米国所有の企業によって管理されており、FTX 関連の償還を承認することはできません。
機構設計の修正
2,500 万ドルの TVL を持つ委任承認者が 1 人しかいなかったのは見落としでした。それでも、より大きな問題はメカニズムの設計自体にあります。
明示的な償還承認に依存するシステムでは、必ずこのような問題が起こります。プロトコルが最初にリリースされたとき、承認メカニズムの根拠はスピードとユーザーフレンドリーさでした。代替手段はユーザーエクスペリエンスの低下を意味していました。
現在のシステムでは適切なトレードオフが実現されていないと思います。
この欠陥を修正するには2つの明確なアプローチがある
承認ベースのフローから拒否ベースのフローに移行する
プロトコルレベルですべての償還レビューを削除します
今後、最も安全なメカニズム設計は、私が「楽観的な償還」と呼ぶものだと私は考えています。償還を確定するアドレスのリストの代わりに、償還を拒否できるアドレスのリストがあります。これは、楽観的な鋳造におけるガーディアンの役割に似ています。
このメカニズムが導入されると、すべての償還はデフォルトで有効になります。ブリッジ ハッキングの疑いにより償還が拒否された場合、償還は延期される可能性があります。十分な数のガーディアンによって拒否された場合、トークン所有者の投票にフォールバックできます。トークン所有者の投票によって拒否が支持された場合、拒否された tBTC 償還は償還ユーザーに自動的に返されます。
欠点は、この仮説的なメカニズムでは、引き換えごとに追加の遅延が必要になることです。ただし、時間が経つにつれて、この遅延は 15 分程度に短縮され、小額取引の場合は完全に免除される可能性があります。
最後に、コミュニティが償還レビュー期間なしでシステムが安全であると判断した場合、遅延を完全に排除して、最初のアプローチから 2 番目のアプローチにスムーズに移行できます。実際、償還レビューを削除する明確なスケジュールは、コミュニティ全体の信頼を築くのに役立つと思います。
このメカニズムの設計上の欠陥がどのように解決されても、私たちはこの経験から多くのことを学びました。そして、ここから 10 倍学ぶのではなく、今週それを学べたことを嬉しく思います。
次は何?
DAO とコミュニティには決定を下す必要があります。
コミュニティが別の承認者アドレスを追加するか、契約を「楽観的償還」スタイルのメカニズムにアップグレードするか、他のオプションを調査して検討するかを決定する場合でも、開発チームとして、私たちはアドバイスを提供し、より堅牢で安全かつ中立的な金融の未来を一緒に構築するお手伝いをします。