Post on 08-Aug-2015
박한범
보안 위협과 해결 방안 신뢰할 수 있는 실행 환경
가상화와 보안
PRESENTATION SUMMARY
가상화 계층 가상화 계층 이해 키로거
가상화와 보안
가상화 개요 마무리
가상화 개요
가상화에 대한 개괄적인 배경지식
가상화 개요
II
I
III
IV V
가상화의 정의
가상화는 물리적 자원을 논리적 자원으로 다룰 수 있도록 추상화하는 기술 운영체제에서는 CPU와 메모리를 가상화하여 사용한다.
가상화 개요
가상화의 정의
운영체제의 메모리 가상화
가상화 개요
Process
운영체제 메모리 추상화 구조체
가상메모리 가상메모리 가상메모리
Process Process
가상화의 정의
운영체제의 CPU 가상화
가상화 개요
PCR
Process Process Process
execution
가상화의 정의
하드웨어 지원 가상화 중 CPU 지원 가상화
가상화 개요
Process Process Process
PCR
Process Process Process
PCR
Process Process Process
PCR
Hypervisor
VMCB
execution
Hypervisor
가상화의 정의
클라우드에서의 가상화 활용
가상화 개요
VMCB VMCB
Process Process Process
PCR
Process Process Process
PCR
Process Process Process
PCR
core1 core2 core3
Hypervisor
VMCB
가상화계층 이해
가상화 계층의 구조와 특징
II
가상화 계층 이해
I
III
IV V
CPU 지원 가상화
CPU 자원
가상화 계층 이해
Processor
Interrupt
Physical Memory
I/O
CPU 지원 가상화
운영체제 = 자원관리자
가상화 계층 이해
Processor
Interrupt
Physical Memory
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver
Paging
IRP
Physical Memory
CPU 지원 가상화
CPU지원 가상화 = 자원관리자
가상화 계층 이해
Processor
Interrupt
Memory
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver
Paging
IRP
Processor
Interrupt
Memory
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver
Paging
IRP
Processor
Interrupt
Memory
I/O
PCR Process
TSS
Thread GDT
IDT Driver
IRQ
Paging
IRP
Virtual Machine
Virtual Machine Monitor
Hypervisor
VMCB
Interrupt
I/O
Processor
가상화 계층 키로거
가상화 계층 키로거 제작 과정을 통 해 가상화 계층의 이해 심화
II
I
III
IV
가상화 계층 키로거
V
가상화 계층을 통한 PS/2 키로거 제작
I/O 통신을 하는 PS/2 키보드의 키로거 제작 과정을 통해 가상화 계층의 이해를 심화.
가상화 계층 키로거
가상화 계층을 통한 PS/2 키로거 제작
PS/2 키보드 기본 동작 구조
가상화 계층 키로거
Interrupt
I/O
Keyboard Register
1
2
1
PCR
2
1
가상화 계층을 통한 PS/2 키로거 제작 가상환경에서의 동작 #1
인터럽트 전달
가상화 계층 키로거
Processor
Interrupt
Physical Memory
Paging
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver IRP
Processor
Interrupt
Physical Memory
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver
Paging
IRP
Processor
Interrupt
Physical Memory
I/O
PCR Process Thread GDT
TSS
IDT Driver
IRQ
Paging
IRP
Hypervisor
VMCB
1
2
Keyboard Register
1 3
Keyboard Register
Virtual Machine
가상화 계층을 통한 PS/2 키로거 제작 가상환경에서의 동작 #2 키보드 레지스터 읽기
가상화 계층 키로거
Processor
Interrupt
Physical Memory
Paging
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver IRP
Processor
Interrupt
Physical Memory
I/O
PCR Process Thread GDT
TSS
IDT
IRQ
Driver
Paging
IRP
Processor
Interrupt
Physical Memory
I/O
PCR Process Thread GDT
TSS
IDT Driver
IRQ
Paging
IRP
Hypervisor
VMCB
2
Keyboard Register
3 1
Keyboard Register
Virtual Machine
가상화 계층을 통한 PS/2 키로거 제작
구현
1. 특권 계층 명령어를 사용할 수 있게끔 드라이버 제작 후 로드
2. CPU지원 가상화 계층 활성화 3. 가상화 계층에서 PS/2 관련 I/O 포트 0x60번과
0x64번을 모니터링 하며 키로깅
가상화 계층 키로거
가상화와 보안 가상화 기술을 활용한 보안 계층에
대해 다루고자 합니다.
II
I
III
IV
가상화와 보안
V
Vulnerabilities of Windows 8
가상화와 보안
25 28
31
22
9 9
Execute code Overflow Gain Privilege Denial of Memory etc
Services Corruption
Trusted Computing Requirement
가상화와 보안
Endorsement Key
Secure Input Output
Protected Execution
Sealed Storage
Memory Curtaining
Remote Attestation
보안된 입력 출력
메모리 격리
암호화된 저장소
원격 인증
보호된 실행
인증서 관리
Trusted Execution Environment Architecture
가상화와 보안
TEE Kernel
Rich Execution Environment Trusted Execution Environment
Hardware Platform
H/W Secure Resource
Global Platform TEE Internal API
Rich OS
Proprietary Interfaces Global Platform TEE Client API
가상화와 보안
Implement : ARM TrustZone
Generic Application
Monitor
Secure world Normal world
Security Client
Security Client
Scheduler TrustZone Driver
Inter-world IPC Manager
Scheduler
Standalone Application
Security Service
Security Service
(non-Privileged)User User(non-Privileged)
Privileged Privileged
kernel kernel
IRQ FIQ IRQ FIQ
SMC
마무리
II
마무리
I
III
IV V
새로운 플랫폼, 보안
마무리