Flameと暗号技術の怪しい関係・・・
マルウェアの片棒を担いだ暗号技術－ まさかの“マイクロソフト製”マルウェア！？

IPA 技術本部 セキュリティセンター
暗号グループ
神田 雅透
20120705 沖縄ICTフォーラム20121

去年の沖縄ICTフォーラムで20120705 沖縄ICTフォーラム20122

何が問題視されたのか

20120705 沖縄ICTフォーラム20123

もう一つ大事なことをいっていた

今日はこっちの話

20120705 沖縄ICTフォーラム20124公開鍵証明書が悪用されるのはどんな時？
 公開鍵証明書に対応する秘密鍵が流出（例：マレーシ

ア政府の署名鍵流出事件）
 登録局での検証ミスによって不正な公開鍵証明書を認証局が誤って発行（例：Comodo事件）
 認証局への不正アクセスによって不正な公開鍵証明書を発行（例：Diginotar事件）
 公開鍵証明書で使っている暗号技術が弱いことを突いて不正な公開鍵証明書を偽造• 公開鍵情報から秘密鍵を割り出す（公開鍵暗号の問題）• 真正な公開鍵証明書と区別ができない不正な公開鍵証明書を計算機によって偽造（ハッシュ関数の問題）
20120705 沖縄ICTフォーラム2012

5で、本題に入る前に・・・
いくつかの準備を

20120705 沖縄ICTフォーラム20126公開鍵証明書の役目
 署名の検証鍵は本当に意図した相手のものか？
ユーザAは署名付きメールを送付（したつもり）

私、ユーザAね（ユーザCだけどね、本当は）Alice

ユーザCは自分の署名鍵で作った署名付きメールをユーザAのものとして送付

ユーザA

ユーザB

OK 公開鍵証明書は騙されないための保険② 申請内容の審査①公開鍵証明書認証局
ユーザAの公開鍵・ユーザAの本人性審査の発行申請・公開鍵と秘密鍵の正当性審査

CA公開鍵証明書

ユーザAの秘密鍵

ユーザA
公開鍵証明書③公開鍵証明書の発行
CA署名④ ユーザAの秘密鍵で署名⑦ ユーザA公開鍵証明書の正当性検証⑥ CA公開鍵証明書の入手

CA署名⑧ ユーザAの公開鍵による署名検証
ユーザB

ユーザA
20120705 沖縄ICTフォーラム2012⑤ 署名付き文書＋公開鍵証明書の送付

OK/NG
7

公開鍵基盤PKI (Public Key Infrastructure) ルートCAはPKIのTrust Anchor
ルート証明書ルートCA

中間CA(-A)証明書

R

中間CA(-A)

中間CA(-B)

中間CA(-B)証明書

RR
公開鍵証明書（EE証明書）

公開鍵証明書（EE証明書）

公開鍵証明書（EE証明書）

公開鍵証明書（EE証明書）

公開鍵証明書

公開鍵証明書

公開鍵証明書

公開鍵証明書A

A

B

B

R-CA Certification

A-CA Certification

EE Certification

R-CA public key

A-CA public key

EE public key

R-CA sig
20120705 沖縄ICTフォーラム2012

R-CA sig

A-CA sig

EE sig8

ハッシュ関数の性質
 ハッシュ関数

任意長のメッセージを一定長のダイジェストに写像
メッセージ空間よりもダイジェスト空間のほうが小さいので、理論上必ず衝突が起こる（この点が暗号と異なる）

メッセージの集合
一方向性第2原像計算困難性
衝突困難性

 ハッシュ関数の安全性• 一方向性(Onewayness)
Preimage Resistance:
ハッシュ値の集合
ダイジェストからもとのメッセージ（の候補）が導き出せない
Second Preimage Resistance:
特定のダイジェストに一致する別メッセージを作り出せない• 衝突困難性・非衝突性(Collision-free/resistance)
同じダイジェストになる異なるメッセージ組を作り出せない20120705 沖縄ICTフォーラム20129ハッシュ衝突攻撃ができると何が起こるか
例えば、デジタル署名のすり替え（改竄）が可能になる
 改竄検知が不可能となる文書をあらかじめ用意可能• X.509の偽造証明書もこのケース********************
