軽量な仮想マシンを用いたIoT機器の安全な監視

Slides:



Advertisements
Similar presentations
九州工業大学 塩田裕司 光来健一.  仮想マシンは必要なときだけ動かす使い方が一般 的 ◦ 一台の計算機上に複数の計算機を仮想的に作成できる ◦ デスクトップ  異なる OS を使用するため作成 ◦ サーバ  最大負荷に合わせた数の仮想マシンを作成  長期間使わない仮想マシンも存在する VM.
Advertisements

九州工業大学大学院 情報工学府 情報創成工学専攻 塩田裕司.  仮想マシン( VM )は必要なときだけ動かすこと が多い ◦ クラウドでもデスクトップでも ◦ 長期間使わない VM が存在する  VM の再開時に攻撃を受ける可能性が高くなる ◦ 停止中に OS やアプリケーションの脆弱性が発見されるこ.
ファイルキャッシュを考慮したディスク監視のオフロード
セキュリティ機構のオフロードを考慮した仮想マシンへの動的メモリ割当
榮樂 英樹 LilyVM と仮想化技術 榮樂 英樹
クラウド上の仮想マシンの安全なリモート監視機構
クラウドにおける ネストした仮想化を用いた 安全な帯域外リモート管理
Xenを用いたクラウドコンピュー ティングにおける情報漏洩の防止
IaaS 仮想マシン(VM)をネットワーク経由で提供 負荷に応じてVM数や性能を変更できる ハードウェアの導入・管理・維持コストの削減
中村孝介(九州工業大学) 光来健一(九州工業大学/JST CREST)
KVMにおけるIDSオフロードのための仮想マシン監視機構
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
ファイルシステムキャッシュを 考慮した仮想マシン監視機構
メモリ暗号化による Android端末の盗難対策
仮想計算機を用いたファイルアクセス制御の二重化
OSが乗っ取られた場合にも機能するファイルアクセス制御システム
侵入検知システム(IDS) 停止 IDS サーバへの不正アクセスが増加している
XenによるゲストOSの解析に 基づくパケットフィルタリング
クラウドにおけるアプリケーション単位での VM構成の動的最適化
帯域外リモート管理を継続可能な マイグレーション手法
大きな仮想マシンの 複数ホストへのマイグレーション
ファイルシステムキャッシュを 考慮したIDSオフロード
ネストした仮想化を用いた VMの安全な帯域外リモート管理
帯域外リモート管理の継続を 実現可能なVMマイグレーション手法
VMマイグレーションを可能にするIDSオフロード機構
IaaS型クラウドにおける キーボード入力情報漏洩の防止
クラウドの内部攻撃者に対する安全なリモートVM監視機構
アスペクト指向プログラミングを用いたIDSオフロード
サスペンドした仮想マシンの オフラインアップデート
KVMにおける仮想マシンの 内部監視機構の実装と性能評価
7. セキュリティネットワーク (ファイアウォール)
Xenによる ゲストOSの監視に基づく パケットフィルタリング
セキュリティ機構のオフロードを考慮した 仮想マシンのスケジューリング
分散IDSの実行環境の分離 による安全性の向上
VMのメモリ暗号化によるクラウド管理者への情報漏洩の防止
VMのメモリ暗号化による クラウド管理者への情報漏洩の防止
VM専用仮想メモリとの連携による VMマイグレーションの高速化
IaaS型クラウドにおける インスタンス構成の動的最適化手法
リモートホストの異常を検知するための GPUとの直接通信機構
シャドウデバイスを用いた 帯域外リモート管理を継続可能なVMマイグレーション
実行時情報に基づく OSカーネルのコンフィグ最小化
仮想メモリを用いた VMマイグレーションの高速化
複数ホストに分割されたメモリを用いる仮想マシンの監視機構
仮想シリアルコンソールを用いた クラウドの安全なリモート管理
クラウドにおけるIntel SGXを用いた VMの安全な監視機構
クラウドにおけるVMリダイレクト攻撃を防ぐためのリモート管理機構
クラウドにおけるVM内コンテナを用いた 自動障害復旧システムの開発
未使用メモリに着目した 複数ホストにまたがる 仮想マシンの高速化
クラウドにおけるVM内コンテナを用いた 低コストで迅速な自動障害復旧
仮想マシンを用いた 既存IDSのオフロード
Intel SGXを用いた仮想マシンの 安全な監視機構
複数ホストにまたがって動作する仮想マシンの障害対策
セキュリティ機構のオフロード時の 性能分離
信頼できないクラウドにおける仮想化システムの監視機構
VM内コンテナを用いた サービス単位の オートスケール機構
仮想環境を用いた 侵入検知システムの安全な構成法
Cell/B.E.のSPE Isolationモードを用いた監視システム
仮想マシンの監視を継続可能なマイグレーション機構
IDSとFirewallの連携によるネットワーク構築
仮想マシンと物理マシンを一元管理するための仮想AMT
仮想マシンに対する 高いサービス可用性を実現する パケットフィルタリング
Cell/B.E. のSPE上で動作する 安全なOS監視システム
VMリダイレクト攻撃を防ぐための 安全なリモート管理機構
ゼロコピー・マイグレーションを 用いた軽量なソフトウェア若化手法
強制パススルー機構を用いた VMの安全な帯域外リモート管理
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
複数ホストにまたがるVMの 高速かつ柔軟な 部分マイグレーション
複数ホストにまたがるVMの メモリ使用状況に着目した高速化
強制パススルー機構を用いた VMの安全な帯域外リモート管理
管理VMへの キーボード入力情報漏洩の防止
Presentation transcript:

