National Institute of Advanced Industrial Science and Technology

サイバーエスピオナージとTPM
イバ
ピオジと
須崎有康 Kuniyasu Suzaki
独立行政法人産業技術総合研究所 (AIST)
Research Institute
セキュアシステム研究部門 (RISEC)
for Secure SystemsyTCG日本支部(JRF)第6回公開セキュリティーワークショップ
3/December/2014
http://www.trustedcomputinggroup.org/jp/jrfworkshop/workshop6

National Institute of Advanced Industrial Science and Technology

Who am I?
独立行政法人 産業技術総合研究所
セキュアシステム研究部門 @茨城県つくば市のコンピュータセキュリティ研究者

Research Institutefor Secure Systems• 最近の仕事 https://staff.aist.go.jp/k.suzaki/– 仮想化を使ったセキュリティの強化や脆弱性の研究– 制御システム用ホワイトリスト制御技術– KNOPPIX日本語版のメンテナンス• KNOPPIX Trusted Computing Geeks も作りました2

National Institute of Advanced Industrial Science and Technology

アウトライン• モバイルガジェットの高性能デバイスを使ったサイバ
バイ ガジ ト 高性能デバイ を使 たサイバーエスピオナージ(電子的諜報活動)• デバイスを認識させないハイバーバイザー
DeviceDisEanbler– TPMによる暗号鍵管理• DeviceDisEanblerを展開させるための条件を展開さ る条件
ポルトガル語のプログラム

元にな た発表元になった発表
BlackHat Sao Paulo 2014
“DeviceDisEnabler: alightweightgg hypervisorypwhich
hides devices to protect cyberespionage and tampering”

3National Institute of Advanced Industrial Science and Technology

モバイルガジェットにどれくらいのデバ
モバイルガジットにどれくらいのデバ
イスが入っているか知ってますか？
•
•
•
•
•
•

マイクとスピーカ
デジタルカメラGPS
ジ イ
ジャイロスコーププ
その他、多様なセンサー
これらのデバイスが入ったのはそれほど昔ではない。
れ
デバ
が
れ ど昔
な
– 2000年前後のPDA(携帯情報端末。例 Palm Pilot, Apple Newton)と呼ばれるものにはこのようなデバイスがないものが多かった 初期のiPadにもれるものにはこのようなデバイスがないものが多かった。初期のiPadにもカメラが無かった。

• 現在のモバイルガジェットは従来のコンピュータと言うより、センサーデバイスの塊になっている。
4

National Institute of Advanced Industrial Science and Technology