CONTRACTAt the price of $176,495 Alf
Blowfish sells his house to
Ann Bonidea. …

署名********************
CONTRACTAt the price of $176,495 Alf
Blowfish sells his house to
Ann Bonidea. …

印

Hash: a854d0c2d513a0

Hash: a854d0c2d513a0********************
CONTRACTAt the price of $276,495 Alf
Blowfish sells his house to
Ann Bonidea. …

********************
CONTRACTAt the price of $276,495 Alf
Blowfish sells his house to
Ann Bonidea. …

Hash: a854d0c2d513a0

Hash: a854d0c2d513a0

同じダイジェストになる
2つの文書を作成
20120705 沖縄ICTフォーラム2012

概念的にはこのケースが現実化したということ

印

署名の付け替え********************
CONTRACTAt the price of $276,495 Alf
Blowfish sells his house toAnn Bonidea. …

偽造文書へのすり替え

印

Hash: a854d0c2d513a0

参考文献：Dobbertin, “Cryptanalysis of MD4,”

Journal of Cryptology, Vol. 11 No. 410

Merkle-Damgård構造 ～一般的な構造～
MD4, MD5, SHA-1, SHA-2 は全てこの構造を採用
メッセージ

メッセージ
拡張関数

メッセージ拡張関数

パディング

メッセージ
拡張関数

メッセージ
拡張関数

拡張メッセージ

ハッシュ値

圧縮関数

圧縮関数

圧縮関数

撹拌関数

撹拌関数

撹拌関数

撹拌関数

撹拌関数

ダイジェスト長

初期
ベクトル

ダイジ
ェ
ス
ト

圧縮関数
20120705 沖縄ICTフォーラム201211ハッシュ関数の計算の差分イメージ
Hash(M0|M1|M2|M3)【参考】「MD5 considered harmfultoday」での図表をベースに改編

IV0
圧縮関数

IV0M0

M*0

IV1
圧縮関数

M1

M1IV420120705 沖縄ICTフォーラム2012

圧縮関数
IV*2

M2

M2

IV3
圧縮関数

圧縮関数
IV*1IV2
圧縮関数

Hash(M0|M1|M2|M3)－Hash(M*0|M1|M2|M3)

圧縮関数
IV*3

M3

M3

圧縮関数
IV*4
12

MD5（Merkle-Damgård構造）の衝突
 2004年Wangらにより発見• MD5(M1|M2) = MD5(M*1|M*2) を見つける攻撃手法を提示• 計算量：約239回 → 約230回で可能（ランダムなら264回必要）
衝突計算の差分イメージ

IV0

圧縮関数
IV1
圧縮関数
IV2

同じ値

M1

M*1

違う値

M2

M*2同じ値【参考】「MD5 considered harmful today」
での図表をベースに改編

IV0
圧縮関数
IV*1
圧縮関数
IV2

 2005年LenstraらによりX.509偽造証明書の作成成功• フォーマットが正しいだけでCA署名がついているのではない
20120705 沖縄ICTフォーラム201213

2005年のX.509偽造証明書例
公開鍵証明書1
X.509 version number
Serial number
Signature algorithm identifier
Issuer distinguished nameNot valid before
Not valid after
Subject distinguished namePublic key algorithm

Subject public key info

Version 3 extensions

Signature info

