技術的リスク:スマートコントラクトのバグとハッキング

DeFiやNFTを利用する上で避けて通れないのが「技術的なリスク」です。プログラムの欠陥を突いたハッキング事例や、ブリッジの脆弱性など、エンジニアでなくても知っておくべきリスクを解説。

「監査済みだから安全」「大手プロジェクトだから大丈夫」という言葉を信じて資金を預けたら、翌日にはゼロになっていた——これが暗号資産の技術的リスクの現実です。

DeFi(分散型金融)の世界では、コードが銀行の代わりになります。そのコードに欠陥があれば、誰も止められないまま資金が流出します。この記事では、特にDeFiやDAppsを利用する投資家が直面する技術的リスクを実例と対策とともに解説します。


1. スマートコントラクトとは何か

コードが「銀行」になる仕組み

スマートコントラクトとは、ブロックチェーン上に書かれた自動実行プログラムです。「Aさんが10ETHを預けたら、Bさんに5ETHを返す」といった条件と結果をコードで定義し、条件が満たされると自動で実行されます。

管理者がいない、停止できない、改ざんできない——この「自律性」がDeFiの革新的な点ですが、同時に最大の弱点でもあります。コードにバグがあっても、誰も止めることができません。

「監査済み」は安全を保証しない

セキュリティ審査(Audit)を受けたプロジェクトでも、ハッキング被害は発生しています。監査は「既知のパターンに基づく脆弱性チェック」であり、新しい攻撃手法や複数プロトコルの組み合わせによる脆弱性は見逃されることがあります。


2. 主要な攻撃手法と実例

フラッシュローン攻撃

フラッシュローンとは、「同一トランザクション内で借りて返す」という無担保の瞬間借入機能です。正規の用途(裁定取引など)もありますが、価格操作や流動性プールの搾取に悪用されることが多いです。

仕組み:

  1. 数百億円の資金を一瞬で無担保で借入
  2. 借りた資金でDEX(分散型取引所)の価格を操作
  3. 価格差を利用して利益を抜き取る
  4. 元の借入を返済 → 1トランザクション内で完結

被害例:

  • Beanstalk(2022年):1億8,200万ドルの流出(フラッシュローンでガバナンス権限を乗っ取った型)
  • Euler Finance(2023年):1億9,700万ドルの流出(後に攻撃者がほぼ全額を返還)

無制限承認(Unlimited Approve)

DeFiを利用するとき、ウォレットはプロトコルに対して「トークンの操作権限」を承認します。この承認を「無制限」に設定すると、将来そのプロトコルがハッキングされたとき、ウォレット内のトークンをすべて引き出される可能性があります。

多くのDEXやDeFiサービスが「Gas節約」を名目に無制限承認を推奨しますが、これはリスクの塊です。

リエントランシー攻撃(Reentrancy Attack)

スマートコントラクトが外部コントラクトを呼び出す際、処理が完了する前に再帰的に呼び出されることで、残高チェックを回避して複数回引き出しが行われる攻撃です。

2016年の「The DAO事件」はこの手法で約360万ETH(当時約60〜70億円相当)が流出し、EthereumがEthereum ClassicとEthereumにハードフォークする原因になりました。

オラクル操作攻撃

DeFiプロトコルは価格情報を「オラクル」と呼ばれる外部データフィードから取得します。このオラクルが操作可能な場合、価格を意図的に歪めて不当な利益を得る攻撃が成立します。

単一のオラクルに依存しているプロトコルは特に脆弱で、複数のオラクルを組み合わせたり、TWAP(時間加重平均価格)を使うプロトコルの方が相対的に安全です。


3. ブリッジ(Bridge)のリスク

なぜブリッジは狙われるのか

ブリッジとは、異なるブロックチェーン間で資産を移動させる仕組みです。例えばEthereum上のETHをSolanaで使いたい場合、ブリッジを経由してWrapped ETHに変換します。

ブリッジが集中的に狙われる理由は「資金が一箇所に集中する」からです。ブリッジのコントラクトには各チェーンから預けられた資産が大量にロックされており、セキュリティの脆弱性があれば巨額の損失につながります。

主要なブリッジハッキング事例

事案被害額手口
Ronin Bridge2022年約6億2,500万ドルバリデータ秘密鍵の奪取
Wormhole2022年約3億2,000万ドル署名検証の脆弱性
Nomad2022年約1億9,000万ドルスマートコントラクトのバグ
Harmony Horizon2022年約1億ドルマルチシグ鍵の奪取

2022年はブリッジ被害が特に集中した年で、上表の主要4件だけでも合計約12億ドル、その他の事案を含めた年間のブリッジ被害は約20億ドル規模に達しました。


4. 対策:リスクを減らす具体的な方法

Revoke(承認取り消し)を定期的に行う

DeFiを使うたびに付与されるトークン承認を定期的に取り消すことが重要です。使い終わったプロトコルへの権限は必ず削除しましょう。