軽量な仮想マシンを用いたIoT機器の安全な監視 九州工業大学 情報工学部 機械情報工学科 光来研究室 13237069 森本 晃穂

モノのインターネット (IoT) 家電などの様々な機器がインターネットに接続 されるIoTが急速に普及 IoTの利点 2020年には200億台を超え、市場規模は3兆ドルに IoTの利点 機器を遠隔から操作できる 機器の状態を遠隔から監視 できる 機器同士を通信により連携 させられる

IoT機器への攻撃 IoT機器はインターネット経由で世界中から攻 撃を受ける可能性 2016年にはMiraiというマルウェアが登場 多くの機器に脆弱性が存在しているため 2016年にはMiraiというマルウェアが登場 IoT機器を乗っ取り、当時の最大規模のサービス妨 害攻撃を行った その結果、Twitterなどの様々な サービスが停止させられた 乗っ取られた IoT機器

侵入検知システム (IDS) IoT機器内のシステムへの攻撃を検知するため にIDSが必要とされている 攻撃者の侵入を検知すると管理者に通知して被害の 拡大を防ぐ 監視対象システム内でIDSを動作させて監視を 行っても安全ではない 侵入された後でIDSを停止される恐れがあるため IoT機器 侵入 IDS

IDSオフロード サーバにおいては仮想化システムを用いたIDS オフロードが行われている 監視対象システムを仮想マシン (VM) 内で動かす VMの外でIDSを動かして安全に監視を行う VMに侵入されたとしてもIDSを無効化される恐 れはない VM内からは外側で動くIDSを攻撃できないため 監視 VM システム IDS ハイパーバイザ

IoT機器への適用における問題 従来のサーバ向け仮想化システムをIoT機器で 動作させるのはオーバヘッドが大きい 汎用性が高く、豊富な機能を提供しているため Xen:管理VMと呼ばれる特殊なVMを余分に動かす 必要がある KVM:VMの下で高機能なOSを動かす必要がある VM 管理VM VM ホストOS ハイパーバイザ Xen KVM

? Xvisor Xvisorと呼ばれるIoT向けの軽量な仮想化システ ムが開発されている IDSオフロード手法はまだ確立されていない ハイパーバイザ内にすべての機能を実装 機能間の通信オーバヘッドが小さい IoT機器を仮想化するのに必要最小限の機能を提供 メモリ消費量が少ない IDSオフロード手法はまだ確立されていない ? VM IDS ハイパーバイザ