公開鍵証明書20x02 (X.509 version 3)
0x03507449
md5withRSAEncryption
CN = “Hash Collision CA”, L = “Eindhoven”, CN = “NL”
Feb. 1, 2005, 00h00m01s
Feb. 1, 2007, 00h00m01s
CN = “Hash Collision”, O = “we used a collision for MD5”, L = “Eindhoven”, C = “NL”
rsaEncryption
3082010A 02820101 00CAB9E7 42C4B626
3082010A 02820101 00CAB9E7 42C4B626871AB9A5 24846B05 C18895FB 9365E9A6871AB9A5 24846B05 C18895FB 1365E9A69F480392 FF2C3B3F 7941AD34 06FFADB49F480392 FF2C3B3F 7941AD34 06FFADB4034BDF84 7A4D3701 4FDB3283 CB19D46F
034BDF84 7A4DB701 4FDB3283 CB19D46F
A8A765C6 B3F016BF 306AFF7C 2E577368
A8A765C6 33F016BF 306AFF7C 2E577368
9B3319B8 1564ABE7 F5B9CF66 C5E4FE799B3319B8 1564ABE7 F5B9CF66 45E4FE790CEE047D 36CC77B0 AE5D087F 30B560EB
0CEE047D 36CC77B0 AE5D087F 30B560EB
8872B34D 40677866 2DD88464 677DBD9B
8872B34D 4067F865 2DD88464 677DBD9B
80989EF2 4FB82E0E A32B5864 AF33B8FE
80989EF2 CFB82E0E A32B5864 AF33B8FE
8659B094 464699F4 77A6BFCA 348C23CF
8659B094 464699F4 77A6BFCA 348C23CF
681EC0A8 46A8B27A 29071B56 3A1316B0681EC0A8 46A8B27A 29071B56 3A1316B05F3827B8 2FB1F9DE 1F238F3D 12AD0DDA
5F3827B8 2FB1F9DE 1F238F3D 12AD0DDA
A97DDBCF CEEAD109 395E46E0 18AE237C
A97DDBCF CEEAD109 395E46E0 18AE237C
E59355AC 93187228 4C3A293F E9117941
E59355AC 93187228 4C3A293F E9117941
A1AD5283 64A0687A FF6083B1 4B009DD9A1AD5283 64A0687A FF6083B1 4B009DD952C866CA 43A0F41A 7DCE5876 C16CB346
52C866CA 43A0F41A 7DCE5876 C16CB346
E9A71809 1CEC3D57 D9020301 0001
E9A71809 1CEC3D57 D9020301 0001
Basic constraints
1319E6FF 66EF8621 AEAE0CFB D2C067B9 9C3834C0 0BE88E0A 97E60205 BC5ECD85646B6698 BD2E9132 4826C8B1 0E2167EF F264C5E4 5A234FDE 5723A751 EA2B7913
06221B54 B4C20E4C D16562D6 98ADE4D6 33F053D6 53F8BE9C 4D402EC9 F92D3630
98DD5605 96F7BF09 5AF3C9FE D7EE2B49 21801800 3F5C65F0 511D454E 6E522913
2D0494B7 B65EF958 5AA9D433 094FDB4F 9C994610 AFE0F23F B26E5D24 6539AEFF
B6E0B0DF 35B4D9AE 3CF768C5 AABC9355 8DF87BF4 21288E79 E9ADCBB8 DA236452
8E74F813 48FFB9F5 FAC43E97 4F3D79CC A222FD67 5BFD3B80 8A3F6610 4232C806
A25309A1 87D103D7 50893436 D4A32909 FE5C76B4 5495F52F 29CF66A9 E3DD473F

20120705 沖縄ICTフォーラム2012

出典：「Colliding X.509 Certificates based on MD5-collisions」

差分イメージ14

かな～り精錬された攻撃に変化
 選択プレフィックス衝突：2007年Stevensらにより発見• 任意の(P,P*)に対しMD5(P|M1|M2)=MD5(P*|M*1|M*2)となる([M1,M2],[M*1,M*2])を見つける攻撃手法を提示

衝突計算の差分イメージ
IV0
圧縮関数
IV1
圧縮関数
IV2
圧縮関数

20120705 沖縄ICTフォーラム2012

IV3

同じ値

P

P*違う値

M1

M*1近い値

M2

M*2

同じ値

IV0

【参考】「MD5 considered harmful today」
での図表をベースに改編

圧縮関数
IV*1
圧縮関数
IV*2
圧縮関数
IV*315