主要なRevokeツール:

  • Revoke.cash — 複数チェーン対応の定番ツール
  • Etherscan Token Approval Checker — Ethereum限定
  • 各ウォレットの「接続済みサイト」設定 — ウォレットごとに管理可能

DeFiを月1回以上使う場合は、月次でRevokeの確認を習慣化することをおすすめします。

ウォレットを用途別に分ける

ウォレット種別用途推奨保有額
コールドウォレット(ハード)長期保有・大量保管長期保有資産の70〜80%
ホットウォレット(DeFi用)DeFi操作専用試せる金額のみ
取引所ウォレット売買・入出金必要最小限

DeFiで使うウォレットに長期保有資産を混在させないことが最重要です。

新規プロジェクトのリスク評価基準

新しいDeFiプロジェクトに参加する前に、以下の点を確認しましょう。

  • 監査報告書が公開されているか(Certik、Trail of Bits等の大手が望ましい)
  • コントラクトがオープンソースでEtherscanに公開されているか
  • ロックされているTVL(Total Value Locked)は妥当か
  • 開発チームの身元は公開されているか
  • 「異常に高い利回り」を謳っていないか
  • コードの稼働期間は十分か(新しいほどリスクが高い)

5. ハードウェアウォレットでも防げないリスク

「ハードウェアウォレットを使えば安全」というのは半分正解です。ハードウェアウォレットは秘密鍵の漏洩は防ぎますが、以下のリスクには対応できません。

ハードウェアウォレットで防げないリスク:

  • フィッシング詐欺によるトランザクション承認: 偽サイトで正規のように見えるトランザクションに署名させる手口
  • フロントランニング: あなたのトランザクションを先読みして利益を搾取する(MEV攻撃)
  • 無制限承認の悪用: 署名した承認は秘密鍵を盗まなくてもトークンを抜き取れる

ハードウェアウォレットで守れるのは「秘密鍵」であり、「承認した権限」ではありません。


6. rug pull(ラグプル)とexitスキャム

技術的に設計された詐欺

ラグプルとは、開発者が意図的にプロジェクトを設計して資金を集め、ある時点で一斉に引き出す詐欺です。スマートコントラクトの設計として、「運営だけが全額引き出せる機能」を隠し持っているケースが多いです。

典型的なパターン:

  1. 高利回りを謳うDeFiプロジェクトが突然登場
  2. TVLが急増し、SNSで話題になる
  3. 一定の資金が集まったタイミングで開発者が全額引き出す
  4. プロジェクトサイト・SNSが消える

2023年だけでも、ラグプルによる被害は数百件以上報告されています。特にDEXに上場したばかりの新興トークンは注意が必要です。


7. よくある質問

Q. 監査を受けたDeFiプロジェクトは安全ですか?

監査は一定のリスク低減効果はありますが、安全を保証するものではありません。Ronin BridgeやEuler Financeなど、著名な監査機関の審査を通過したプロジェクトでも大規模なハッキングが発生しています。監査は「既知パターンの排除」に過ぎず、新手の攻撃手法には対応できないケースがあります。

Q. Revokeはどのくらいの頻度でやればいいですか?

DeFiを頻繁に使う場合は月1回、使用後にすぐRevoke習慣をつけるのが理想です。少なくとも長期間使っていないプロジェクトへの承認は速やかに取り消してください。

Q. ブリッジを使わないといけない場合はどうすればいいですか?

大手の取引所(Coinbase、Binance等)のクロスチェーン機能を使う、または流動性が大きく稼働期間が長いブリッジを選ぶことでリスクを相対的に低減できます。小規模・新規のブリッジは特にリスクが高いです。

Q. ハードウェアウォレットを使えば技術的リスクはゼロになりますか?

なりません。ハードウェアウォレットは秘密鍵の保護に特化していますが、承認した権限の悪用やフィッシングによる不正署名には対応できません。使用後のRevoke、アクセス先URLの確認、不審なトランザクションへの署名拒否が引き続き重要です。


まとめ

暗号資産の技術的リスクは「コードの欠陥」と「設計上の脆弱性」から生まれます。

  • スマートコントラクトのバグ:フラッシュローン攻撃、無制限承認の悪用
  • ブリッジのリスク:資金が集中するため、大規模ハッキングの標的になりやすい
  • ラグプル:意図的に設計された技術的詐欺

対策の基本は「ウォレットを分ける」「使い終わったらRevokeする」「失っても良い額で参加する」の3点です。技術的リスクはゼロにはできませんが、習慣的な管理で大きく軽減できます。

暗号資産のウォレット管理と保管方法の詳細はウォレットの種類と選び方で解説しています。


暗号資産のリスク管理を始める

暗号資産の積立シミュレーションで、暴落リスクや手数料・税金を考慮した資産管理を試算できます。


関連記事

本記事は一般的な情報提供を目的としており、税務・投資・法律などの専門的助言ではありません。内容は公的機関などの信頼できる情報をもとに作成していますが、制度や数値は変わる場合があります。実際の判断は公式情報や専門家でご確認ください(運営者情報・免責事項)。