提案 Xvisorのハイパーバイザの中からVM内のシステ ムを監視するIDSオフロード手法 ハイパーバイザ内でIDSを動作させることによりVM の情報にアクセスするオーバヘッドを削減 従来は別のVMなどから監視していた 1つのVMだけを動作させることによりIDSを特定の VM向けにカスタマイズ可能 VM 監視 システム        ハイパーバイザ IDS

IDSコマンドによるVM監視 ハイパーバイザ内のコマンドマネージャで利用 可能なコマンドとしてIDSを実現 コマンドマネージャはネットワーク経由でコマンド を実行する機能を提供 例:ネットワーク関連のコマンド、ファイルシステム関 連のコマンド VMを監視するためのコマンドを追加 VM IDSコマンド 送信        ハイパーバイザ コマンド マネージャ

追加したIDSコマンド ids bannerコマンド ids syscallコマンド ids plistコマンド OSバージョン、コンパイラバージョンなどを取得 特定のバージョンでの不具合を把握 ids syscallコマンド OS内のシステムコールテーブルを取得 不正なシステムコールを検知 ids plistコマンド OSのプロセスIDとプロセス名を取得 不正なプロセスの実行を検知

VM内のOSデータの監視 IDSはVMのメモリを解析して取得したOSデータ を監視 VM内のOSデータの仮想アドレスをVMの物理アドレ スに変換 OSのページテーブル(アドレス変換表)を用いる VMの物理アドレスをホストの物理アドレスに変換 VMへのメモリ割り当てに基づく単純な加減算 VM OSデータの仮想アドレス ページ テーブル OS データ 利用 VMの物理アドレス        ハイパーバイザ IDS ホストの物理アドレス

アドレス変換の自動化 IDSがVM内のOSデータを取得する際に自動的に アドレス変換を行う XvisorにLLView [植木あ'15] を移植 IDSのコンパイル時にプログラムを書き換え メモリからデータを読み込む命令の前にアドレス変換を 行うプログラムを自動挿入 VM内のOSのソースコードを用いてOSの一部である かのようにIDSを作成可能 元のIDS プログラム アドレス変換を行うIDS プログラム LLView

実験 目的 実験環境 IDSコマンドを用いてVMの監視が行えることを確認 ハイパーバイザ:Xvisor 0.2.10 VM ARM用のQEMU 2.5.0を用いてVersatilePBエミュレータ上で 実行 VM 仮想CPU:1個 メモリ:96MB OS:Linux 4.9.0 実験マシン CPU Intel Xeon X5675 メモリ 36GB

IDSコマンドの実行結果 (1/2) ids bannerコマンドを用いてバナー文字列を取 得できた ids syscallコマンドを用いてシステムコールテー ブルに登録された関数アドレスを取得できた : c001b10c sys_exit c00181a8 sys_fork c00a7f3c sys_read

IDSコマンドの実行結果 (2/2) ids plistコマンドを用いてプロセス一覧を取得 できた VM内でpsコマンドで取得したプロセス一覧と一致 ids plist ps

関連研究 BVMD [Oyama et al.'12] BitVisor [Shinagawa et al.'09] Dockerコンテナ ハイパーバイザ内でマルウェアの検知を行う ハイパーバイザ経由のディスク入出力だけを監視 BitVisor [Shinagawa et al.'09] デスクトップPCで1つのVMだけを動作させる仮想化 システム IoTデバイスを対象とはしていない Dockerコンテナ IoT機器でも用いられるOSレベルの軽量な仮想環境 VMと比べるとセキュリティが劣る

まとめ Xvisorのハイパーバイザの中からVM内のシステ ムを監視するIDSオフロード手法を提案 今後の課題 ハイパーバイザ内でIDSを動作させることによりVM の情報にアクセスするオーバヘッドを削減 1つのVMだけを動作させることによりIDSを特定の VM向けにカスタマイズ可能 3つのIDSコマンドを作成して動作を確認 今後の課題 提案手法を実機 (Raspberry Pi) に実際に適用 VMのディスクやネットワークの監視にも対応

ご静聴ありがとうございました