Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
黒 林檎
4,330 views
Kobe virtualrootkit
Engineering
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 38
2
/ 38
3
/ 38
4
/ 38
5
/ 38
6
/ 38
7
/ 38
8
/ 38
9
/ 38
10
/ 38
11
/ 38
12
/ 38
13
/ 38
14
/ 38
15
/ 38
16
/ 38
17
/ 38
18
/ 38
19
/ 38
20
/ 38
21
/ 38
22
/ 38
23
/ 38
24
/ 38
25
/ 38
26
/ 38
27
/ 38
28
/ 38
29
/ 38
30
/ 38
31
/ 38
32
/ 38
33
/ 38
34
/ 38
35
/ 38
36
/ 38
37
/ 38
38
/ 38
More Related Content
PDF
自動販売機ハッキングLt
by
黒 林檎
PDF
ウイルス検知プログラミング
by
黒 林檎
PDF
Vagrant(私立キャンプlt)
by
黒 林檎
PPTX
「おりこうさんな秘書」に使われている技術・手法について
by
YSRKEN
PPTX
Virtual rootkit
by
黒 林檎
PDF
Vagrant-concrete5
by
Kite Koga
PPTX
[春期]私立プログラミングキャンプ
by
黒 林檎
PDF
黒林檎春休み妄想日記[不正送金編]
by
黒 林檎
自動販売機ハッキングLt
by
黒 林檎
ウイルス検知プログラミング
by
黒 林檎
Vagrant(私立キャンプlt)
by
黒 林檎
「おりこうさんな秘書」に使われている技術・手法について
by
YSRKEN
Virtual rootkit
by
黒 林檎
Vagrant-concrete5
by
Kite Koga
[春期]私立プログラミングキャンプ
by
黒 林檎
黒林檎春休み妄想日記[不正送金編]
by
黒 林檎
More from 黒 林檎
PPTX
IoT診断入門
by
黒 林檎
PPTX
IoTSecJP(公開版)
by
黒 林檎
PDF
実践IoTペンテスト
by
黒 林檎
PDF
Line(私立キャンプ)
by
黒 林檎
PPTX
Wi-Fi電球ハッキング-バックドア経由での操作-
by
黒 林檎
PPTX
続・IoT診断
by
黒 林檎
PDF
総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~
by
黒 林檎
PDF
IoTSecJP
by
黒 林檎
PPTX
Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]
by
黒 林檎
PDF
私立キャンプ
by
黒 林檎
PPTX
スライド
by
黒 林檎
IoT診断入門
by
黒 林檎
IoTSecJP(公開版)
by
黒 林檎
実践IoTペンテスト
by
黒 林檎
Line(私立キャンプ)
by
黒 林檎
Wi-Fi電球ハッキング-バックドア経由での操作-
by
黒 林檎
続・IoT診断
by
黒 林檎
総サイバーセキュリティザックさんの代打~ネットワークカメラのハック~
by
黒 林檎
IoTSecJP
by
黒 林檎
Searching for Black Spots in the Great Big Onion [Avkansai特別プレゼン]
by
黒 林檎
私立キャンプ
by
黒 林檎
スライド
by
黒 林檎
Kobe virtualrootkit
1.
! 大和セキュリティ!! Virtual rootkit !! 黒林檎(r00tapple)
2.
自己紹介? 最近、仮想rootkitよりハイブリッドrootkitの方が興味 あります。(?) 発表資料ver原稿ベース http://www.slideshare.net/murashimamasahiro/virtual- rootkit
3.
virtual rootkitの脅威 ! ! 仮想化技術ってだいぶ昔からあります。 ! 最近はどこでも仮想化技術を取り入れています。 要するに今回はそこらへんの脅威のお話です。 ! ! !
4.
最初に..。 仮想化技術が普及している今、仮想化技術に対す る脅威を認識していなければ行けない(感じがする) 欠点として仮想化によるオーバーヘッド、ハード ウェアの制約(仮想化支援機構必須)など.. 利点としてVMMはOSがいかなる状況にあっても 保護を継続してくれるという利点がある。 ! !
5.
セキュアか? ハイパーバイザーを悪用したマルウェア(BluePill) など脅威はあったが仮想化のセキュリティへの 応用は既に成されておりセキュアであると言え る。 しかし、VMM自体への攻撃を懸念しなければな らない。 [例..] VT escape attack hypervisor
rootkit など
6.
懸念すべき攻撃とは? VM escape attack? ! CPUID
Flood attack ? ! CPUID Brute-Force attack ? ! VMへの脆弱性への攻撃?
7.
What’s VM escape
attack ? ゲストからホストへのエスケープを可能にする。 ゲスト仮想マシン内のローカルの攻撃者は、制 限された仮想環境をエスケープし、ハードウェ アに直接アクセスする。 非特権ドメイン(domU)を管理することができ る特権ドメイン(dom0)の権限を持つホストシス テム上で任意のコードを実行することができる 攻撃
8.
What’s CPUID Flood
attack? SYN Floodと考え方は一緒でDoS攻撃の手法の 一つで接続を大量に試みる攻撃 ! /while(1)的なもん .section .text .global main main : movl $0x8000000A , %eax cpuid jmp main !
9.
VM自体の脆弱性(1)
10.
VMの脆弱性(2) ! ..上記はVMのバージョン情報抽出してるだけってい うね(汗)
11.
[本題]
12.
Hypervisorってな∼に? [ペアメタル ハイパーバイザー] [説明]{ 世間一般に言われて いるハイパーバイザー はこちら。 }
13.
Hypervisorってな∼に?(2) [説明]{ hypervisorは.. ウェブプロキシ をイメージすると 良いです。 } [ホスト型 ハイパーバイザー]
14.
ring -1とは何か? 右図を見てもkernel modeの ring
0が最高権限とされてい ます。 ring -1とは”Intel || AMD”が ハードウェア仮想サポートに よって作成した概念をまと めた要な物です。
15.
HyperJacking !
16.
Hyperjackingとは? UNIXのvfork()システムコール命令のように2 つの異なるスレッドを実行しているオペレー ションシステムを実行します。
17.
HyperJackingへの道のり [1]対象に悪意あるkernelドライバをインストール ! [2]低レベル仮想化支援命令にアクセス。 ! [3]悪意あるhypervisor用メモリー空間を作成 ! [4]新しいVMのための記憶空間を作成 ! [5]新しいVMへ動作中0Sを移動 ! [6]新しいVMからのコマンドをすべてトラップに掛け悪質なhypervisorを定着させる
18.
Hyperjackingソース抜粋 現在のオペレーションシステムからの値を使用して、 VMCS中のホスト状態フィールドの初期化を要求する部分。 static void _hyperjack_init_vmcs_host_fields() {
uint32_t selector; uint32_t base; uint32_t msr_lo, msr_hi; uint32_t host_rsp, host_rip; //メモリセグメント、ベースレジスタ、コントロールレジス タ x86_get_es(selector); __vmwrite(HOST_ES_SELECTOR, selector); x86_get_cs(selector); __vmwrite(HOST_CS_SELECTOR, selector); ..... //vm-exitハンドル…”on_vm_exit()” host_rsp = 0xdeadbeef; __vmwrite(HOST_RSP, host_rsp); host_rip - 0xdeadbeef; __vmwrite(HOST_RIP, host_rip); }
19.
っていうか(笑) 物理メモリーを共有するのでHypervisorって オペレーティングシステムのメモリに対して フルアクセス権を持っている事になるので それらを任意に変更することができるんじゃね? ! ※(勿論対策案出てますよ結構前から!)
20.
‘命令’||’用語’説明 [動作モード] -vmx root
モード -vmx-non-root モード [VMCS] -仮想マシン用の情報領域 -動作条件 -レジスタ情報 [vmx命令] -vmxon/vmxoff //vmx操作の有効化・無効化 -vmread/vmwrite //VMCS領域の書き込みと読み込み -vmclear //vmcs用メモリ領域の初期化 -vmcall //ゲストOSからVMMへ推移
21.
Hypervisor rootkit !
22.
Hypervisor rootkit 結論から言うとhypervisor rootkitって技術的に難 しい。 ←32bit用/64bit用の設定 .hで定義する必要 があります。 成功度自体も..(ry
23.
しかし脅威に違いは無い Open SSLのウェブサイト改ざん被害の際にも Hypervisorを狙われた訳ですから、脅威に違い は無い。 ! 攻撃者からしても…、’ring0 <
ring -1’権限が 高いので出来るなら奪いたい。 !
24.
攻撃者 vs その他etc
!! Microsoftがwindows serverに仮想化実装を施そう という話が出た時にはMicrosoftはハードウェアレ ベルで許可されていないハイパーバイザーの検出 をする事にAMD・Intelと話合うなど脅威として の認識は昔からされていた。 ベンダーの対策ソフトも結構出てますので興味が あれば後で出す物を検索してみてください。
25.
MBR rootkitについて [MBR(マスターブートレコード)] MBR(マスターブートレコード)はOSを見つける為にBIOSに指示する ハードドライブの一部であり、コンピューター起動時に 初期ブート・シーケンスを実行しBIOSから引き継ぐ重要な物です。 (ハードディスクの先頭セクタにあるブートレコード) rootkitにはこのプロセスを感染させる事でその存在を隠し システムを引き継ぐために送信されたデータを変更する事で ハードウェアとOSの間で自分自身をInjectionする事がある。 ※これはbootkitとも呼ばれていてる事もあります。
26.
Hypervisorについて [hypervisor(ハイパーバイザー)] MBRを紹介した例として.. hypervisor rootkitにもMBR rootkitに似ている物があります。 それはbootプロセス間に悪意あるハイパーバイザーを作成するために ブートローダーを修正するrootkitも存在するから。 そしてOSを破壊しユーザーへの表示と再起動なしで実行中仮想マシン へ移行出来る。 これらはCPUに組み込まれた仮想化支援機能を使用する事により可能 です。
27.
Hypervisor入門 ! [3つの主な関数命令] ! vmx-init() – VT-x機能を検出及び初期化 ! vmx-fork()
– ゲストOSとホストハイパーバイザー ..を実行中システムにfork ! on_vm_exit() – VM終了イベント処理など.. ! ! !
28.
vmx_init() [vmx_init()] CPUIDとMSR(モデル固有レジスタ) VMXのCR4を有効 VMCSC(仮想マシンコントロールストア)で物理メモ リページ割り当て VMX動作の許可---vmx_on命令を持ったプロセッ サー
29.
vmx_fork() コード及びスタック(ハイパーバイザー用データ) を割り当て 現在実行中のオペレーションシステムをVMへ移 行 実行中OSの状態をVMに設定 設定した実行コントロールがvm終了を最小化する 様に例外やI/Oアクセスなどを無視 VM実行においてOSの実行を継続する。
30.
on_vm_exit() VM終了イベントの処理 CPUID、CR0-CR4アクセス、RDMSR/ WRMSR のような手順については、期待される動作をエミュレート CPUID命令のコマンドを使用しバックドアを実装などに 使われる。 その他一般的なrootkit機能を提供する。
31.
vmx_on()命令 VTが対応しているか確認
32.
vmcs_alloc()/vmcs_free()関数 vmcsメモリを初期かしvmcsリビジョンを設定
33.
hyperjack()関数 vmcs != NULLでないなhyperjack()を実行
34.
検出(1) [方法としては..] デバッグレジスタを使いハイパーバイザーにブレークポ イントを設置する事が出来ます。 ! カーネルメモリを変更しカーネル内の関数フック。 ! プロセッサーがvmx non-rootモードで動作してるか調べ る ! vm-を作成するためにvmxを使用し vm-exitイベントが発生し起きた遅れを検出。
35.
検出(2) 再起動して再ロードする事でバックドアや変更を探すために フォレンジックする事で、メモリにInjectionされハードドライブ 上のファイル構造を変更しないHypervisor rootkitで無ければ 検出は可能。 ! 勿論メモりにInjectionされハードドライブ上のファイル構造を 変更しないHypervisor rootkitの場合は再起動する事で 再起動後の存続は不可能。
36.
既存検知ソフトウェア(1) [Slabbed-or-not] 特定ハイパーバイザー下で実行されているか検出する物。 検出される物としては.. ■Xen(PVM or HVMモード ハイパーバイザーのバージョン ■Vmware(ハイパーバイザーの種類 仮想化されたハードウ アモデルの検出) ※ハードウェアモデル(hyper-v
/ KVM / bhyve..など)
37.
既存検知ソフトウェア(2) ※ハードウェアモデル(hyper-v / KVM
/ bhyve..など) ! [Hooksafe] ハイパーバイザーの物理メモリーを使用し仮想環境内の rootkitを検出し削除又はブロックする事が出来る ハイパーバイザーベースのシステム。
38.
ご清聴有り難うございます
Download