年末年始、何かと忙しいので(仙台から自転車で檻に閉じ込められたクロちゃんを見に行ったり)ALISのオープンβ公開までお休みしようとしていたkatakotoさんの元に、ショッキングなニュースが飛び込んできました。
katakotoさん愛用のハードウェア・ウォレットTrezorのハッキング方法が公開されたと言うのです。過去の連載で現状の暗号通貨の一番安全な保管方法としてTrezorをゴリ押ししてきたkatakotoさんとしましてはこの話題を取り上げずにはおれません。
今回の脆弱性はドイツで行われたテクノロジー・セキュリティに関するカンファレンスの中で、ロシア・アメリカ・ドイツ出身のセキュリティ・エンジニア等で構成された下記のメンバーによって発表されました。
詳細はカンファレンスの終了後、サイト上にまとめるという事でしたが、動画から得られた情報でハッキング方法を簡単に説明するとこんな感じ。
Trezorくんをばらして、秋葉原の路上に落ちてる道具につないで90日程、電圧いじいじ。総当たりで、ちょうどいい感じの電圧いじいじポイントを発見。これによりブートローダーをだまくらかしての“特権モード”での起動に成功。
しかしながらTrezorでは、復元フレーズはフラッシュ・ドライブに保存されておりいくら特権モードで起動したとは言え、それを読み取ることはほぼ不可能。
そこで彼らが注目したのはファームウェア・アップグレード時の処理。Trezorは、セキュリティに関する信念からソース・コードをオープンソースとして全ての人に公開しているのですが、彼らはそのコードから復元フレーズが一瞬メモリ内に読み込まれる個所を特定。
あとはその処理が行われるポイントで、メモリ内からデータを丸ごとダンプ。
こうして丸ごと取り出したデータ内に、復元シードどころかPINコードまでプレーンテキストで表示できたという報告でした。
この際の「一体どんな洗練されたハイテク・ハッキングツールを使って解析したっていうんだい?」「Stringsを使うんだよ!(※Linuxのごくごく一般的なコマンド。データの可読部分をそのまま表示する。)」というドヤ顔でのやり取りがKatakotoさんが2018年一番ムカついたポイントでした。
この報告を受けてTrezor側は、1月末までのファームウェア・アップデートでの対応を約束しています。
この脆弱性に関しては
から、個人的にはそれほど脅威に感じてはいません。
今回は、ソースコードやハードウェア設計図をオープン・ソースにしているTrezor側のまさにその点を突かれてしまったわけですが、僕は個人的にその透明性の高さとセキュリティに対する考え方こそを支持してTrezorを選んだので、今後も応援していきたいと思っています。
(ついでに言っておくとライバルデバイスであるLedger Nanoのハッキング方法もビデオの前半で公開されていますので、Ledgerユーザーの方も油断なりませんよ。なにやらアンテナでタッチ時の微弱な電波を読み取ってました。そこまでやられたらもう僕のALISは持って行っていいよ。)
最後に彼らのセキュリティ・マニフェストから僕が支持したい一文を紹介して終わりたいと思います。それでは皆さん良いお年をお迎えください。来年もALISのクリプトカテゴリにて元気でお会いしましょう。
Nonetheless, security vulnerabilities do sometimes occur; they are inevitable. What is important is the way we face these issues — how we react to them and how quickly we fix them.
Source:SatoshiLabs Security Manifesto
“それでも、セキュリティの脆弱性は時々生じてしまう。それらは決して避けられない。重要なのは、我々がどのように問題に向かい合うかだ。-どのように対応し、いかに迅速に解決するかが大切なのだ。”