MCDバグバウンティとセキュリティロードマップの更新情報

August 14, 2019

【Makerブログのご利用にあたってのご注意事項】
当ブログに掲載されている事項は、MakerおよびDaiに関する一般的な情報の提供のみを目的として作成したものであり、特定の商品又はサービスの勧誘や推奨等を目的としたものではありません。

イーサリアムネットワーク上に構築されたのプロジェクトを開発する際、スマートコントラクトのコードを書くことは作業のほんの一部にすぎません。開発時間の大部分は、システムの安全性を保証するために、要件分析と品質保証に費やされます。

Maker Foundationは、常に最高のセキュリティ基準を遵守してきました。セキュリティ基準は複数担保型Dai(Multi-Collateral Dai)のリリースによって変わることはありません。このブログ記事は、私たちのチームがMCDの立ち上げの準備段階で取り組んでいるセキュリティロードマップの概要を提供します。

セキュリティロードマップ

MCDセキュリティロードマップは、4つのトラックで構成されます。

  1. HackerOneと共同で行なっている広範囲の渡るバグバウンティプログラム。プログラムは、MCDのスタートした後も継続して、無期限に実行されます。
  2. 最新のテクノロジで可能な限りスマートコントラクトをフォーマル検証します。
  3. 業界上位の監査組織による独立した第三者のセキュリティ監査
  4. Makerの最も近いパートナーと共同して、リアルな環境でMCDをテストするための統合パートナープログラム

各トラックの詳細は以下の通りです。

バグバウンティプログラム

6月に、われわれは選ばれた研究者を個人向けのバグバウンティプログラムに招待しました。MCDのローンチに向けて、私たちは一般の方を公開します。

  • 資産の種類が拡大し、範囲内にある資産もマイナーアップデートをされるでしょう。
  • バグバウンティの報酬額は増えます。

最初のスコープは、Ethereum Kovanテストネットに展開されたMCDスマートコントラクトです。 MCDのローンチに向けて、より多くのアセットが追加されます。スコープは、Webアプリケーション、ツールなどを含むように追加することも可能です。

このプログラムでは、致命的だと分類されたバグの発見に対して50,000ドル、バグの重大度の高、中、低に応じて報酬を授与します。プログラムはMCDの開始後も無期限に継続する予定です。

詳細について、また研究者として参加するには、HackerOneプログラムページにアクセスしてください。

フォーマル検証

プログラミングコードのフォーマル検証は通常、エンジニアリングシステムで最も重要なソフトウェアに対して行われます。たとえば、航空宇宙工学に適用され、安全性が重要な機能の精度を保証します。具体的には、フォーマル検証は、コンピューターによって実行される低レベルのバイトコードがソフトウェア開発者の意図を正しく反映し、副作用がないことを保証します。

イーサリアムエコシステムでは、初期の展開後のソフトウェアバグを妨げる、ブロックチェーンの高い利害と不変の性質により、スマートコントラクトを正式に検証することが基準になりました。 Makerは常にこのプラクティスの最前線にあり、この手法を主要なdappに適用した最初の組織でした。

MCDコアコントラクトのフォーマル検証以来、より多くのことがカバーされています。これらのコアコントラクトだけでなく、技術的に可能な限り多くのMCDシステムコントラクトもフォーマル検証することが私たちの目標です。

コアシステム、Daiトークンコントラクト、オークションコントラクト、DAI預金金利 (Dai Savings Rate)、緊急停止モジュール、およびオラクルセキュリティモジュール (Oracle Security Module)のフォーマル検証がほぼ完了しました。

チームは、システム内のセカンダリコントラクトとガバナンスコントラクトのフォーマル検証に現在も取り組んでいます。最も注目すべきは、これらは投票プロキシーコントラクトCDPマネージャーコントラクト、および担保アダプターコントラクトのいわゆるジョイン/イグジットパスであり、システム内の担保のロックと解放を処理します。

セキュリティ監査

コントラクトのフォーマル検証では、低レベルのバイトコードがソフトウェア開発者の意図を正確に反映していることを保証しますが、いくつかの制限もあります。たとえば、コントラクトの論理エラーから保護することも、単一のトランザクションの範囲を超えて確認することもができません。

このため、コントラクトのフォーマル検証は、より従来のセキュリティ監査と、可能であれば高レベルのフォーマルモデリングと常に組み合わせる必要があります。

これがまさにMaker Foundationが行っていることです。業界をリードする専門家による1つではなく3つの独立したセキュリティ監査を取得しています。

  1. システムのロジックをさらに検証するために高レベルの形式モデルを作成する、イリノイ州に本拠を置くRuntime Verificationとコラボレーションします。コントラクトのフォーマル検証と単体テストとを比較できる場合、これは正式な統合テスト(formal integration testing)に相当します。
  2. スマートコントラクトのセキュリティレビューの長期パートナーであるTrail of Bitsによる監査では、フォーマル検証で十分にカバーされていない領域に特に焦点を当てます。
  3. 中国が本拠である2018年初頭に業界のベテランによって設立されたPeckShieldで従来通りの監査行います。PeckShieldは、今年5月に修正されたMaker DSChiefの脆弱性を個別に検証しました。   

統合パートナープログラム

バグバウンティプログラム、フォーマル検証、および外部監査は、スタンドアロンユニットとしてのMCDシステムの安全性を保証する優れたツールです。このシステムには大きな期待が寄せられており、エコシステムが本当に成長するためにはパートナー統合が重要です。

Maker Foundationは、統合およびビジネスパートナーの厳選されたグループと緊密に連携して、現実的な環境でMCDをテストし、脆弱性を見逃す可能性をさらに減らします。

統合パートナープログラムに参加する場合は、[email protected]の統合チームにお問い合わせください。 

次のステップ

MCDのリリースが近づくにつれ、私たちのチームは上記のロードマップを完成させるために一生懸命取り組んでいます。コミュニティやパートナーと協力して、ユーザーが期待する最高のセキュリティを備えたシステムを提供できることを楽しみにしています。

セキュリティに加えて、私たちのチームは統合パートナーとMakerのQAエンジニアが必要な厳密なテストするために、追加のインフラストラクチャに取り組んでいます。

それまで、次のセキュリティ更新プログラムに注目してください。最初から最後ま でのテストとQAのためのStaxxプラットフォームについて説明します。

MCDの詳細については、複数担保型Daiのオークションとキーパーの紹介担保オンボーディングガイド:MCDのトークンをノミネートする方法をご覧ください。

August 14, 2019