20人から25人ほどの有志のビットコイン開発者集団が、オープンソースのウォレットソフトに潜むセキュリティ上の欠陥を、AIモデルを武器にする攻撃者より先に見つけ出そうと奔走している。「Bitcoin Red Team」と非公式に呼ばれるこの取り組みは、AnchorWatchのCEOロブ・ハミルトン氏が、7月から1.3億ドル超をユーザーから流出させたコールドカードのエアギャップ型ウォレットの欠陥をきっかけに、各種ビットコインプロジェクトを片っ端から洗い出し始めたことから始まった。
匿名の名で活動するチームメンバーのCalle氏は、このチームが依頼を待って動くわけではないと説明する。
「スキャンしてほしいというプロジェクトからの依頼はたくさん来ているが、私たちはむしろ自分たちから動いている。主要なオープンソースのエコシステムのほぼ全体を、すでに自分たちの手で洗い出し終えている」
チームには、Calle、Stu、Talip、thesimplekidといった匿名の協力者と、Ben Carmen、Daniela Brozzoni、James O'Beirne、Bruno Garciaといった実名の開発者の両方が名を連ねている。8月上旬時点で、グループはスキャンを回すためのAIサービスにおよそ2万ドルを費やしていたという。
発端となったコールドカードの欠陥
このグループの結成のきっかけとなった欠陥は、2021年にさかのぼるファームウェアのバグに行き着く。コールドカードのシード生成プロセスが、本来デバイス専用のハードウェア乱数生成器を使うべきところ、気づかれないまま「Yasmarang」というソフトウェアのフォールバックアルゴリズムに切り替わっていた。このアルゴリズムは元々、乱数生成用のチップを一切持たないデバイス向けにのみ想定されていたものだった。このミスにより、一部のウォレットシードの実効エントロピーが128ビットから40ビット程度にまで縮小し、本来暗号学的に安全であるべき秘密鍵が、推測可能な代物になってしまっていた。
攻撃者たちは7月からこの欠陥の悪用を開始し、最初の攻撃波ではわずか25分の間に約500件のウォレットから594BTC、当時のレートで約3800万ドルを流出させた。8月中旬までに、少なくとも12組の別々の攻撃主体による被害額の合計は1.3億ドルを超えるまでに膨らんだ。コールドカードを手がけるCoinkiteはその後、ファームウェアの更新を公開し、新しいシードを生成する際にはハードウェアの乱数に加えて、キー入力やサイコロ、コイントスなどユーザー自身が用意したエントロピーを組み合わせるよう求めるようになった。また、旧方式で生成されたシードはすべて破棄し、新たに作り直す必要があると警告している。
関連記事: コールドカード、1.3億ドル規模のビットコイン流出を受けファームウェアを刷新
AIが脅威モデルを変える理由
Calle氏が特に警鐘を鳴らすのは、目新しさよりもむしろ「敷居の低さ」だ。今回の欠陥の悪用自体には高度な技術知識が必要だったが、AIツールの登場によって、はるかに技術力の低い攻撃者でも同じことを再現できるようになっているという。
「今なら、AIなしではやり方すら分からない人間でも、単純な攻撃であれば最初から最後まで一人でやり遂げられてしまう」
ただしCalle氏は、チームが見つけ続けている脆弱性はあくまでアプリケーションやウォレットソフト側に存在するものであり、ビットコインのコアプロトコル自体にあるわけではないと、丁寧に補足することも忘れない。ビットコインそのものへの信頼と、その上に構築された個々の製品への信頼を、ユーザーがどの程度分けて考えるべきかを左右する重要な違いだ。
興味深いのは、Calle氏がセキュリティスキャンにあたって米国製のAIモデルよりも中国製のAIモデルを頼りにしていると明かした点だ。その差は「比較にもならない」というのがCalle氏の評だ。米国製モデルは攻撃的なセキュリティテスト用途に対してガードレールを課す傾向が強く、たとえその目的が防御であっても利用が制限されてしまうという。結果として、ビットコインのソフトウェアエコシステムを守ろうと奔走する開発者たちが、実質的には攻撃者をより危険にしうるのと同じ種類のツールを、逆方向に向けて使っているという奇妙な構図が生まれている。