かな～り精錬された攻撃に変化
 選択プレフィックス衝突• 制御不可のビットが存在＝衝突攻撃より制約条件が多い• 計算量：約252回・約6ヶ月@1200台PC
 X.509偽造証明書の例を改良• シリアルナンバーなどを変えた• CA署名がついているのではない
公開鍵証明書1
X.509 version number

0x02 (X.509 version 3)

Serial number

0x010C0001

公開鍵証明書20x020C0001

Signature algorithm identifier md5withRSAEncryption
Issuer distinguished nameNot valid before
Not valid after

CN = “Hash Collision CA”, L = “Eindhoven”, CN = “NL”
Jan. 1, 2006, 00h00m01s
Dec. 31, 2007, 23h59m59s

Subject distinguishednameCN = “Arjen K. Lenstra”,
O = “Collisionaris”,
L = “Eindhoven”, C = “NL”

Public key algorithm

rsaEncryption

Subject public key info

帳尻が合うような公開鍵情報

Version 3 extensions

Basic constraints

Signature info

同一の署名

20120705 沖縄ICTフォーラム2012

CN = “Marc Stevens”,
O = “Collision Factory”,
L = “Eindhoven”, C = “NL”

出典：「Target Collisions for MD5 and Colliding X.509 Certificates for Different Identities」

16

ついに本当の公開鍵証明書の偽造に成功
誘導されたら見破ることができないEE証明書が発行可能になった⇒ MD5を利用する公開鍵証明書発行を中止する契機にRoot CA“MD5 Considered Harmful Today-Creating a rogue CA certificate”
＠CCC 2008 (Chaos Communication Congress, 2008.12.30)

R-CA Certification
R-CA public key

R-CA sig
ブラウザに標準で入っている証明書

中間CA

R-CA Certification

A-CA Certification

R-CA Certification

X-CA Certification

R-CA public key

A-CA public key

R-CA public key

X-CA public key

R-CA sig
下位CA

出典：日経パソコンより

サーバ
証明書

R-CA sig

R-CA sig

R-CA Certification

A-CA Certification
X-CA

Shop Certification

R-CA public key

A-CA public key
X-CA

Shop public key

R-CA sig
20120705 沖縄ICTフォーラム2012

R-CA sig

R-CA sig

A-CA
X-CA sig

中間CA 偽造EE証明書を上位認証局から発行させるのに成功
17具体的にやったことは何か 選択プレフィックス衝突により中間CA EE証明書偽造• PにRoot CAをだますためのダミー情報、P*に公開鍵を含む偽造情報を入れる• ルートCAが決める「シリアルナンバー」「有効期限」が予測可• ブラウザが無視するコメント領域を利用• PS3 200台で約1日

MD5で
ハッシュ

上位CA

ダミー情報（CSR）

バージョン
シリアル番号
発行者情報
有効期限

バージョン
シリアル番号
発行者情報
有効期限

主体者情報

主体者
公開鍵情報
拡張フィールド
署名

ルートCA
が決定

予測

この部分を使って証明書申請
ルートCAが決定

主体者情報

攻撃者

偽造証明書

MD5でハッシュ値が一致

バージョン
シリアル番号
発行者情報
有効期限
主体者情報

攻撃者が設定する情報

拡張フィールド
主体者
公開鍵情報

署名と拡張フィールドを付け替え

20120705 沖縄ICTフォーラム2012

主体者公開鍵情報

衝突を起こすようにデータ操作

ブラウザが無視する
コメント領域
拡張フィールド
署名18具体的にやったことは何か

出典：「MD5 considered harmful today」

バージョン
シリアル番号バージョン
シリアル番号

発行者情報

発行者情報

有効期限

有効期限
主体者情報
主体者
公開鍵情報
(1024ビット鍵)

主体者情報

拡張フィールド

主体者
公開鍵情報（2048ビット鍵）

ブラウザが無視する
コメント領域衝突

20120705 沖縄ICTフォーラム2012

拡張フィールド

拡張フィールドの値

署名

署名の値
19