デバイスの性能を知 てますか？
デバイスの性能を知ってますか？
• マイク、スピ
マイク スピーカカ– CD クオリティ (44.1kHz)以上• デジタルカメラ– 100M pixel以上• GPS– 10m以内の位置検出• ジャイロスコープ– 20 Hz以上のサンプリング• 高性能デバイスはサイバ
高性能デバイスはサイバーエスピオナージ(諜エスピオナ ジ(諜報活動)の格好のターゲット。

5

National Institute of Advanced Industrial Science and Technology

Facial Reflection
Keylogger[T.Fiebig, WOOT’14]
このカメラが顔（目）の写真を撮ります。

ズーム

親指検出

キーボードをマップ

T.fiebig, j.krissler and r.hanesch, “Security Impact of High Resolution Smartphone Cameras" woot 2014.
https://www.usenix.org/conference/woot14/workshop-program/presentation/fiebig

6National Institute of Advanced Industrial Science and Technology

ジャイロスコ プによる盗聴
ジャイロスコープによる盗聴• Gyrophone
G rophone [USENIX SecurityS
it 14,
14 BlackHat
Bl kH t EuropeE14] はジャイロスコープで音声の解析ができることを示した。
– 利点: マイクの使用には許可を取る必要があるが、ジャイロ
マイクの使用には許可を取る必要があるが ジャイロ
スコープは必要なし。
– 問題点：ジャイロスコ
問題点：ジャイロスコープのサンプリングはプのサンプリングは 20-200Hzで音声(male 85 - 180 Hz, female 165 - 255 Hz)が取れない。
– エイリアシングによって音声が解析できることを示した。
イリアシングによって音声が解析できることを示した。

Y.Michalevsky, D.Boneh, and Gabi Nakibly, “Gyrophone: Recognizing Speech from Gyroscope Signals”,
https://www.usenix.org/conference/usenixsecurity14/technical-sessions/presentation/michalevsky

7National Institute of Advanced Industrial Science and Technology

モバイルガジ トの活用シナリオ
モバイルガジェットの活用シナリオ• モバイルガジェットは重要情報を扱う工場、会議、病院
モバイルガジェットは重要情報を扱う工場 会議 病院
で広く使われるようになった。
• 管理者は仕事で使うモバイルガジェットで不要なデバイ
管理者は仕事で使うモバイルガジ ットで不要なデバイスを利用禁止にしたい。

工場

リモートミーティング
8

National Institute of Advanced Industrial Science and Technology

その他の脅威• モバイルガジェットのデバイスは攻撃者ばかりでなく、ユモバイルガジェットのデバイスは攻撃者ばかりでなく ユーザ（社員）も使いたい！
• ユーザ(社員)が対応策を回避するかもしれない。
• 管理者は攻撃者ばかりでなく、ユーザも対象として対策
管理者は攻撃者ばかりでなく、ザも対象として対策技術を考えなくてはならない。

9

National Institute of Advanced Industrial Science and Technology

現在の対応策•BIOS/EFI によってデバイスを使用不可にするによ てデバイスを使用不可にする– 有効だが、全てのモバイルガジェットで有効なわけではない。

• セキュリティグッズ
プロテクションキャップ
テクシ ンキャッセキュリティシール(カメラ用)

これらはユーザの良心に依存。
10National Institute of Advanced Industrial Science and Technology

提案する対策方法• “DeviceDisEnabler“D i Di E bl (DDE)”(DDE)”: サイバーエスピオナー
サイバ エスピオナ
ジと改竄を防止する軽量ハイパーバイザー

特徴
1 多くのモバイルガジェットに適用とするため、軽量で
1.
既存OSに挿入可能なハイパーバイザー
2 OSからデバイスを隠蔽
2.
3. 改竄防止• ハードディスクの一部をDDEが暗号化するので、
ドデ
部を
が暗
す
DDEなしではOSを立ち上げることが出来ない。
• 暗号鍵はユーザから隠蔽されている。
11

National Institute of Advanced Industrial Science and Technology

挿入可能なハイパ バイザ
挿入可能なハイパーバイザー• 軽量のタイプI (ベアメタル) ハイパーバイザー– パラパススルーアーキテクチャ(BitVisor[VEE
パラパススルーアーキテクチャ(BitVisor[VEE’09])
09])• デバイスモデルが無く、ゲストOSがデバイスに直接アクセスできる– 小さなトラステッドコンピュ
小さなトラステッドコンピューティングベース(TCB)
ティングベ ス(TCB)• HostOS 無しはTCBを小さくできる• DDE はブ
はブートローダのチェインロードを使ったOSの起動前に挿入さトロ ダのチェインロ ドを使ったOSの起動前に挿入される
既存のシステム

BIOS
Go back to GRUB

アプリケーション
プレインストール
プレインストルOS
DeviceDisEnabler(hypervisor)

Insert at boot time

ハードウェアGRUB

D
DeviceDisEnabler
i Di E bl(resides in memory)
chain loader

NTLDR(Windows Bootloader)

Windows

National Institute of Advanced Industrial Science and Technology(2) PCIデバイスの隠蔽• モバイルガジェットには多くのPCIデバイスがある(ThinkPad Helix)• Tool: PCI-Z– http://www.pci-z.com/
http://www pci z com/13

Device classes

National Institute of Advanced Industrial Science and Technology

OSがPCI上のデバイスを認識する仕組み
が上のデバイスを認識する仕組み• OS がPCIバス上のデバイスを認識するには、“PCI
configurationg
Register”の情報を使う。
g– これにはベンダーID, デバイスID, デバイスクラス, メモリマッ
プアドレスなどの情報含む。
• ベンダーID はPCI-SIGによって定義されている

14

National Institute of Advanced Industrial Science and Technology

PCI Configuration Register• I/O pport: 0x0cfc
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Device ID
Vendor ID
Device Status
Device Control
Class Code
Revision ID
Header Type
Base Address 0
Base Address 1
Base Address 2
Base Address 3
Base Address 4
Base Address 5
Subsystem ID

Subsystem Vendor ID
Reserved
Reserved
Interrupt
p Pin
Undefined

Interrupt
p Line

0x00
0x04
0x08
0x0c
0x10
0x14
0x18
0x1c
0x20
0x24
0x28
0x2c
0x30
0x34
0x38
0x3c
0x40
～
0xfc 15

National Institute of Advanced Industrial Science and Technology

通常のOSによるデバイス認識• PCIバス上のデバイスを知る為に、OSはI/Oポートをスキャンする。
• x86/AMD64アーキテクチャCPU ではI/O 命令 (i.e., IN and OUT)
を使ってI/Oポートにアクセスする。
– VendorID,
V d ID D
DeviceIDが”#FFFF”の場合はデバイスが無いことを示す。
i IDが”#FFFF”の場合はデバイスが無いことを示す

OS
Visible devices from OS

Vendor ID #8086
Device ID #0013
CPU

Mem

Disk

LAN

Invisible devices from OS
OS recognizes no device.

#0101
#0024

#04A9
#5031

#1033
#7623

#FFFFF#FFFFF

Video
Card

C
CameraGPS???

PCI Configuration Register

16

National Institute of Advanced Industrial Science and Technology

DDEによるデバイス隠蔽•••

I/O命令がOSから呼び出されるとIntel/AMDの仮想化アーキテクチャにより、ハイパ バイザ (DDE)に制御が移る。
パーバイザー(DDE)に制御が移る。
DDEはPCI configuration Registerの内容を検査してOSから隠すべきデバイスと認識した場合、VendorID とDeviceID に#FFFFを返す。
OS はPCIバスにデバイスが無いものと認識し、そのデバイスは使われない。
はバ
デバイ が無 も と認識 そ デバイ は使われな
OS
Visible devices
from OS
Vendor ID #8086
Device ID #0013

Hypervisor
DeviceDisEnabler

Invisible devices
from OS

#0101
#0024

#FFFF
#FFFF

#FFFF
#FFFF

#0101
#0024

#04A9
#5031

#1033
#7623

Video
Card

CameraDecryption
yp
Vendor ID #8086
Device ID #0013
CPU

Mem

Encrypted
Disk

LAN

GPS

PCI Configuration Regitser

17

National Institute of Advanced Industrial Science and Technology

DDEによるデバイス隠蔽• DDEは2種類のタイプでデバイスを隠蔽できる– デバイス種類 (Vendor(V d ID anddD
Devicei ID)• 個々のデバイスでなく、ベンダーのこの製品という単位– カテゴリ毎 (PCI device class codeの定義による)
Vendor ID

Vendor name0x05acApple, Inc.

0x04B3IBM

0 10100x1010

Vid Logic
Video
L i Ltd.
Ltd

0x104D

Sony Corporation

0x10618x8 Inc.

0x106BApple Inc.

0 13B50x13B5

ARM L
Ltd
d

0x12E1

Nintendo Co. Ltd.

0x13B5

ARM Ltd

0x15AD

VMware Inc.

0x15C6

Technical
h i l Universityii Off Budapestd0x8086

Intel Corporation

0x8087Intel

0xA304Sony

0xF5F5F5 Networks Inc.

Class code
0x00
0x01
0x02
0 03
0x03
0x04
0x05
0x06
0x07
0x08
0x09
0x0a
0x0b
0x0c
0x0d
0x0e
0x0f
0x10
0x11
0x12
0x13
0xff

Class Name
Unclassified device
Mass storage controller
Network controller
Di l controller
Displayt llMultimedia controller
Memory controller
BridgeCommunication controller
Generic system peripheral
Input device controller
Docking station
Processor
Serial bus controller
Wireless controller
Intelligent controller
Satellite communications controller
Encryption controller
Signal processing controller
Processing accelerators
Non-Essential Instrumentation
Unassigned class18

National Institute of Advanced Industrial Science and Technology(3) 改竄防止
• 残念ながらユーザがハイパーバイザーを取り除いて、残念ながらユ ザがハイパ バイザ を取り除いてあるいは改竄して、デバイスを使う可能性を排除できない。
• DDEの対応策– DDEはディスクの一部を暗号化し、DDE無しではOSが起動できないようにしたい。

• 問題点– 残念ながらOS(Windows)の起動を止めるのは簡単ではない。
19

National Institute of Advanced Industrial Science and Technology

OSのブ トを止める困難点
OSのブートを止める困難点• BitVisor はハはハードディスクの領域(blocks)を暗号化する
ドディスクの領域(blocks)を暗号化する機能を持っている。
– ディスクが盗まれた場合の機密保持には有効• 残念ながら、BitVisorのディスク暗号化機能をそのままOS(Windows) のパのパーティションに適用できない
ティションに適用できない。なぜな
なぜならブートシーケンス内でハイパーバイザーを経ないでア
クセスしている。
クセスしている– 推測：Kennelを立ち上げるブートシーケンスのどこがでBIOSを使ったディスクアクセスがあり それをBitVisorが補足できない使ったディスクアクセスがあり、それをBitVisorが補足できない– このため、パーティション丸毎の暗号化ではOSを起動できない– （補足）LinuxならminirootとRootFSのパ（補足）LinuxならminirootとRootFSのパーティションを分けてティションを分けて、RootFSのみ暗号化することで解決できる。
20

National Institute of Advanced Industrial Science and Technology

Windowsの起動の止め方• カ
カーネルの起動を止めるのでなくネルの起動を止めるのでなく、カカーネルの起動後ネルの起動後のユーザ空間の処理を止める。
• OSのユーザ空間のブートシーケンスを解析して、起OSのユ ザ空間のブ トシ ケンスを解析して 起動に必要なファイルのいずれかを暗号化する。
• 今回はsmss.exeを選択
今回は
を選択

21

National Institute of Advanced Industrial Science and Technology

DDEによるWindows起動の停止
OS起動で使われるファイルが暗号化されているためにOSが起動できない。
めにOSが起動できないOS

DDEを回避するとDDEを回避すると…
ハイパーバイザー
DeviceDisEnabler

復号

File used forbootingsmss.exe

This file isencrypted by
DDE.

File used forbootingsmss.exe

This file isencrypted by
DDE.

22

National Institute of Advanced Industrial Science and Technology

暗号鍵の隠蔽
• DDEの暗号鍵はユーザに知られてはならない。
DDEの暗号鍵は
ザに知られてはならない。
• BitVisor では暗号鍵をただ単にバイナリに含ませるだけ。
だけ– これでは、攻撃者は簡単にバイナリを比較することで鍵を取りだすことができる。
取りだすことができる• セキュリティチップTPM (Trusted Platform Module)に鍵を隠す方法を実装した。
– “Trusted“T t d Boot”
B t”と“TPM non-volatilel til storage”
t
”の活用

23

National Institute of Advanced Industrial Science and Technology

TPMに鍵を隠蔽する方法 (1/3)• TPMを基軸とするTrusted Bootはブートシーケンスを計測し、それの完全性を検証する仕組みを持つ(Ch i off Trust)。
の完全性を検証する仕組みを持つ(Chain
T )– 各ブートシーケンスのSHA-1値は、“extend” 操作でTPMのPCR(Platform Configuration
Config ration Register) に保存される。
に保存される• PCR=SHA-1(PCR + SHA-1(Component))– PCRの値からどのようなブPCRの値からどのようなブートシーケンスを行ったか検証可能
トシ ケンスを行ったか検証可能。
Peripherals
I t it M
Integrity
Measurementt

CRTM

Each PCR represents
category of action.

TCG‐BIOS

OptionROMs
Boot Loader(TrustedBRUB)

Hypervisor
(DDE)

OS

TPM
PCR0
…
PCR23

Storing SHA‐1
value
l to
t PCR

KEY

Root of Trust

Extracting a disk
encryption key from TPM
at certain PCR’s values.

24National Institute of Advanced Industrial Science and Technology

TPMに鍵を隠蔽する方法 (2/3)• Chain of Trustを維持するためには各コンポーネントが次のコンポーネント計測する機能が必要。
ネント計測する機能が必要– BIOSはTCG-BIOS– ブートローダはTrusted
ブ ト
ダは
GRUB

Peripherals
I t it M
Integrity
Measurementt

CRTM

Each PCR represents
category of action.

TCG‐BIOS

OptionROMs
Boot Loader(TrustedBRUB)

Hypervisor
(DDE)

OS

TPM
PCR0
…
PCR23

Storing SHA‐1
value
l to
t PCR

KEY

Root of Trust

Extracting a disk
encryption key from TPM
at certain PCR’s values.

25National Institute of Advanced Industrial Science and Technology

TPMに鍵を隠蔽する方法 (3/3)• 暗号鍵はTPM内に保存することが可能。その鍵は特定のPCR値のみに取り出せるように設定できる。
– PCR値が変化すれば(DDEが改竄されれば)、 PCR値が異なり、暗号鍵を取りだすことが出来ない。

• これによりユーザはDDEを使わざるを得えない。
Peripherals
I t it M
Integrity
Measurementt

CRTM

Each PCR represents
category of action.

TCG‐BIOS

OptionROMs
Boot Loader(TrustedBRUB)

Hypervisor
(DDE)

OS

TPM
PCR0
…
PCR23

Storing SHA‐1
value
l to
t PCR

KEY

Root of Trust

Extracting a disk
encryption key from TPM
at certain PCR’s values.

26

National Institute of Advanced Industrial Science and Technology

Chain of Trust• ThinkPad HelixでのブHelixでのブートシーケンス
トシ ケンス– 起動で使われるデバイスやソフトウェアは TPMに記録される• PCR=SHA-1(PCR + SHA-1(Component))
PCR↓

各PCR はそれぞれが担当する計測値を保持

SHA1
↓

Event
↓

0 4b81c044c1472a34c73da87d7ad3a64ba62e9047 08 [S-CRTM Version]
6 fcad787f7771637d659638d92b5eee9385b3d7b9 05 [Wake Event 6]
0 8841e9e7d8eb4c753d2ef7dc9f89a07c756cb30b 07 [S-CRTM Contents]
0 3d9766e45814d6374d9a85aa519071dc82574017 01 [POST CODE]
1 b83f6c64a1727add477a94874f3f11f29d531c47 09 [CPU Microcode]
4 9069ca78e7450a285173431b3e52c5c25299e473 04 []2 199804c152f10535cd88f8f5d607ae55e9e2f3ef 06 [Option ROM]
5 cd0fdb4531a6ec41be2753ba042637d6e5f7f256 80000007 []0 afbf30b554a35d0ba6a469934d35cf9f58eec6af 80000009 []1 8de522ea7b732f0bf261ed931245c5c7e75fedbb 80000009 []0 9069ca78e7450a285173431b3e52c5c25299e473 04 []1 9069ca78e7450a285173431b3e52c5c25299e473 04 []2 9069ca78e7450a285173431b3e52c5c25299e473 04 []3 90699069ca78e7450a285173431b3e52c5c25299e473
78 7450 285173431b3 52 5 25299 473 04 []5 9069ca78e7450a285173431b3e52c5c25299e473 04 []6 9069ca78e7450a285173431b3e52c5c25299e473 04 []7 9069ca78e7450a285173431b3e52c5c25299e473 04 []1 1f3c97f0b6d45a46ec1aa91e5868322dea94d76c 80000002 []4 c1e25c3f6b0dc78d57296aa2870ca6f782ccf80f 05 [Calling INT 19h]
4 d564bb707b030e193fdd3ddae8818703225c49c3 05 [Booting BCV Hard
Disk]
4 f2e7a20ef1397308f937841b55040905ff7cabca 0d [IPL]
5 c358aaa78d400ad539f90d542e5519aa4e403714 0e [IPL Partition Data]
4 e479a239ff8d17b2391782a86e19ca873ec6536c 0d [IPL]27

National Institute of Advanced Industrial Science and Technology

TPM non-volatile
non volatile storage• TPM はは“TPM
TPM nonnon-volatile
volatile storage
storage”とと 呼ぶストレ呼ぶストレージシ
ジシ
ステムがあり、特定のPCR値の時にのみデータが取り出せる。
• DDEの暗号鍵をTPM non-volatile storageに保存して、DDEの改竄を防ぐ。
DDEの改竄を防ぐ– DDEが改竄されるとPCR値が異なり、鍵が取り出せない。
• Reference– TPM M
Main
i P
Part 3 C
Commands,
d S
Specification
ifi i V
Versioni 11.2,2 L
Levell 2 Revision
R ii116, 1 March 2011
http://www.trustedcomputinggroup.org/files/static_page_files/72C33D71-1A4B-B294-D02C7DF86630BE7C/TPM_Main-Part_3_Commands_v1.2_rev116_01032011.pdf

28

National Institute of Advanced Industrial Science and Technology

TPM non-volatilel til storageのインターフェイスtのインタ フ イス• TPM non-volatile storageへは TCG-BIOSが提供する
APIによってアクセスできる。
API of TCG BIOS

Description

TPM NV DefineSpace
TPM_NV_DefineSpace•TPM nonnon-volatile
volatile storageの領域を確保するAPI•領域へのアクセスは“index” 番号を通して行う•特定PCR値の時のみにアクセスできるように制限可能

TPM NV W it V l
TPM_NV_WriteValue•TPM
TPM non-volatilel til storageにデータを書き込むAPItにデ タを書き込むAPI•登録したPCR値の時のみアクセスできる。

TPM NV R dV l
TPM_NV_ReadValue•TPM
TPM non-volatilel il storageにデータを読み出すAPIにデ タを読み出すAPI•登録したPCR値の時のみアクセスできる。

29

National Institute of Advanced Industrial Science and Technology

TPM non-volatile
non volatile storageの具体例• Index番号によってアクセス可能• この領域へはPCR[0-7,12-14]
の領域 は
が特定値（
が特定値（ハッシュ値）の時のみ
シ 値）の時のみアクセス可能。
On ThinkPad Helix# tpm_nvinfo
NVRAM index : 0x00010016 (65558)
PCR read selection:
PCRs to verify
PCRs : 0, 1, 2, 3, 4, 5, 6, 7, 12, 13, 14
Localities : 0x7
Hash : bcea2524269cafd359d69caa850e209481feeec4
PCR write selection:
PCRs to verify
PCRs : 0, 1, 2, 3, 4, 5, 6, 7, 12, 13, 14
Localities : 0x7
Hash : bcea2524269cafd359d69caa850e209481feeec4
Permissions : 0x00000000 ()bReadSTClear : FALSE
bWriteSTClear : FALSE
bWriteDefine : FALSE
Size: 32 (0x20)

Hash of valuesof PCRs

Hash of valuesof PCRs

30

National Institute of Advanced Industrial Science and Technology

PCRの具体例
On ThinkPad Helix
Trusted GRUB はPCR[12-14]を利用
Original DDE

TPM non-volatile storageから鍵を取り出すにはPCR[0-7,[ , 12-14]を使う。
]
PCR[0-7] はTrusted GRUB以前のブー
トシーケンスを検証するのに使う。
検使
DDEが改変されるとPCR[12-14] が変わり 鍵が取り出せない。
り、鍵が取り出せない。

PCR-00:PCR
00: 27 CD 64 2F DA 95 EA 09 3B 8C AE BC 68 9F FA C7
2A 59 76 01
PCR-01: E2 60 C4 57 A9 DC 8B C1 3C 5D E8 23 9F 2B 6B 71
86 19 72 19
PCR-02: F2 E5 65 2A DC 7F 57 8A F0 89 9D F1 0F 6B AE A1
13 08 19 E2
PCR-03: B2 A8 3B 0E BF 2F 83 74 29 9A 5B 2B DF C3 1E A955 AD 72 36
PCR-04: AA C6 8F 43 8F 5C 23 4E BD 70 F7 46 7D 51 18 4E
BD A3 CA 55
PCR-05: 01 C2 F5 26 13 11 B9 6F 4B BF A4 39 14 AC CA 6B
CD A2 65 41
PCR-06: EE 1B 0F 99 7D 75 17 B2 86 BC 9D 73 A4 CF 74 2C
65 A7 69 BE
PCR-07: B2 A8 3B 0E BF 2F 83 74 29 9A 5B 2B DF C3 1E A955 AD 72 36
PCR-08: 93 41 C4 1A 6D EA 42 08 65 16 B8 4B AF AF 48 3C
CD 96 36 91
PCR-09: 1B 60 78 EA 42 8E FA 3A 2A D2 A9 7E 22 04 90 7C
1A E6 33 A9
PCR-10: 3D C7 DF C4 CB B0 EC D3 9F B2 75 14 4B 41 E0 42
52 AF C1 17
PCR-11: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00
PCR-12: 98 CB C3 5A 43 22 54 CB CB DD E6 04 30 B1 89 D9
54 E4 E7 F8PCR-13: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00
31
PCR-14: FB 17 F0 8C C8 E0 1F D6 8B 96 62 14 63 54 70 A4

National Institute of Advanced Industrial Science and Technology

鍵取り出しの失敗例• DDE が改変されるとTPM non-volatile
non olatile storageから暗号化鍵が取り出せない。

32

National Institute of Advanced Industrial Science and Technology

現状の動作環境• DDE は下記の条件のノートPC、タブレットで動作可能は下記の条件のノ トPC タブレットで動作可能– x86/ADM64 CPU– TPM 11.2
2
– TCG BIOS (EFIは非対応)– PCI デバイスのみ制御可能– OS 非依存(動作確認はWindows
非依存 動作確認
7,8,Linuxで行った)
行 た33

National Institute of Advanced Industrial Science and Technology

対応モバイルガジェットの拡大計画• 要点はTPMとTCG-BIOS
要点はTPMとTCG BIOS
– TPMの対応• atomt
CPUを使ったモバイルガジェットにはTPMが付いているものがCPUを使 たモバイルガジ ットにはTPMが付いているものが少ない。
• ARM CPUを使ったモバイルガジェットにはTPMが付いているものが少ない。
– 例外：Samsung Chromebook2ではTPMが付いている。

– TCG-BIOS
TCG BIOS• MS Surface はTPMが付いているが、起動がEFIのみなので未対応。

34

National Institute of Advanced Industrial Science and Technology

ビデオデモ• 3つのブート
3つのブ ト– Windows8のスタンドアローンブート• smss.exe がDDEよって復号されないのでブートが失敗する。
ブ– Customized DDE• 暗号鍵が取得できないのでブートが失敗する。
暗号鍵が取得できないのでブ トが失敗する– DDE起動後のWindows8の起動• 正しくブート！
正しくブ ト！

Just Fun!!
35

National Institute of Advanced Industrial Science and Technology

Trusted GRUB has 3 boot options•••

Windows 8
Hacked DDE ((Customized DeviceDisEnabler))
DDE

36

National Institute of Advanced Industrial Science and Technology

まとめ• モバイルガジェットの高解像度デバイスはサイバーエ
スピオナージ（諜報活動）で使われる危険性がある。
– 管理者はこれらの不要なデバイスを職場で禁止したい。

• デバイスをOSから隠蔽する軽量ハイパーバイザー“DeviceDisEnabler”を提案した。
• DeviceDisEnabler はTPMを活用した改竄防止機能を含んでおり、ユ ザからの回避を防ぐ。
含んでおり、ユーザからの回避を防ぐ。
• 今後の予定– EFI boot対応。(Microsoft Surfaceでの活用)– USBデバイス隠蔽
デバ蔽– ARM対応37

National Institute of Advanced Industrial Science and Technology

Special Thanks• 八木都志樹 Toshiki Yagi,
Yagi AIST• 吉本道隆 Michitaka Yoshimoto, AIST• 古原和邦 Kazukuni Kobara, AIST
• BitVisorの開発者の皆様– http://www.bitvisor.org/
http://www bitvisor org/

38

National Institute of Advanced Industrial Science and Technology

39National Institute of Advanced Industrial Science and Technology

これらのデバイスが何か問題でも？
• Yes!
• 高性能デバイスはサイバーエスピオナージ(諜報活動 格好 タ ゲ ト
報活動)の格好のターゲット。
– 既に幾つかの事例や研究結果がある。
幾
究 果

40

National Institute of Advanced Industrial Science and Technology

マイクを使った盗聴• 報道によるとマルウェア “Bundestrojaner”“B ndestrojaner” (連邦トロジ
ャン)が空港で税関・出入国管理を通過する際にインスト ルされた
トールされた。
– 連邦トロジャンはコードの中にあった「C3PO-r2d2-POE」というストリングから「R2D2」も呼ばれる。
うストリングから「R2D2」も呼ばれる• 連邦トロジャンはSkypeの通話を盗聴し、リモートのサ
イトにデ タを転送していた
イトにデータを転送していた。
• 連邦トロジャンはChaos Computer Club (CCC) によって2011年に発見。
年 発見– WikiLeaksによるとドイツの州政府からの発注。
41

National Institute of Advanced Industrial Science and Technology

GPSによる悪意あるトラッキング• 日本の「カレログ」が有名だが、海外では“Cerberus”
日本の「カレログ」が有名だが 海外では“Cerber s” や
“mSpy” が堂々と販売されている。
– カレログはGPSコントロールマネージャとして販売。社会問題にカレログはGPS ントロ ルマネ ジャとして販売 社会問題になり、サービスを停止。

42

National Institute of Advanced Industrial Science and Technology

Current Countermeasures•

BIOS/EFI によってデバイスを使用不可にするによ てデバイスを使用不可にする– 有効だが、全てのモバイルガジェットで有効なわけではない。

• Samsung KNOX はデバイスを使用不可に出来るが、Samsung’s Androidのみ。
• セキュリティグッズ
プロテクションキャップ
テクシ ンキャッセキュリティシール(カメラ用)

これらはユーザの良心に依存。
43

National Institute of Advanced Industrial Science and Technology

OSのブ トを止める困難点
OSのブートを止める困難点• BitVisor はハはハードディスクの領域(blocks)を暗号化する
ドディスクの領域(blocks)を暗号化する機能を持っている。
– ディスクが盗まれた場合の機密保持には有効• 残念ながら、BitVisorのディスク暗号化機能をそのままOS(Windows) のパのパーティションに適用できない
ティションに適用できない。なぜな
なぜならブートシーケンスでハイパーバイザーを経ないでアクセスしている。
セスしている– 推測：Kennelを立ち上げるブートシーケンスのどこがでBIOSを使ったディスクアクセスがあり それをBitVisorが補足できない使ったディスクアクセスがあり、それをBitVisorが補足できない– このため、パーティション丸毎の暗号化ではOSを起動できない– （補足）LinuxならminirootとRootFSのパ（補足）LinuxならminirootとRootFSのパーティションを分けてティションを分けて、RootFSのみ暗号化することで解決できる。
44

National Institute of Advanced Industrial Science and Technology• ARM仮想化拡張機能– ARM Architecture Virtualization ExtensionおよびLarge
Physical Address Extension（LPAE）は、ARMアーキテクチ
Extension（LPAE）は ARMアーキテクチ
ャ準拠のプロセッサ向け仮想マシン ハイパーバイザ• ARMv7A virtualization extensions• ARM Cortex A15 processor– ハイパーバイザー用のHYP
パ バ ザ
Mode。

45