スマートコントラクト診断(ブロックチェーン診断)

ブロックチェーンを活用したシステムにおいては、スマートコントラクトを活用するのが一般的です。スマートコントラクトは常に攻撃者に晒されており、脆弱性が存在する場合には不正な操作をされてしまうなどの危険性があります。

例えば、パブリックブロックチェーンであるEthereumではスマートコントラクトの脆弱性を突かれ、スマートコントラクト内に保持された仮想通貨(Ether)が大量に流出したという事件がありました。スマートコントラクトには従来のWebアプリケーションやスマートフォンアプリケーションに適用されるセキュアコーディングプラクティスとは異なるセキュリティプラクティスがあり、それを知らないままにスマートコントラクトを実装した場合、リリース後に攻撃されてしまうという事が起こりえます。

また、スマートコントラクトは一度ブロックチェーン上に流してしまうと修正が出来ないため、従来のシステムよりもリリース前に如何に脆弱性を潰し込めるかという点が重要なポイントです。ブロックチェーン診断では脆弱性を抱えたスマートコントラクトを実装していないか弊社独自の観点でセキュリティ診断を実施します。

スマートコントラクトに対して、ソースコードの静的解析(主)と動的解析(従)を組み合わせることで静的解析をトリガに問題点を検出し、弊社プライベートネット内で動的解析による追認を行い、高精度の診断を実施します。GIAC認定セキュアコーディングプログラマを証明する資格であるGSSPを有し、かつ、ブロックチェーンとスマートコントラクトに精通したエンジニアが担当します。

特長

・弊社独自の診断項目にもとづき、各種脅威を想定した観点でスマートコントラクトに対する診断を実施
・主に海外で整理されているスマートコントラクトのセキュリティプラクティスをベースに弊社独自の診断項目を準備
・スマートコントラクト独自の脆弱性が潜んでいないか確認
・その他オーバーフロー脆弱性などの一般的なセキュアコーディング観点の脆弱性診断も併せて実施
・スマートコントラクト開発前後のアドバイスも可能

  ※関連特許出願中

スマートコントラクトの主な脅威

・不正な仮想通貨引き出し
・関数の不正呼出しによるマスタデータの更新
・トランザクション実行順序操作による意図しない実行結果の誘発(例:管理者が想定しない値段で決済が成立)
・悪意のあるマイナーによる実行結果の操作(例:ゲームに必ず攻撃者が勝つ)
・トランザクションからの情報漏洩
・原子性考慮漏れによるデータ不整合(例:未払いにも関わらず支払い済みステータスとなる)
・脆弱性発生時の対策考慮漏れによる永続的な攻撃を受ける危険性

smacon_fig02.gif

対象プラットフォーム

Ethereum
Hyperldger Fabric

※その他プラットフォームに関しては要相談。対象プラットフォームは随時拡大予定

対象言語

Solidity、Go、Java
※その他言語に関しても応相談

価格

個別お見積  ※スマートコントラクト毎のお見積です。

関連情報