さて、本題・・・
Flameで起きていたこと一応お断り。
ここから先は色々なニュースソースをもとに神田が総合的に理解したことをベースにしています。
誤解しているところがあるかもしれません。
そのときは遠慮なく突っ込んでください。
20120705 沖縄ICTフォーラム201220

そもそも「Flame」って何？
 盗聴目的に特化した完全潜伏型のマルウェア• 2012年5月28日 イランCERT/CCから発表• 約1000台感染していた
少なくとも2010年2月には存在。5年前から存在していた可能性も• LAN/USB経由で感染・・・でも、自己増殖せず限定的な感染指示を受けての感染。自殺機能もあり

20120705 沖縄ICTフォーラム2012

出典: kaspersky Labs.
http://www.securelist.com/en/blog/208193522/The_Flame_Questions_and_Answers

21

そもそも「Flame」って何？
 Flameの特徴がすごい• マルウェアとしては非常に大きい・・・のに発見されなかった
20MBもある
複数のコンポーネントで構成• StuxnetやDuquとは兄弟的な関係
Stuxnetよりも20倍！も複雑 （by Kaspersky Lab.）
米国とイスラエルの国家的プロジェクト（＝サイバー兵器）か？？？

• 偽造公開鍵証明書を使ったコードサイニングがされていた
すでに知られている「MD5」に対するハッシュ衝突攻撃を利用問題は、「MD5のハッシュ衝突探索」に対する未知の探索手法が実在し、相当ハードルが高いはずの「マイクロソフトのＣＡ」下のPKIに入り込むことに実際に成功
偽造公開鍵証明書のトラストアンカーが「マイクロソフトのＣＡ」Windowsはマイクロソフトの承認を受けたコードと誤認

結果として Windows Update を利用して感染？
20120705 沖縄ICTフォーラム2012

22

「Flame」発覚後の経緯がもっとすごい・・・ 「Flame」が見つかった。「Stuxnet」などと比べてみよう• 5/28 イランCERT/CCが発表• 5/29 “Iran Confirms Attack by Virus That Collects Information” by
New York Times• 5/30 “Researchers Find Clues in Malware” by New York Times 実は（やっぱり？）アメリカからの攻撃だったんだよね– Olympic Games; Bush Initiativeの暴露• 6/1 “Obama Order Sped Up Wave of Cyberattacks Against Iran” by
New York Times• 6/5 “FBI Probes Leaks on Iran Cyberattack” by Wall Street Journal 「Flame」にMSのコードサイニングが悪用されていた• 6/3 “Microsoft certification authority signing certificats added
to the Untrusted Certificate Store” by Microsoft
20120705 沖縄ICTフォーラム201223

コードサイニング（コード署名）とは
 ソースコードにつけるコード作成者の電子署名
ソースコード

誰が本当に作ったのか確認できない。
中身が改変されていないことを確認できない。

ハッシュ関数を利用するチェックサム

チェックサムが信用できるのであれば（＝信用できるところにおかれているのであれば）中身が改変されていないことを確認できる。
誰でもチェックサムは作れる。

コードサイニング（コード署名）ソースコードの作成者と中身が改変されていないことを確認できる。
公開鍵証明書に対応する秘密鍵をもっている人にしか作れない。

20120705 沖縄ICTフォーラム201224署名検証を意識しないのはなぜ？
 実際にはOSが自動検証する• 「信頼されたルート証明機関」に登録された公開鍵証明書により判定6月4日に失効させた証明書
20120705 沖縄ICTフォーラム2012

25暗号技術としてはどのように見えていたか
Microsoft PKI

Microsoft RootAuthority

OK

Microsoft Enforced
Licensing Intermediate
PCA

最終的に“WuSetupV.exe”は“Microsoft Root Authority”が保証しました

OK
Microsoft Enforced
Licensing Registration
Authority CA

最終的に“MS”は“MicrosoftRoot Authority”が保証しました

Flame malware
in WuSetupV.exe

このソースコードは“MS”が保証しました

