セキュリティーキー YubiKey 5に鍵が抽出されて複製される深刻な脆弱性が見つかったとの話題がネット上を賑わかしています。Google Titan セキュリティ キーのサイドチャンネル攻撃で突破できたとするセキュリティ調査機関のNinjaLabが、Yubico YubiKey 5についてもサイドチャンネル攻撃が可能だと発表したことが発端です。
概要としては攻撃者の手にYubiKey 5が渡り、専用の機材を使って観測することで鍵となる情報を取得されるというものです。公表されたドキュメントによると波形を観測しているのでサイドチャネル攻撃(side-channel attack)の一種です。
攻撃のシナリオとしてはターゲットに気付かれないようにYubiKeyを奪い取り、複製してからターゲットに返却することで成立します。ターゲットの資格情報、ID、パスワードなど知識情報も取得しておき、複製したYubiKeyを使ってターゲット本人になりすまして継続的にアクセスすることを目標とします。
物理鍵が一致しているだけなら複製されたら危ないということになるのですがYubiKeyに紐付けられているアカウントのID、パスワードとセットで盗られなければ攻撃は成立しないので慎重に運用していくことが重要でしょう。
例えば、銭湯のロッカーや飲食店の下駄箱、業務用の傘立てなどに採用されている松竹錠(木札やアルミニウム札に大小長短の切り込みを複数入れ、その切り込みの形で開錠する)だったら、かなり簡単に複製されてしまいますよね。でも現実には靴や傘の取違の防止が目的だから問題にならないわけです。
ゴルフ場のロッカーやホテルの金庫のカギではちょっと問題になったことがありました。犯人に合鍵が作られていて、不在時にキャッシュカードやクレジットカードを複製されたという事案です。
ということでYubiKeyをどれくらい重要なことに使っているのかで守り方を変えるべきです。守り方のポイントを挙げておきます。
普段の防衛策
・人前でYubiKeyを使わないようにする
・短時間でも他人に貸さない
・YubiKeyを安全に保管する
・認証ログなどセキュリティアクティビティをチェックする(他人に使われていないか)
留意すべき点
・YubiKeyに開封や細工されるなどの異常が見られる場合には無効化する。
・入国審査等で荷物と一緒にYubiKeyをチェックされるような事態を避ける
※例えば敵対的な国家機関であればこの手の攻撃を実施可能であるため。
・新しいYubiKeyへの交換に備えて使用しているアカウントを管理しておく
今後の対策
・新しいファームウェアを搭載したYubikeyへの交換
技術的には回路を電気信号や漏洩する電磁波を観測し続ければ解析で鍵を求めたり、その信号を再生して鍵として使えそうと常々思っていました。YubiKeyには耐タンパ性があったと思うのですが壊さないように外装とシールドを外して計測するような手の込んだことができたのであれば驚きです。本当に元通りに組み立てられたのでしょうか? こんな難しいことをしなくてもYubiKeyをすり替えるような攻撃の方が現実的だと思います。
■関連リンク
Security Advisory YSA-2024-03 Infineon ECDSA Private Key Recovery [Yubico]
セキュリティアドバイザリ YSA-2024-03 Infineon ECDSA 秘密鍵の回復
公開日: 2024-09-03
追跡ID: YSA-2024-03
YubiKey 5 シリーズ、ファームウェア 5.7.0 より前のセキュリティ キー シリーズ、およびファームウェア 2.4.0 より前の YubiHSM 2 で使用されている Infineon の暗号化ライブラリに脆弱性が発見されました。Yubico デバイスにおける問題の重大度は中程度です。
攻撃者は、高度な標的型攻撃の一環としてこの問題を悪用し、影響を受ける秘密鍵を復元する可能性があります。攻撃者は、YubiKey、セキュリティ キー、または YubiHSM を物理的に所有し、攻撃対象となるアカウントに関する知識と、必要な攻撃を実行するための特殊な機器を必要とします。ユース ケースによっては、ユーザー名、PIN、アカウント パスワード、認証キーなどの追加の知識も必要になる場合があります。詳細については、「影響を受けるユース ケースと緩和策」を参照してください。
中程度の脆弱性は、FIDO 標準がデフォルトで影響を受ける機能に依存しているため、主に FIDO の使用例に影響します。エンド ユーザーによる構成とアルゴリズムの選択によっては、YubiKey PIV および OpenPGP アプリケーションと YubiHSM 2 の使用も影響を受ける可能性があります。
Yubico 製品の継続的な改善の一環として、またサプライ チェーンへの影響を軽減するために、Infineon の暗号化ライブラリへの依存がなくなり、Yubico 独自の暗号化ライブラリが採用されました。
ユースケースごとの詳細については、以下の影響を受けるユースケースを参照してください。
影響を受けない製品
YubiKey 5 シリーズ バージョン 5.7.0 以降
YubiKey 5 FIPS シリーズ 5.7 以降 (FIPS 申請中)
YubiKey Bio シリーズ バージョン 5.7.2 以降
セキュリティ キー シリーズ バージョン 5.7.0 以降
YubiHSM 2 バージョン 2.4.0 以降
YubiHSM 2 FIPS バージョン 2.4.0 以降
影響を受ける
YubiKey 5 シリーズ 5.7 より前のバージョン
YubiKey 5 FIPS シリーズ 5.7 以前
YubiKey 5 CSPN シリーズ 5.7 以前
YubiKey Bio シリーズ 5.7.2 より前のバージョン
セキュリティ キー シリーズ 5.7 より前のすべてのバージョン
YubiHSM 2 バージョン 2.4.0 より前
YubiHSM 2 FIPS バージョン 2.4.0 より前
影響を受けているかどうかを知る方法
YubiKeyのバージョンを確認する
YubiKey を識別するには、Yubico Authenticatorを使用してYubiKey のモデルとバージョンを識別します。キーのシリーズとモデルは、ホーム画面の左上隅に表示されます。
■セキュリティ調査機関のNinjaLabがサイドチャネル攻撃に成功したと報告
EUCLEAK [NinjaLab]
https://ninjalab.io/eucleak/
https://ninjalab.io/wp-content/uploads/2024/09/20240903_eucleak.pdf
A Side Journey to Titan [NinjaLab]
https://ninjalab.io/a-side-journey-to-titan/
https://ninjalab.io/wp-content/uploads/2022/05/a_side_journey_to_titan.pdf
■関連記事