Skip to content

Latest commit

 

History

History
20 lines (12 loc) · 5.28 KB

Hypervisor.md

File metadata and controls

20 lines (12 loc) · 5.28 KB

하이퍼바이저

운영체제 커널을 지칭하는 슈퍼바이저(supervisor)란 옛 용어에서 비롯되어, "슈퍼바이저의 슈퍼바이저"를 의미하는 하이퍼바이저(hypervisor)가 유래되었다.

가상 보안 모드

가상 보안 모드(virtual secure mode; VSM)는 가상화 기반 보안 기술을 접목하여 운영체제 안에 새로운 보안 영역을 구축하는 하이퍼바이저 기능이다. VSM은 시스템 보안 자산을 보관하고 처리하기 위한 격리된 메모리 영역을 생성하며, 이는 오로지 하이퍼바이저를 통해서만 접근이 승인 및 제어된다. 하이퍼바이저가 운영체제보다 상위 권한을 가지고 있는 점에서 VSM의 격리된 영역은 (슈퍼바이저 모드커널드라이버를 포함한) 인가받지 않은 접근으로부터 보호된다.

컴퓨터 보안에서 자산(assets)이란, 정보 관련 활동에 관여하는 시스템 환경의 데이터, 장치, 또는 기타 구성요소들을 일컷는다.

윈도우 10 및 서버 2016의 가상화 기반 보안 아키텍처

위의 그림은 가상화 기반 보안으로부터 구축된 아키텍처이며, VTL(Virtual Trust Level; 가상 신뢰 수준)에 의해 독립된 두 개의 VSM 영역을 묘사하였다. VTL의 숫자가 높을수록 부여되는 권한이 상승하는데, 일반 윈도우 NT 커널 및 드라이버는 최하위 권한의 VTL0에 속한다. 이들은 VTL1에 상주하는 리소스를 제어하거나 정의하는 게 절대로 허용되지 않아, 즉 격리된 보안 영역이 구현된다.

VTL1도 마찬가지로 커널사용자 공간이 구분되어 있다:

윈도우 NT의 VTL1 프로세서 모드
커널 모드격리된 사용자 모드(Isolated User Mode; IUM)
Ring 0Ring 3
보안 커널 (혹은 프록시 커널): securekernel.exe시스템 서비스서브시스템 DLL: Iumdll.dll 및 Iumbase.dll
VTL0의 메모리 및 리소스 접근에 어떠한 제약을 받지 않는다.VTL0의 커널 및 사용자 공간에 접근할 수 없는 완전히 격리된 상태이다.
보안 커널은 IUM에 특수한 보안 시스템 서비스를 제공하지만, VTL0로 연계되는 시스템 서비스 중 자칫 문제를 일으킬 수 있는 일부를 제한시킨다.IUM에서 실행되는 프로세스를 Trustlet이라 부르며, 보안 커널의 소스 코드에 등록이 되어야만 실행될 수 있어 마이크로소프트 관리 하에 있다.

VTL1만의 핸들이나 시스템 스레드 등이 상주할 보안 커널 주소 공간은 보안 시스템 프로세스(secure system process)에서 제공한다. 하지만 스케줄링, 커널 개체메모리 관리는 VTL0 커널에서 이루어지기 때문에 실질적인 OS 동작에는 아무런 관여를 하지 않는다. 즉, 해당 프로세스는 단순히 사용자에게 VBS가 활성화되었음을 가시화하는 게 전부이다.

가상화 기반 보안

가상화 기반 보안(Virtualization-based security; VBS)은 윈도우 OS의 신뢰를 기반하여 커널과 절충할 수 있는 고립된 환경을 하드웨어 가상화와 하이퍼바이저로부터 생성한다. 해당 환경에는 다수의 보안 솔루션이 구동되어 운영체제를 취약점으로부터 크게 보호하고, 보안 프로그램을 공격하려는 멀웨어(malware; 악성 소프트웨어)로부터 노출을 방지한다. 이러한 제약으로 인해 VBS는 필수적인 시스템 및 리소스를 보호하는 데에도 활용된다.