ブロックチェーンブリッジのNomadにハッキング、約250億円が流出

Daniel Van Boom (CNET News) 翻訳校正: 湯本牧子 高森郁哉 (ガリレオ)2022年08月03日 11時21分

 異なるブロックチェーン間での仮想通貨の移動を可能にする仮想通貨プロトコルを手がけるNomadのブリッジが、米国時間8月1日にハッキングを受け、1億9000万ドル(約250億円)が流出した。「分散型強盗」と呼ばれるこの攻撃では、Nomadのプログラムに不具合があったことから、スクリプトをコピー&ペーストするだけで資金を盗み出せる状態になっていた。

100ドル札の束
提供:Sarah Tew/CNET

 ブロックチェーンは、詳しい人でなければどれも同じに見えるかもしれないが、仮想通貨のトレーダーはイーサリアム、アバランチ、ソラナなど、複数の異なるブロックチェーンを利用することが多い。ビットコインを取得してイーサリアムのブロックチェーンで使ったり、イーサを取得してソラナで使ったりするなど、異なるブロックチェーン間でトークンを取り引きするとなると、実際はかなり複雑になることがある。こうした需要に対応するため、Nomadを含む複数の企業が「クロスチェーン」ブリッジを開発してきた。あるブロックチェーン上のスマートコントラクトに仮想通貨を預け、そのトークンを別のブロックチェーンに「ブリッジ」(橋渡し)する仕組みだ。

 今回の攻撃で重要なポイントは、このプロセス全体がスマートコントラクトにロックされた仮想通貨に依存している点にある。イーサリアムのスマートコントラクトに預けられた1イーサでも、たとえばアバランチのブロックチェーンでユーザーが受け取るイーサの担保として機能する。Nomadはハッキングを受ける前、スマートコントラクトにユーザーの資金1億9000万ドル以上を置いていた。本記事執筆時点で、スマートコントラクトにロックされたままなのはわずか9000ドル(約120万円)だ。

 皮肉なことに、そのスマートコントラクトへの「アップグレード」が、容易に実行可能な攻撃につながった。分散型金融は匿名性が高く、不正な手口を仕掛けられやすい。その結果、プロトコルから盗み出された金額は、ものの数時間で1億9000万ドルに達したのだ。

 技術的な側面を理解するには、イーサリアムの開発言語であるSolidityを知っている必要がある。要点は、スマートコントラクトが壊れたということだ。承認されるべきでない特定の取引が実行され、複製される可能性があった。不審な取引が始まったのは、米国太平洋時間8月1日午前9時13分頃、複数のウォレットがブリッジから100ビットコイン(約3億400万円)を抜き取った時だとみられる。そこからは誰もが、最初の攻撃者が使ったスクリプトを正確にコピー&ペーストし、スクリプト中のウォレット番号だけを自分の番号に置き換えて、それを実行するだけでよかった。ほかには、イーサや、米ドルに連動するステーブルコインのUSD Coin(USDC)など、他のトークンで資金を持ち出す人もいた。

 仮想通貨投資会社Paradigmの研究者であるSam Sun氏は、この攻撃を解説する連続ツイートで、次のように書いた。「今回のハックがこれほどの混乱を招いた理由はこうだ。Solidityや(取引データを要約する)Merkle Treesなどの技術について知っている必要はなかった。必要なのは、うまくいくトランザクションを見つけ、送金先のアドレスを自分のものに置き換えて、それを再送信するだけでよかったのだ」

 別のブロックチェーン研究者は、「CTRL-C、CTRL-V(コピー&ペーストのショートカットキー)のように簡単だ」とツイートした

 Nomadは状況を調査中であり、資金を追跡し回収すべくブロックチェーン分析会社や警察と協力しているとツイートしている。

この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。

CNET Japanの記事を毎朝メールでまとめ読み(無料)

-PR-企画特集

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]