ハードウェア脆弱性評価技術の最新動向 - ipaeとdは素因数p,...
TRANSCRIPT
ハードウェア脆弱性評価技術の最新動向
~電磁波照射攻撃によるICカードの脆弱性評価を紹介~
2014年5月 情報セキュリティEXPO@東京ビッグサイト
独立行政法人情報処理推進機構 技術本部セキュリティセンター
情報セキュリティ認証室 中田 量子
1
身近なハードウェアセキュリティ製品 ICカード
ICカードは、銀行カード、クレジットカード、交通カード、パスポートなどとして広く使われている。
金融 交通
モバイル
公共 パスポート
電子マネー、 クレジットカード、銀行カード
SIMカード
ID
電子マネー
ETCカード、乗
車カード(鉄道、バスなど)
IC運転免許証 社員証 2
14. -3.31まで □□↔○○
定期券
10800 円 14.-5.15
□□駅 発行 △△△△様
通勤3箇月
職員証 名前:まもるくん
発行日:2014.04.01
ICカード
講演の流れ
ICカードの特徴と脅威 ICカードに対する攻撃手法
• 典型的なハードウェア攻撃の手法 • 新しい攻撃手法
ICカードの脆弱性評価と認証制度 IPAでの取組み
3
ICカードの特徴と脅威
4
ICカードの特徴 (1)
ICカードは、磁気カードに代わり、セキュリティが必要な場面で使われている。
ICカードは磁気カードとは本質的に異なる。
メモリ
セキュリティ
CPU
電源回路
• 磁気カードは情報を記録しているだけである。
• ICカードには、CPUやメモリを
内蔵した小さなコンピュータが搭載されており、その内部で計算処理を行う。
• ICカードの動作には電力が必
要。外部から電力や入力信号を受け取る。
5
ICカードの特徴 (2)
クレジット機能付き
ICカード • クレジット機能付きICカードでは
サインではなく暗証番号で本人確認する。
• 暗証番号の判定はICカード内で行われる。
クレジット機能付きICカード
端末
利用者が暗証番号を入力する
入力された暗証番号を判定
OKならば、決済処理を開始する
入力された暗証番号
OK/NGを回答
暗証番号による本人確認の流れ 6
ICカードの特徴 (3)
ICカードは、小さなコンピュータを内蔵し、安全性を高めている。 • 秘密データを内部にとどめたまま、判定処理を行う。 • 内部で計算処理ができることを使用した、複製を困難にする仕組みが実装されている。
ICカードにも小さなコンピュータならではの攻撃方法が想定される。 実際に使われているICカードに対する攻撃が可能だったという研究結果がある。
7
実際の攻撃事例(実証実験) 2008年6月、オランダの研究者が、欧州で1,700万枚発行さ
れている「オイスターカード」(交通カード)を複製し利用できることを英国ロンドンの地下鉄で実証した。[1]
複製が可能だった理由として挙げられたもの リバースエンジニアリングにより秘密情報を解読 安全性の確認されていないアルゴリズムとその実装 短い暗号鍵 ランダムさの足りない乱数生成
この研究は、ICカードへの攻撃が 現実的なものであることを示している
ICカードへの攻撃による被害を防ぐためには、個別の攻撃に対する脆弱性評価が必要
[1] Nohl, Karsten; Henryk Plotz. "Mifare: Little Security, Despite Obscurity". Chaos Communication Congress. 8
ICカードに対する攻撃手法
9
ICカードに対する代表的な攻撃
攻撃手法 説明
物理攻撃 リバースエンジニアリング
顕微鏡写真を観察し、その情報を得て、悪用する。
物理プロービング 信号線をプローブし信号を読み取る。
物理マニピュレーション
電子回路を改造し、悪用する。
サイドチャネル攻撃 ICカードを壊さずに、動作中の消費電力、放射電磁波などを測定して秘密情報を取り出す。
故障利用攻撃 規定外の電圧、規定外のクロック信号、レーザー照射、電磁波照射などの物理的な刺激により、動作中のICカードを誤動作させ、秘密情報を取り出す。
10
攻撃手法 説明
物理攻撃 リバースエンジニアリング
顕微鏡写真を観察し、その情報を得て、悪用する。
物理プロービング 信号線をプローブし信号を読み取る。
物理マニピュレーション
電子回路を改造し、悪用する。
サイドチャネル攻撃 ICカードを壊さずに、動作中の消費電力、放射電磁波などを測定して秘密情報を取り出す。
故障利用攻撃 規定外の電圧、規定外のクロック信号、レーザー照射、電磁波照射などの物理的な刺激により、動作中のICカードを誤動作させ、秘密情報を取り出す。
ICカードに対する代表的な攻撃(1) — 物理攻撃 —
IN
VDD
OUT
GND
リバースエンジニアリング
IN OUT
VDD
GND
PMOS
NMOS
顕微鏡写真を回路図に変換 PMOS
NMOS
物理マニピュレーション
FIB(Focused Ion Beam)を用い改造
信号線をつないだ箇所
11
x1000
物理プロービング
プローブ プローブ
攻撃手法 説明
物理攻撃 リバースエンジニアリング
顕微鏡写真を観察し、その情報を得て、悪用する。
物理プロービング 信号線をプローブし信号を読み取る。
物理マニピュレーション
電子回路を改造し、悪用する。
サイドチャネル攻撃 ICカードを壊さずに、動作中の消費電力、放射電磁波などを測定して秘密情報を取り出す。
故障利用攻撃 規定外の電圧、規定外のクロック信号、レーザー照射、電磁波照射などの物理的な刺激により、動作中のICカードを誤動作させ、秘密情報を取り出す。
ICカードに対する代表的な攻撃(2) — サイドチャネル攻撃 —
A 平文 101101001001
暗号文 101001011010
12
消費電力は、処理の対象の平文と暗号鍵に応じて変化する。
サイドチャネル攻撃
消費電力波形 (RSA署名生成中)
攻撃手法 説明
物理攻撃 リバースエンジニアリング
顕微鏡写真を観察し、その情報を得て、悪用する。
物理プロービング 信号線をプローブし信号を読み取る。
物理マニピュレーション
電子回路を改造し、悪用する。
サイドチャネル攻撃 ICカードを壊さずに、動作中の消費電力、放射電磁波などを測定して秘密情報を取り出す。
故障利用攻撃 規定外の電圧、規定外のクロック信号、レーザー照射、電磁波照射などの物理的な刺激により、動作中のICカードを誤動作させ、秘密情報を取り出す。
ICカードに対する代表的な攻撃(3) — 故障利用攻撃 —
13
平文 101101001001
不正な暗号文 1010011101010
電源電圧 対物レンズ
レーザー光
ICチップ
規定外の電圧供給 レーザー照射
故障利用攻撃(1) — 誤動作を引き起こすための手段 — グリッチ攻撃
• 電源やクロック信号の電圧を変動させる レーザー照射攻撃
• ICカードに内蔵されている半導体にレーザーを照射する • 半導体にレーザーを照射すると、照射された部分の電子が自由
電子として励起し、電流が流れる[2]
• 意図しない電流が流れることでゲートの誤動作が発生する • 高精度な攻撃が可能
レーザー照射で電流が流れる模式図([2]より)
14 [2] Franck Courbon, Philippe Loubet-Moundi, Jacques J.A. Fournier, and Assia Tria: Adjusting laser injections for fully controlled faults. In: International Workshop, COSADE 2014, Paris, France, April 14-15, 2014. Proceedings. Springer (2014)
故障利用攻撃(2) — 誤動作を引き起こすための手段 — 電磁波照射攻撃
• ICカードに電磁波を照射する • 外部からの電磁波で、半導体中の磁場が変化する • ファラデーの電磁誘導の法則に従って、配線を流れる電子(電流)に起
電力が発生する • その結果、信号線の電圧などが変動し、誤演算が起こる[3]
• 非侵襲、非接触で攻撃可能
2. 磁場が生じる
3.電流が流れる 4.電圧が変動する (電流源としてふるまう)
1. コイルに 電流を流す
電磁波照射攻撃による電磁誘導の模式図
15
[3] Rajesh Velegalati, Robert Van Spyk and Jasper van Woudenberg: Electro Magnetic Fault Injection in Practice. In: International Cryptographic Module Conference, ICMC 2013, Gaithersburg, MD, US, September 24-26, 2013. Proceedings. (2014)
故障利用攻撃(3) — 電磁波照射攻撃の報告例 1—
横浜国立大学の報告[4] • ターゲット:ICカードに実装したAES • 照射電磁波:123.5MHz、105us • 結果:AESの10ラウンドで誤演算を起こし、AES鍵の導出に成
功
[4]遠山毅, 土屋遊, 大野仁, 岸川剛, 齋藤翔平, 佐々木明彦, 佐藤証, 松本勉, “電磁波照射を用いた フォールト攻撃によるICカードからのAES鍵の抽出(2),” 2013年暗号と情報セキュリティシンポジウム, 予稿集 CD-ROM, 3E4-4, 2013 16
故障利用攻撃(4) — 電磁波照射攻撃の報告例 2 — Dehbaoui et. al.の報告[5]
• ターゲット:FPGAとマイクロコントローラ • 照射電磁波:ターゲットに近接させた探針に電流をパルス的に流
す • 結果:AESの10ラウンドで誤演算を起こし、AES鍵の導出に成功
[5] Dehbaoui, A., Dutertre, J.M., Robisson, B., Tria, A.: Electromagnetic transient faults injection on a hardware and a software implementations of aes. In: FDTC.pp. 715 (2012)
論文に掲載された実験装置の写真と模式図
17
故障利用攻撃(5) —秘密情報取得の具体例 — ユーザー認証のスキップ
• 暗証番号の判定の過程でオペレーションをスキップする 差分故障利用攻撃(Differential Fault Analysis, DFA)
• 暗号演算を間違わせることで、不正な暗号文を得る • 正しい暗号文と合わせて計算処理することで、暗号演算に使われた鍵を推定する
秘密情報にアクセス
暗証番号の判定 アクセス拒否 NG
GO
不正な暗証番号を
入力
ユーザー認証のスキップ • 暗証番号の判定の過程でオペレーションをスキップする
18
秘密情報にアクセス
暗証番号の判定 アクセス拒否 NG
GO
不正な暗証番号を
入力
ユーザー認証のスキップ
使われた鍵の推定
計算処理
平文
暗号 演算
正しい暗号文
平文
暗号 演算
不正な暗号文
差分故障利用攻撃の例
差分故障利用攻撃の仕組み(1) -RSA暗号- 大きな数の素因数分解の困難性に基づく方式 登場するパラメータは n, p, q, e, d
• n=pq (p, qは素数) • ed ≡ 1 (mod (p-1)(q-1)) となる整数d,e (e,d : (p-1)(q-1)より小さく、 (p-1)(q-1)と互いに素な正整数。 eとdは素因数p, qを知っていれば容易に求まる) • (n, e): 公開鍵 • (n, d): 秘密鍵(p,qも秘密鍵所持者は知っている)
nは巨大な整数 (2048ビット以上) nの素因数分解は計算量的に困難 n, eからdを求めることは計算量的に困難 (nの素因数を求める
ことと同値) 19
差分故障利用攻撃の仕組み(2) -RSA暗号の基本演算-
暗号化 • 平文m, 公開鍵eから, 暗号文 c ≡ me (mod n) を計算
復号 • 暗号文c, 秘密鍵dから, 平文 m ≡ cd (mod n) を計算
署名生成 • メッセージm, 秘密鍵dから, 署名 s ≡ md (mod n) を計算
署名検証 • メッセージm, 署名s, 公開鍵eが, m ≡ se (mod n) を満たすことを検証
20
差分故障利用攻撃の仕組み(3) -RSA暗号の高速化手法:RSA-CRT- RSA暗号は、巨大な数の冪乗剰余演算を行うため、計算量が多い RSA-CRT (CRT: Chinese Reminder Theorem)
• 秘密鍵dによる冪乗演算に適用 • アイディア: mod n(=pq)での冪乗剰余を直接計算する代わりに、mod pでの冪
乗剰余とmod qでの冪乗剰余を別々に計算し、それらの剰余を「合成」してmod nでの剰余を計算する
• mod n を直接計算するより約4倍高速。 以下の値をあらかじめ計算し、秘密鍵のセットに加える
• dp ≡ d (mod p-1) • dq ≡ d (mod q-1) • qinv ≡ q-1 (mod p)
署名生成 (s ≡ md mod n)を以下の方式で計算 • s1 ≡ mdp mod p • s2 ≡ mdq mod q • h ≡ qinv(s1 - s2) mod p • s = s2 + hq
21
差分故障攻撃の仕組み(4) -BellCoRe Attack [6]- 署名生成時に、s1の計算時に誤演算させる。
s1 ≡ mdp mod p s2 ≡ mdq mod q h ≡ qinv(s1 - s2 ) mod p s = s2 + hq
正しい署名
s ≡ md mod p
s ≡ md mod q
h’ ≡ qinv(s1’- s2 ) mod p
s1’ ≢ mdp mod p
s’ = s2 + h’q
s2 ≡ mdq mod q
誤った署名
s’ ≢ md mod p s’ ≡ md mod q
∴ s ≡ md mod n ( n = pq )
22
gcd(s’ – s, n) = q
正しい署名と不正な署名1個からnの素因数qが判明! →qがわかれば秘密鍵dも容易に計算可能
[6] D.Boneh, R.A.DeMillo, R.Lipton. On the Importance of Eliminating Errors in Cryptographic Computations. In Journal of Cryptology 14(2), pages 101–120, 2001.
消費電力波形 (RSA署名生成中)
このタイミングで 誤演算させる
ICカードの脆弱性評価と認証制度
23
国際規格ISO/IEC 15408に基づく 定量的な脆弱性評価
IT製品のセキュリティ機能の適切性・確実性を評価・認証するための国際規格ISO/IEC15408があり、日本を含む
各国で評価・認証制度が運営されている。 この規格では現実的な脅威とみなされる各種攻撃に対す
る、セキュリティ耐性を点数付けし、定量的に評価する。 要因 内容
所要時間 攻撃に必要な時間で点数付け 専門知識 攻撃に必要な技術知識の違いで点数付け
評価対象の知識 攻撃に必要な評価対象についての情報の質と量の違いで点数付け
評価対象へのアクセス 攻撃に必要なサンプル数の違いで点数付け
機器 攻撃に必要な機器の違いで点数付け
オープンサンプル ICカードのソフトウェアを自由に変更できるサンプルの入手性と数の違いで点数付け
24
脆弱性評価への新しい攻撃の取込み
新しい攻撃が現実的な脅威とみなされると、 その攻撃への耐性も評価されるようになる。
• 新しい攻撃の有力候補 • 「電磁波照射攻撃」 など
25
IPAでの取組み
26
ハードウェア脆弱性評価に関する 人材育成 新しい攻撃への耐性を評価する最先端のツールを整備
して、日本の半導体ベンダ、ICカードベンダ、評価機関、大学などの研究機関が利用できる評価環境の整備を進めている。 • 最先端の評価ツールを使用し、脆弱性を評価することで新しい攻撃手法を修得
• ICカードの開発過程で利用し、対抗策を検証することで、高い攻撃耐性を持った製品開発が可能
• 将来的な攻撃手法の研究活動に活用
ICカード等のハードウェア脆弱性評価に関する 高度な技術を持った人材の育成を目指している
27
IPAでの取組み
IPAでは次のような取組みを行い、安心して利用できるハードウェア製品の普及に取り組んでいます。 • セミナー等での最新情報の発信 • ICカード等を対象としたハードウェア脆弱性評価ツールの整備、外部利用による人材育成
• 脆弱性評価の評価対象として活用できる、テストビークルの作成
• ITセキュリティ評価及び認証制度の運営 • 暗号モジュール試験及び認証制度の運営
IPAは、これらの取組みにより、 ICカード等のハードウェアの安全性確保と
安心・安全な暮らしの実現を目指しています。 28
参考文献
[1] Nohl, Karsten; Henryk Plotz. "Mifare: Little Security, Despite Obscurity". Chaos Communication Congress
[2] Franck Courbon, Philippe Loubet-Moundi, Jacques J.A. Fournier, and Assia Tria: Adjusting laser injections for fully controlled faults. In: International Workshop, COSADE 2014, Paris, France, April 14-15, 2014. Proceedings. Springer (2014)
[3] Rajesh Velegalati, Robert Van Spyk and Jasper van Woudenberg: Electro Magnetic Fault Injection in Practice. In: International Cryptographic Module Conference, ICMC 2013, Gaithersburg, MD, US, September 24-26, 2013. Proceedings. (2013)
[4]:遠山毅, 土屋遊, 大野仁, 岸川剛, 齋藤翔平, 佐々木明彦, 佐藤証, 松本勉, “電磁波照射を用いたフォールト攻撃によるICカードからのAES鍵の抽出(2),” 2013年暗号と情報セキュリティシンポジウム, 予稿集 CD-ROM, 3E4-4, 2013
[5] Dehbaoui, A., Dutertre, J.M., Robisson, B., Tria, A.: Electromagnetic transient faults injection on a hardware and a software implementations of aes. In: FDTC.pp. 7-15 (2012)
[6] D.Boneh, R.A.DeMillo, R.Lipton. On the Importance of Eliminating Errors in Cryptographic Computations. In Journal of Cryptology 14(2), pages 101–120, 2001.
29
IPAからのお願い
Windows XPのサポートが、2014年4月9日に終了しました。 まだ移行していない方は、不正アクセス等を回避するためサポートの継続する後継OS、または代替OSへの移行が望まれます。
サポート期間中
サポート期間終了後
IPA XP移行 検索 30
https://www3.jitec.ipa.go.jp/JitesCbt/
31
ご清聴ありがとうございました。
32