ROCA脆弱性
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/05/01 04:53 UTC 版)
CVE 識別子 | CVE-2017-15361 |
---|---|
発見日時 | February 2017年 |
発見者 | Matúš Nemec, Marek Sýs, et al. (マサリク大学) |
影響を受ける ハードウェア | TPM, Yubikey, Gemalto IDPrime .NET スマートカードs |
影響を受ける ソフトウェア | 脆弱なRSALibで作ったRSA鍵 |
ROCA 脆弱性 とは、この脆弱性を内包する装置で生成された公開鍵から私有鍵が導出できてしまうような暗号理論上の弱点のひとつである。"ROCA" は、"Return of Coppersmith's attack"の略である[1][2]。当脆弱性は、CVE-2017-15361で特定される。
当脆弱性は、インフィニオン・テクノロジーズの提供した脆弱だった版のRSALibライブラリの用いたRSA鍵生成の手法によって生じた。YubiKey 4トークンをはじめ、PGP鍵の生成によく用いられる多くのスマートカード、トラステッド プラットフォーム モジュールやハードウェア・セキュリティー・モジュールらが、このライブラリを呼び出していた。脆弱な版のインフィニオンのライブラリで生成された512、1024、2048ビット長の鍵は、ROCA攻撃にたいして脆弱である [3][4]。
当攻撃を発見したマサリク大学のMatúš NemecとMarek Sýs[3]らの率いる研究チームは、当時のTPM装置の約4分の1に影響したものと見積もった[5]。数百万枚のスマートカードに影響したとみられる[2]。
チームは、RSALibの問題をインフィニオンにたいしては2017年2月に通知しつつ、en:responsible disclosureの観点から一般への公表は10月中旬まで見送った。その際は、攻撃法と公開鍵の検査方法も公表した。攻撃の詳細の公表は11月だった [3]。
技術的詳細
RSA鍵の生成には、大きい素数であるような複数の乱数生成および選択が含まれる。乱数生成は、スマートカードのような小さい装置では特に、時間のかかりうる処理である。素数であることにくわえ、高度の安全性のためには、他の性質ももつことが好ましい。しかし、脆弱なRSALibでの処理は、次の形の素数かどうかだけを検査した。
- ROCA脆弱性のページへのリンク