Microsoft UpdateやWindows Server Update
Services（WSUS）システムに対する中間者攻撃を行うとするように見えるモジュール
20120705 沖縄ICTフォーラム2012

Microsoft Windows
Verification PCA

OK

Windows Update
Files
最終的にWindows Update
Filesは“Microsoft RootAuthority”が保証しました

Microsoft LSRA PA

Terminal Server
Licensing ServiceOKMS

Terminal Services
License Server

OKUser License

WuSetupV.exe
26

なぜそんなことが起きたのか “Terminal Server Licensing Service”の本来の目的

は「企業管理用の下位PKI」を作るためのもの• 例えばリモートログイン用クライアント証明書などの発行
 事件発生の３大要因

コードサイニングの必要性があったのか• コードサイニング（コード署名）の権限がデフォルト付与
Microsoft LSRA PAから公開鍵証明書を発行してもらえさえすれば、（ハッシュの衝突を利用しなくても）Windows XP以前に対する不正なコードサイニングが可能
マイクロソフト自身、「使うのを止めろ」と警告していたのだが・・・• “MD5”を使い続けた“Microsoft Hydra X.509 extension”による防御が回避される原因• マイクロソフトを意味する“Microsoft Root Authority”がトラストアンカーになっていた

PKI運用上の完全なミス
どんなソースコードでも“Windows Update filesと同等の保証”を最終的にマイクロソフトが与えてしまう仕組み

20120705 沖縄ICTフォーラム201227具体的に起きたこと
 考え方は「中間CA 偽造EE証明書」の作成と同様
Microsoft LSRA PA
バージョン
シリアル番号

MD5でハッシュダミー情報（CSR）
バージョン
シリアル番号

予測

発行者情報
CN = “MicrosoftLSRA PA”

発行者情報
CN = “MicrosoftLSRA PA”

有効期限

有効期限

主体者情報
CN = “Terminal
Services License
Server”

主体者情報
CN = “Terminal
Services License
Server”

主体者
公開鍵情報

主体者
公開鍵情報

Attackers
MD5でのハッシュ値が一致
攻撃者が設定する
情報
衝突を起こすようにデータ操作

偽造証明書
バージョン
シリアル番号
発行者情報
CN = “MicrosoftLSRA PA”
有効期限
主体者情報
CN = “MS”
主体者
公開鍵情報（2048ビット鍵）

IssuerUniqueID（本来は廃止されたフィールド）拡張フィールドCRL Distribution Point
Authority Info. AccessHydra extensions

署名20120705 沖縄ICTフォーラム2012

Microsoft
LSRA PAが作成署名と拡張フィールド（の一部）を付け替え

拡張フィールドの値
CRL Distribution Point
Authority Info. AccessHydra extensions

署名の値28

具体的に起きたこと
 issuerUniqueIDフィールドの悪用• Crypto APIが無視するフィールドをハッシュの衝突に利用 MD5の悪用• ハッシュの衝突を利用することで、拡張フィールドが存在しない形にすることができた
 拡張フィールドでの「Hydra extension」のチェックが機能しなかった• Windows XP以前のOSについてはもともと未サポート• Windows Vista以降のOSでは拡張フィールドが使われる際には「Hydra extensionのチェック」が必須だが、拡張フィールド自体を使うかどうかは別問題
20120705 沖縄ICTフォーラム201229

マイクロソフトが取った対策
 セキュリティパッチの臨時配布• 3つの公開鍵証明書を失効（Security Advisory 2718704）
Microsoft Enforced Licensing Intermediate PCA (証明書 2 つ)Microsoft Enforced Licensing Registration Authority CA (SHA1)• 新しい公開鍵証明書を配布
Terminal Server Licensing Serviceで使う公開鍵証明書でSHA-1,SHA-2を利用するように変更
ルートCAを変更（Microsoft Root Authorityではなくなった）
コードサイニングの禁止• Windows Updateエージェントの強化（KB949104,
KB2720211）
新しい公開鍵証明書によってコードサイニングされたファイルのみを信用するように修正

20120705 沖縄ICTフォーラム201230

