この記事は初出時点の内容を翻訳したものです。取り上げているハードウェアやファームウェアには、すでに提供を終了しているもの、より新しい世代に置き換わっているものが含まれます。
Yubicoは、YubiKeyに対する物理的な攻撃への耐性を高めるため、ボーフム・ルール大学の世界的に著名な暗号研究者と協力してきました。この取り組みは1年にわたって続けられ、その成果はRAID2013カンファレンスで公表され、30C3でも発表されました。オープンで透明であるという私たちの原則に従い、彼らの研究で示された課題に対処するためにこの1年で行ったことを、以下に概略として説明します。セキュリティに関する私たちの基本的な考え方は、私たちが何をしているかをお伝えし、皆さまに知っていただき続けることです。
まず、物理的な攻撃とYubiKeyについて基本的な点をおさらいします。YubiKey Standardは、攻撃者がわずかな労力で多数のYubiKeyを攻撃しようとする脅威に対処するよう設計されていました。これはインターネット上で一般的に見られる「非対称な」脅威です。たとえば、多数のマシンに感染するソフトウェアのトロイの木馬(これはよくあることです)は、ワンタイムパスワード(OTP)を生成できません。YubiKeyのタッチボタンを物理的に押す人が必要だからです。攻撃者がYubiKeyそのものに物理的にアクセスする攻撃は、私たちの想定する脅威モデルの外にあり、利用者には常識的な対策 ― 自宅やオフィスの玄関の鍵と同じように、YubiKeyを身につけておくか安全な場所に保管し、公共の場のコンピューターに挿したままにしない ― をお願いしてきました。
ほとんどの環境において、一般的な原則として、利用者の認証には複数の要素を組み合わせることをおすすめします。通常、YubiKeyは知っているもの(パスワード)と持っているもの(YubiKey)を組み合わせて使われます。つまり、一時的にYubiKeyを失っても、それだけで致命的ではありません。攻撃者はさらにパスワードも入手しなければならないからです。パスワードを入手したうえでYubiKeyを一時的に借りることも不可能ではありませんが、パスワードだけを入手するのに比べれば攻撃者にとってのコストははるかに高くなります。さらに、正当な所有者には、利用中のサービスに連絡してそのYubiKeyを無効化し、安全なサイトやサービスへのアクセスを断つための時間が生まれます。
昨年実証された新しい攻撃は、「サイドチャネル」攻撃を用いてYubiKey(バージョン2.3以前)からAES鍵を取り出すというものでした。サイドチャネル攻撃は、消費電力、電磁放射、計算時間、音といった、システムへの別の経路を通じて行われます。この種の攻撃を防ぐことは、直接的な攻撃を防ぐことよりも難しくなります。防御を作る前に、その攻撃経路の存在を知っていなければならないからです。時間解析や電力解析といった一部のサイドチャネルはすでに数年前から知られており、一般的な防御手法も確立されています。たとえばサイドチャネルの時間解析への対処法のひとつは、入力によらず計算にかかる時間が一定になるようソフトウェアを実装することです。
この攻撃は、YubiKeyの電力および電磁の解析を用いるもので、YubiKeyに長時間にわたって物理的にアクセスできることを必要とします。典型的な攻撃では、一晩にわたるアクセスが必要でした。実験装置としては、消費電力と電磁放射を測定し、YubiKeyのタッチボタンの押下を模擬するための専用の治具にYubiKeyを固定する必要があります。この装置と独自に開発した後処理ソフトウェアにより、研究者たちはYubiKeyがOTPの生成に用いるAES鍵を取り出すことに成功しました。いわばYubiKeyは、タッチボタンを多数回押した後にAES鍵を算出できるだけの情報を、わずかに「漏らして」いたのです。
Yubicoは昨年の早い段階でこの研究について知らされました。YubiKey Standardは物理的な攻撃への耐性を意図した製品ではありませんでしたが、私たちは期待を超えることを目指しています。そこで研究者たちと協力し、更新版のファームウェアを作成しました。新しいファームウェアは研究者たちによって検証され、この攻撃が防止されること、そして別の攻撃経路も見つけられなかったことが確認されました。このファームウェアはバージョン2.4と呼ばれ、2013年5月に黒色のYubiKey Standardから出荷が始まり、研究成果が公表される前に、すべての形状と色へ順次展開されました。
よくある質問
Q:影響を受けるYubiKey製品はどれですか?
A:ファームウェアがバージョン2.4より前のYubiKey StandardおよびYubiKey Nanoのみです。YubiKey NEOは影響を受けません。
Q:YubiKey StandardをOATHまたはチャレンジレスポンスモードで使っていますが、影響はありますか?
A:いいえ。影響があるのはYubico OTPモードのみです。
Q:自分のYubiKeyのファームウェアのバージョンはどう確認できますか?
A:Yubicoのパーソナライゼーションツールをご利用ください。最近のDebian/Ubuntuをお使いであれば、これらのツールはOSに同梱されています。
Q:この攻撃を心配すべきでしょうか?
A:それほど心配は要りません。仮にYubiKeyに物理的にアクセスされたとしても、暗号鍵を取り出すには高度な装置が必要であり、ほとんどの方にとって現実的にはほぼ不可能です。また、YubiKeyを使うシステムの多くは、PINやパスワードといった第2の要素を必要とします。
原文(英語): 「Improving the Physical Security of the YubiKey」 https://www.yubico.com/blog/improvements-physical-yubikey-attacks/




