マイクロソフトが取った対策
Microsoft PKI

Independent
Root Authority

Microsoft RootAuthority(NEW) Microsoft
Enforced Licensing
Intermediate PCA(with SHA-1, SHA-2)(NEW) Microsoft Enforced
Licensing Registration
Authority CA(with SHA-1, SHA-2)

Microsoft LSRA PA(with SHA-1, SHA-2)(OLD) Microsoft
Enforced Licensing
Intermediate PCA(with MD5)

Microsoft Windows
Verification PCA(OLD ) Microsoft
Enforced Licensing
Registration Authority CA(with MD5)

Windows Update
Files

Microsoft LSRA PA(with MD5)

最終的にWindows Update
Filesは“Microsoft RootAuthority”が保証しました

Terminal Server
Licensing Service
Terminal Services
License Server(with SHA-1, SHA-2)
User License(with SHA-1, SHA-2)
20120705 沖縄ICTフォーラム2012

Terminal Services
License Server(with MD5)
User License(with MD5)31

マイクロソフトが取った対策
 セキュリティパッチの定例配布• Windows Vista SP2, Windows Server 2008 SP2,Windows 7, Windows Sever 2008 R2用に失効した証明書を自動で処理する更新プログラムを公開（KB2677070）
疑わしい公開鍵証明書を自動失効• （8月予定） 1024ビット未満の公開鍵証明書をブロック

20120705 沖縄ICTフォーラム201232

もっとも“普通なら”成功可能性はかなり低い シリアルナンバーの予測がかなり難しい• Microsoft LSRA PAが作るシリアルナンバーはミリ秒単位

発行番号[4バイト]
ブート後の経過時間（ミリ秒単位）[4バイト]
CAの識別番号 [固定2バイト]

 通信タイミングを合わせるのが難しい• ミリ秒単位で一致しないといけないので、システム負荷や通信タイミングのずれが無視できない
 大量のハッシュの衝突データを作らないといけない• 現在知られている衝突探索ツールでは追いつかない未知の探索手法を知っている？ 膨大な計算能力を持っている？
20120705 沖縄ICTフォーラム201233

ただ“サイバー兵器”ともなると話は別物か
 ＣＷＩによれば、少なくとも現在知られているハッシュ衝突探索手法を使ったのではない• 2010年には（現在でも知られていない）探索プログラムまで実際に完成していた可能性が高い• 同時期に異なる衝突探索手法が発見されたことを示唆• Microsoft LSRA PAへの不正アクセスの可能性もありうるが・・・ その場合、LSRA PAが発行する証明書フォーマットと違うことの説明がつかない New York Timesによれば、「Flame」は「Stuxnet –Olympic Games」とは異なる作戦だが、同時期のもの• 5年以上前から作戦遂行？・・・ Windows Vista以前ならここまで巧妙なことをする必要はなかったということは？？
• サイバー兵器の乱用は避けたい・・・実は「米国がサイバー兵器に一番脆弱かもしれない」という不安

20120705 沖縄ICTフォーラム2012

34

まとめに代えて今、この瞬間にも世界のどこかでサイバー兵器が使われている・・・かも 「理論上起こりうる」ことは「やっぱり起きる」• ゼロリスクはない。国家安全保障上の問題提起と捉えるべき
サイバー戦争・サイバー兵器はフィクションの世界の存在ではない
攻撃対象や目的は明確。目的達成のためなら“針の穴にも糸通す”
暗号アルゴリズム＝ MD5に問題

暗号の実装物＝ API処理に問題

暗号の運用管理＝ PKI構造に問題

サイバー兵器に“ロックオン”される可能性があるなら全てを疑え サイバー兵器は意図なくばら撒かれるものではない• 「無防備に巻き込まれる」事態は避けよう
直接対象となるのは例外的。ただ“予定外動作”には注意• （安直かもしれないが）せめてセキュリティパッチを当ててね
セキュリティパッチは既知のリスクを下げる役割。模倣攻撃の防止
20120705 沖縄ICTフォーラム2012

35