KR101405319B1 - Devices and methods for secure system protection in virtualized environments - Google Patents
Devices and methods for secure system protection in virtualized environments Download PDFInfo
- Publication number
- KR101405319B1 KR101405319B1 KR1020070110296A KR20070110296A KR101405319B1 KR 101405319 B1 KR101405319 B1 KR 101405319B1 KR 1020070110296 A KR1020070110296 A KR 1020070110296A KR 20070110296 A KR20070110296 A KR 20070110296A KR 101405319 B1 KR101405319 B1 KR 101405319B1
- Authority
- KR
- South Korea
- Prior art keywords
- domain
- access
- access control
- system resource
- control module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
본 발명의 일 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 장치는, 적어도 하나의 디바이스 드라이버를 포함하는 도메인을 다수개 구비하는 도메인부, 디바이스의 하드웨어를 구성하는 시스템 자원부, 및 DMA(Direct Memory Access) 드라이버 및 가상화 환경에서 상기 시스템 자원부에 대한 상기 도메인부의 접근 동작을 제어하는 접근제어 모듈을 구비하는 제어부를 포함한다. 본 발명에 의하면, 가상화 환경에서 악성코드(malware) 등 악의적인 접근으로부터 시스템 자원을 보호하고 시스템 장애를 해결하여 안전한 보안 서비스를 보장할 수 있다.A secure system protection apparatus in a virtualization environment according to an embodiment of the present invention includes a domain unit having a plurality of domains including at least one device driver, a system resource unit constituting hardware of the device, and a DMA (Direct Memory Access And a control unit having an access control module for controlling an access operation of the domain unit to the system resource unit in a driver and a virtualization environment. According to the present invention, system resources can be protected from malicious accesses such as malware in a virtualized environment, and a security service can be guaranteed by solving a system failure.
VMM, DMA, 도메인, 드라이버, 메모리 VMM, DMA, domain, driver, memory
Description
본 발명은 시스템 보호 장치 및 방법에 관한 것으로, 보다 상세하게는 가상화 환경에서 악의적인 접근으로부터 시스템 자원을 보호하고, 안전한 보안 서비스를 보장하기 위한 가상화 환경에서의 안전한 시스템 보호 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for protecting a system, and more particularly, to an apparatus and method for safely protecting a system in a virtual environment for protecting system resources from a malicious access in a virtualized environment and ensuring a secure security service.
일반적으로 PC, PDA, 무선 단말기, DTV 등의 장치는 안전성과 다양한 응용 및 서비스의 실현을 위하여 가상화(Virtualization) 기술을 사용할 수 있다. 이러한 가상화 기술에서 안전한 환경을 제공하기 위해서는 보안 부트(Secure Boot), 보안 소프트웨어(Secure SW), 접근 콘트롤(Access Control) 등의 기능을 필요로 한다.In general, devices such as a PC, a PDA, a wireless terminal, and a DTV can use a virtualization technology to realize safety and various applications and services. These virtualization technologies require features such as Secure Boot, Secure Software, and Access Control to provide a secure environment.
도 1은 종래의 가상화 시스템 장치의 구성을 도시한 블록도이다.1 is a block diagram showing a configuration of a conventional virtualization system apparatus.
도 1에 도시된 바와 같이, 종래의 가상화 시스템 장치는 VMM(Virtual Machine Monitor)(10)을 이용하는 가상화 환경에서, 다수개의 도메인(21, 22, ...)을 구비하는 도메인부(20)와, 롬(ROM), 중앙처리장치(CPU), 메모리, 배터리, 입출 력 디바이스(I/O DEVICE) 등을 구비하는 시스템 자원부(30) 등을 포함한다. 1, in a virtualization environment using a virtual machine monitor (VMM) 10, a conventional virtualization system apparatus includes a
상기 도메인부(20)의 각 도메인(21, 22, ...)은 적어도 하나의 디바이스 드라이버(21a, 22a, ...)를 구비하며, 다수의 도메인들(21, 22, ...) 중 적어도 하나의 도메인(21)은 DMA 드라이버(21b)를 포함한다. 이러한 종래의 가상화 시스템 장치는 도메인부(20)에서 DMA에 대한 처리를 수행하며, 도메인 사이의 채널을 형성하는데 아무런 제한이 없다. 또한, 각 도메인(21, 22, ...)이 시스템 자원부(30)에 대하여 접근시 단순한 접근 제어가 도메인부(20) 또는 VMM(10) 중 어느 하나에서 수행된다.Each
그러나, 상기와 같은 종래의 가상화 시스템 장치는 DMA 처리가 도메인부(20)에서 수행되며, VMM(10)에서 시스템 자원부(30)에 대한 도메인부(20)의 악의적인 접근을 방지하기 위한 접근 제어가 수행되지 않기 때문에 시스템 보안상 문제가 있다.However, in the above-described conventional virtualization system, the DMA processing is performed in the
보다 상세하게는, DMA가 도메인(21)에서 수행되고 물리적인 메모리에 대한 접근 제어가 제공되지 않으므로 불안전한 도메인이나 버그가 있는 디바이스 드라이버가 도메인에 존재하는 경우 VMM 또는 다른 도메인의 물리적인 도메인에 접근하여 기밀 데이터를 가져오거나 더미(dummy) 데이터를 중복기재(overwrite)하여 시스템 장애를 초래하는 문제가 있다.More specifically, since the DMA is performed in the
또한, 특정 도메인이 시스템 메모리를 과도하게 사용하게 되면, 시스템 장애가 초래되어 시스템 유용성(availability)을 저해하는 문제가 있다.Also, if a particular domain uses excessive system memory, there is a problem that system failure occurs and system availability is hindered.
또한, 두 도메인 사이에 형성되는 이벤트 채널(event channel)의 수는 한정 되어 있는데, 만약 악의적인 특정 도메인이 사용 가능한 이벤트 채널을 모두 사용하게 되면, 나머지 도메인들 사이에서는 이벤트 채널을 형성할 수 없게 되므로, 시스템 장애가 초래된다.In addition, the number of event channels formed between the two domains is limited. If all of the event channels available for a malicious specific domain are used, an event channel can not be formed among the remaining domains , Resulting in a system failure.
본 발명은 상기와 같은 점을 해결하기 위하여 안출된 것으로서, 가상화 환경에서 악성코드(malware) 등 악의적인의 접근으로부터 시스템 자원을 보호하고 시스템 장애를 해결하여 안전한 보안 서비스를 보장할 수 있는 가상화 환경에서의 안전한 시스템 보호 장치 및 방법에 관한 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and it is an object of the present invention to provide a virtual environment in which system resources are protected from malicious accesses such as malware in a virtualized environment, And more particularly, to a system and method for safely protecting the system.
본 발명의 목적들은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects not mentioned can be clearly understood by those skilled in the art from the following description.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 장치는, 적어도 하나의 디바이스 드라이버를 포함하는 도메인을 다수개 구비하는 도메인부, 디바이스의 하드웨어를 구성하는 시스템 자원부, 및 DMA(Direct Memory Access) 드라이버 및 가상화 환경에서 상기 시스템 자원부에 대한 상기 도메인부의 접근 동작을 제어하는 접근제어 모듈을 구비하는 제어부를 포함한다.In order to achieve the above object, a secure system protection apparatus in a virtualization environment according to an embodiment of the present invention includes a domain unit having a plurality of domains including at least one device driver, a system resource unit A DMA (Direct Memory Access) driver, and an access control module for controlling an access operation of the domain unit to the system resource unit in a virtualization environment.
상기 다른 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 방법은, 시스템 자원부에 대한 각 도메인의 디바이스 드라이버의 I/O 스페이스 및 IRQ(인터럽트 리퀘스트)넘버 할당을 요청하는 단계, 상기 디바이스 드라이버를 실행하는 상기 도메인이 소정의 접근제어 정책(policy) 에 의해 상기 시스템 자원부에 대한 접근 권한이 허용되는지를 판단하는 단계, 및 상기 접근제어 정책에 따라 상기 시스템 자원부에 대하여 상기 도메인의 접근 권한이 허용되면 상기 도메인의 디바이스 드라이버에 상기 요청한 I/O 스페이스 IRQ 넘버를 할당하고, 그렇지 않으면 상기 요청한 I/O 스페이스 IRQ 넘버를 할당하지 않는 단계를 포함한다.According to another aspect of the present invention, there is provided a method for protecting a system in a virtual environment, including: requesting allocation of an I / O space and an IRQ (interrupt request) number of a device driver of each domain to a system resource unit; Determining whether an access right to the system resource unit is allowed according to a predetermined access control policy of the domain in which the device driver is executed; and determining, based on the access control policy, And allocating the requested I / O space IRQ number to the device driver of the domain if the access right of the domain is allowed, otherwise not allocating the requested I / O space IRQ number.
상기 다른 목적을 달성하기 위하여, 본 발명의 다른 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 방법은, 도메인의 특정 디바이스 드라이버가 DMA를 통해서 시스템 자원부의 메모리에 접근을 요청하는 단계, 상기 특정 디바이스 드라이버를 실행하는 도메인이 소정의 접근제어 정책에 의해 접근 권한이 허용되는 상기 메모리에 접근을 시도하는지를 판단하는 단계, 및 상기 접근제어 정책에 의해 상기 도메인이 상기 메모리에 접근을 시도하면 상기 요청한 메모리에 대하여 상기 도메인의 특정 디바이스 드라이버의 접근을 허용하고, 그렇지 않으면 상기 요청한 메모리에 대하여 상기 도메인의 특정 디바이스 드라이버의 접근을 허용하지 않는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of protecting a secure system in a virtualization environment, comprising: requesting a specific device driver of a domain to access a memory of a system resource unit through a DMA; Determining whether the domain executing the access control policy attempts to access the memory to which the access right is granted by a predetermined access control policy; and if the domain attempts to access the memory by the access control policy, Allowing access to a specific device driver of the domain, and otherwise not allowing access to a specific device driver of the domain for the requested memory.
상기 다른 목적을 달성하기 위하여, 본 발명의 또 다른 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 방법은, 다수개의 도메인들 중 적어도 하나의 도메인에서 시스템 자원의 할당을 요청하는 단계, 상기 도메인에서 요청한 시스템 자원의 할당량이 소정의 접근제어 정책에 의해 설정된 기준치를 초과하지 않는지를 판단하는 단계, 및 상기 접근제어 정책에 의해 상기 도메인이 요청한 시스템 자원의 할당량이 상기 설정된 기준치 이하이면 상기 도메인에 상기 요청한 시스템 자원 의 할당을 허용하고, 그렇지 않으면 상기 도메인에 상기 요청한 시스템 자원의 할당을 허용하지 않는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of protecting a secure system in a virtualization environment, the method comprising: requesting allocation of system resources in at least one domain among a plurality of domains; Determining whether an allocation amount of the system resources does not exceed a reference value set by a predetermined access control policy, and if the allocation amount of system resources requested by the domain is equal to or less than the set reference value, Allowing allocation of resources, and otherwise not allowing allocation of the requested system resources to the domain.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.
상기한 바와 같은 본 발명의 가상화 환경에서의 안전한 시스템 보호 장치 및 방법에 의하면, 가상화 환경에서 악성코드(malware) 등 악의적인의 접근으로부터 시스템 자원을 보호하고 시스템 장애를 해결하여 안전한 보안 서비스를 보장할 수 있다.According to the apparatus and method for safely protecting the system in the virtualization environment of the present invention as described above, it is possible to protect the system resources from malicious accesses such as malware in the virtualization environment, .
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the description of the claims.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 장치 및 방법을 상세히 설명하기로 한다. 참고로 본 발명을 설명함에 있어서 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, an apparatus and method for protecting a secure system in a virtualized environment according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings. In the following description, well-known functions or constructions are not described in detail to avoid unnecessarily obscuring the subject matter of the present invention.
도 2는 본 발명의 일 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 장치의 구성을 도시한 블록도이다.2 is a block diagram illustrating a configuration of a secure system protection apparatus in a virtualization environment according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 가상화(Virtualization) 환경에서의 안전한 시스템 보호 장치는 도메인부(100), 시스템 자원부(200) 및 제어부(300) 등을 포함한다.As shown in FIG. 2, a secure system protection apparatus in a virtualization environment according to an embodiment of the present invention includes a
상기 도메인부(100)는 적어도 하나의 디바이스 드라이버(111, 121,...)를 포함하는 다수의 도메인(110, 120, ...)을 구비한다. 예를 들어, 도메인부(100)는 안전성이 보장되는 적어도 하나의 보안 도메인(110)과, 안전성이 다소 취약한 다수의 일반 도메인(120, ....)을 포함한다. The
본 발명에서 도메인(Domain)은 각각의 운영시스템(OS)에 의해 해당 디바이스 드라이버를 실행할 수 있는 환경을 의미한다. In the present invention, a domain means an environment in which a corresponding device driver can be executed by each operating system (OS).
상기 시스템 자원부(200)는 디바이스의 하드웨어를 구성한다. 시스템 자원부(200)는 롬(ROM)(210), 중앙처리장치(CPU)(220), 배터리(battery)(230), 메모리(memory)(240), 도메인 간의 이벤트 채널(event channel)(250), 입출력 디바이스(I/O device)(260) 등을 포함한다. The
상기 롬(210)은 사용자 또는 시스템으로 인하여 불법적으로 변경될 수 없는 저장 영역이다. The
상기 메모리(240)는 데이터 정보가 저장되는 스토리지로서, 비휘발성 메모리, 예컨대 플래쉬 메모리가 적용된다. The
상기 메모리(240)는 시스템 메모리(system memory) 및 후술할 DMA에 관한 물리적인 메모리(physical memory) 등을 포함한다. The
상기 메모리(240)는 다양한 테이터 정보들을 종류 및 보안에 따라 구분하여 저장할 수 있도록 복수개의 저장 영역으로 분할되며, 상기 저장 영역들 중 소정의 저장 영역에 중요한 데이터 정보가 암호화되어 저장되는 것이 바람직하다.The
상기 제어부(300)는 VMM(Virtual Machine Monitor)을 이용하여 가상화 환경, 예컨대 무선 인터넷 환경에서 도메인부(100)가 시스템 자원부(200)에 접근 가능하도록 동작을 제어한다. The
상기 제어부(300)는 DMA(Direct Memory Access) 드라이버(310) 및 가상화 환경에서 시스템 자원부(200)에 대하여 도메인부(100)의 접근 동작을 제어하는 접근제어 모듈(320) 등을 구비한다.The
상기 DMA 드라이버(310)는 DMA를 Operation을 수행하는 모듈이다. The
상기 접근제어 모듈(320)은 각 도메인(110, 120, ...)의 디바이스 드라이버들(111, 121, ...)이 DMA 드라이버(310)를 통해서 시스템 자원부(200)에 접근하는 동작을 제어한다. 특히, 접근제어 모듈(320)은 각 도메인(110, 120, ...) 중에서 안전성에 취약한 일반 도메인(120, ....)에 설치되는 악의적인 디바이스 드라이 버(121)가 DMA 드라이버(310)에 관련되는 입출력 스페이스(I/O space) 및 IRQ에 대한 접근을 제한한다. 보다 상세하게는, 접근제어 모듈(320)은 도메인(110, 120, ...)의 특정 디바이스 드라이버가 소정의 접근제어 정책(policy)에 따라 DMA를 통해 시스템 자원부(200)에 접근을 시도하면, DMA 드라이버(310)에 관련되는 입출력 스페이스(I/O space) 및 IRQ에 대한 접근을 허용하고, 그렇지 않으면, DMA 드라이버(310)에 관련되는 입출력 스페이스(I/O space) 및 IRQ 넘버에 대한 접근을 차단한다.The
상기 접근제어 모듈(320)은 각 도메인(110, 120, ...) 별로 시스템 자원부(200)에 대한 접근 권한을 달리 설정하며, 시스템 자원부(200)에 대한 접근 권한에 따라 각 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)에 요청한 I/O 스페이스 및 IRQ 넘버의 할당을 제어한다. 보다 상세하게는, 접근제어 모듈(320)은 소정의 접근제어 정책에 따라 시스템 자원부(200)에 대한 디바이스 드라이버(111, 121, ...)의 접근이 허용되면, 디바이스 드라이버(111, 121, ,,,)에 요청한 I/O 스페이스 및 IRQ 넘버를 할당하고, 접근이 허용되지 않으면, 요청한 I/O 스페이스 및 IRQ 넘버를 할당하지 않는다.The
상기 접근제어 모듈(320)은 시스템 자원부(200)에 대하여 각 도메인(110, 120, ...)의 과도한 사용 접근을 제한한다. 보다 상세하게는, 접근제어 모듈(320)은 각 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)가 시스템 자원부(200)의 메모리(240)를 허용 기준치 이상으로 사용하는 경우, 소정의 접근제어 정책에 따라 메모리(240)에 대한 해당 도메인의 접근을 차단한다. 또한, 접근제어 모듈(320)은 각 도메인(110, 120, ...) 간의 이벤트 채널 형성시, 소정의 접근제어 정책에 따라 각 도메인(110, 120, ...)이 허용 기준치 이상의 이벤트 채널을 형성할 수 없도록 차단한다.The
이하, 도 3 내지 5를 참조하여, 본 발명의 일 실시예에 따른 가상화 환경에서의 안전한 시스템 보호 방법을 구체적으로 설명한다.Hereinafter, a secure system protection method in a virtualization environment according to an embodiment of the present invention will be described in detail with reference to FIGS.
도 3은 본 발명의 가상화 환경에서의 안전한 시스템 보호 방법에 의해 디바이스 드라이버의 I/O 스페이스 할당 과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating an I / O space allocation process of a device driver according to a method of protecting a safe system in a virtualization environment according to the present invention.
도 3에 도시된 바와 같이, 본 발명은 제어부(300)의 접근제어 모듈(320)에서 각 도메인(110, 120, ...) 별로 시스템 자원부(200)에 대한 접근 권한을 달리 설정하며, 시스템 자원부(200)에 대한 접근 권한에 따라 각 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)에 요청한 I/O 스페이스 및 IRQ 넘버의 할당을 제어한다.3, the
보다 상세하게는, 시스템 자원부(200)에 대한 각 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)의 I/O 스페이스 할당을 요청한다(S101). 다음으로, 디바이스 드라이버(111, 121, ...)를 실행하는 도메인(110, 120, ...)이 제어부(300)의 접근제어 모듈(320)에 의해 결정되는 소정의 접근제어 정책에 따라 시스템 자원부(200)에 대한 접근 권한이 허용되는지를 판단한다(S102). 다음으로, 접근제어 정책에 따라 시스템 자원부(200)에 대하여 도메인(110, 120, ...)의 접근 권한이 허용되면, 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)에 요청한 I/O 스페이스 및 IRQ 넘버를 할당한다(S103). 그러나, 접근제어 정책에 따라 시스템 자원부에 대하여 도메인의 접근 권한이 허용되지 않으면 요청한 I/O 스페이스 및 IRQ 넘버를 할당하지 않는다.More specifically, the I / O space allocation request of the
도 4는 본 발명의 가상화 환경에서의 안전한 시스템 보호 방법에 의해 디바이스 드라이버가 DMA를 통해 시스템 메모리에 접근시 접근 제어 과정을 설명하기 위한 흐름도이다.FIG. 4 is a flowchart for explaining a process of access control when a device driver accesses a system memory through a DMA by a secure system protection method in a virtualization environment of the present invention.
도 4에 도시된 바와 같이, 본 발명은 제어부(300)의 접근제어 모듈(320)에서 각 도메인(110, 120, ...)의 디바이스 드라이버들(111, 121, ...)이 DMA 드라이버(310)를 통해 시스템 자원부(200)에 접근하는 동작을 제어한다.The
보다 상세하게는, 도메인(110, 120, ...)의 특정 디바이스 드라이버가 DMA를 통해서 시스템 자원부(200)의 메모리(240)에 접근을 요청한다(S201). 다음으로, 특정 디바이스 드라이버를 실행하는 도메인이 소정의 접근제어 정책에 의해 접근 권한이 허용되는 메모리(240)에 접근을 시도하는지를 판단한다(S202). 다음으로, 접근제어 정책에 의해 도메인(110, 120, ...)이 메모리(240)에 접근을 시도하면, 요청한 메모리(240)에 대하여 도메인(110, 120, ...)의 특정 디바이스 드라이버의 접근을 허용한다(S203). 그러나, 접근제어 정책에 의해 도메인(110, 120, ...)이 메모리(240)에 접근을 시도하지 않으면, 요청한 메모리(240)에 대하여 도메인(110, 120, ...)의 특정 디바이스 드라이버의 접근을 차단한다.More specifically, a specific device driver of the
도 5는 본 발명의 가상화 환경에서의 안전한 시스템 보호 방법에 의해 시스템 자원에 대한 도메인의 접근제어 과정을 설명하기 위한 흐름도이다.FIG. 5 is a flowchart illustrating a domain access control process for system resources according to a secure system protection method in a virtualization environment of the present invention.
도 5에 도시된 바와 같이, 본 발명은 제어부의 접근제어 모듈에서 시스템 자 원부에 대하여 각 도메인의 과도한 사용 접근을 제한한다. As shown in FIG. 5, the present invention restricts excessive use of each domain to the system resource in the access control module of the control unit.
보다 상세하게는, 다수개의 도메인들(110, 120, ...) 중 적어도 하나의 도메인에서 시스템 자원의 할당을 요청한다(S301). 다음으로, 도메인에서 요청한 시스템 자원의 할당량이 소정의 접근제어 정책에 의해 설정된 기준치를 초과하지 않는지를 판단한다(S302). 다음으로, 접근제어 정책에 의해 도메인이 요청한 시스템 자원의 할당량이 설정된 기준치 이하이면, 도메인에 요청한 시스템 자원의 할당을 허용한다(S303). 그러나, 접근제어 정책에 의해 도메인이 요청한 시스템 자원의 할당량이 설정된 기준치 이상이면, 도메인에 요청한 시스템 자원의 할당을 허용하지 않는다. 예를 들어, 접근제어 모듈(320)은 각 도메인(110, 120, ...)의 디바이스 드라이버(111, 121, ...)가 시스템 자원부(200)의 메모리(240)를 허용 기준치 이상으로 사용하는 경우, 메모리(240)에 대하여 해당 도메인의 접근을 차단하다. 또한, 접근제어 모듈(320)은 각 도메인(110, 120, ...) 간의 이벤트 채널 형성시, 각 도메인(110, 120, ...)이 허용 기준치 이상의 이벤트 채널을 형성할 수 없도록 차단한다.In more detail, at least one of the plurality of
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.
도 1은 종래의 가상화 시스템 장치의 구성을 도시한 블록도.1 is a block diagram showing the configuration of a conventional virtualization system apparatus;
도 2는 본 발명의 일 실시예에 따른 가상화 환경에서 안전한 시스템 보호 장치의 구성을 도시한 블록도.2 is a block diagram illustrating a configuration of a secure system protection apparatus in a virtualization environment according to an embodiment of the present invention;
도 3은 본 발명의 가상화 환경에서 안전한 시스템 보호 방법에 의해 디바이스 드라이버의 I/O 스페이스 및 및 IRQ 넘버 할당 과정을 설명하기 위한 흐름도.FIG. 3 is a flowchart illustrating an I / O space and an IRQ number allocation process of a device driver according to a method for safely protecting a system in a virtualization environment of the present invention. FIG.
도 4는 본 발명의 가상화 환경에서 안전한 시스템 보호 방법에 의해 디바이스 드라이버가 DMA를 통해 시스템 메모리에 접근시 접근 제어 과정을 설명하기 위한 흐름도.FIG. 4 is a flowchart for explaining a process of access control when a device driver accesses a system memory through a DMA by a secure system protection method in a virtualization environment of the present invention. FIG.
도 5는 본 발명의 가상화 환경에서 안전한 시스템 보호 방법에 의해 시스템 자원에 대한 도메인의 접근제어 과정을 설명하기 위한 흐름도.FIG. 5 is a flowchart illustrating a domain access control process for a system resource by a secure system protection method in a virtualization environment of the present invention. FIG.
< 도면의 주요 부분에 대한 부호의 설명 >Description of the Related Art
100 : 도메인부 110, 120, ... : 도메인 100:
111, 121, ... : 디바이스 드라이버 200 : 시스템 자원부 111, 121, ...: Device driver 200:
300 : 제어부 310 : DMA 드라이버 300: control unit 310: DMA driver
320 : 접근제어 모듈320: access control module
Claims (18)
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/034,178 US8689288B2 (en) | 2007-04-16 | 2008-02-20 | Apparatus and method for protecting system in virtualized environment |
| JP2008074946A JP5496464B2 (en) | 2007-04-16 | 2008-03-24 | Apparatus and method for secure system protection in a virtualized environment |
| EP08153591.6A EP1983460B1 (en) | 2007-04-16 | 2008-03-28 | Apparatus and method for protecting system in virtualized environment |
| CN2008100911004A CN101290646B (en) | 2007-04-16 | 2008-04-16 | Apparatus and method for protecting system in virtualized environment |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US91193007P | 2007-04-16 | 2007-04-16 | |
| US60/911,930 | 2007-04-16 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20080093359A KR20080093359A (en) | 2008-10-21 |
| KR101405319B1 true KR101405319B1 (en) | 2014-06-10 |
Family
ID=40034900
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020070110296A Expired - Fee Related KR101405319B1 (en) | 2007-04-16 | 2007-10-31 | Devices and methods for secure system protection in virtualized environments |
Country Status (2)
| Country | Link |
|---|---|
| KR (1) | KR101405319B1 (en) |
| CN (1) | CN101290646B (en) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9117091B2 (en) * | 2010-10-31 | 2015-08-25 | Temporal Defense Systems, Llc | System and method for securing virtual computing environments |
| KR101323858B1 (en) * | 2011-06-22 | 2013-11-21 | 한국과학기술원 | Apparatus and method for controlling memory access in virtualized system |
| KR101469894B1 (en) * | 2011-08-12 | 2014-12-08 | 한국전자통신연구원 | Method and apparatus for providing secure execution environment based on domain separation |
| KR101710684B1 (en) | 2015-09-10 | 2017-03-02 | (주) 세인트 시큐리티 | System and method of recovering operating system anayzing malicious code not operating in virtual environment |
| US9992212B2 (en) * | 2015-11-05 | 2018-06-05 | Intel Corporation | Technologies for handling malicious activity of a virtual network driver |
| US9984009B2 (en) * | 2016-01-28 | 2018-05-29 | Silicon Laboratories Inc. | Dynamic containerized system memory protection for low-energy MCUs |
| KR20190021673A (en) * | 2017-08-23 | 2019-03-06 | 주식회사 수산아이앤티 | Apparatus and method for preventing ransomware |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002041304A (en) | 2000-07-28 | 2002-02-08 | Hitachi Ltd | Method for automatically assigning spare resources to logical partitions and logical partition type computer system |
| US20030187904A1 (en) * | 2002-04-01 | 2003-10-02 | Bennett Joseph A. | Device virtualization and assignment of interconnect devices |
| JP2004199561A (en) | 2002-12-20 | 2004-07-15 | Hitachi Ltd | Computer resource allocation method, resource management server and computer system for executing the method |
| JP2006506754A (en) * | 2002-11-18 | 2006-02-23 | エイアールエム リミテッド | Controlling device access to memory |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2325061B (en) * | 1997-04-30 | 2001-06-06 | Advanced Risc Mach Ltd | Memory access protection |
| JP4519738B2 (en) * | 2005-08-26 | 2010-08-04 | 株式会社東芝 | Memory access control device |
-
2007
- 2007-10-31 KR KR1020070110296A patent/KR101405319B1/en not_active Expired - Fee Related
-
2008
- 2008-04-16 CN CN2008100911004A patent/CN101290646B/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002041304A (en) | 2000-07-28 | 2002-02-08 | Hitachi Ltd | Method for automatically assigning spare resources to logical partitions and logical partition type computer system |
| US20030187904A1 (en) * | 2002-04-01 | 2003-10-02 | Bennett Joseph A. | Device virtualization and assignment of interconnect devices |
| JP2006506754A (en) * | 2002-11-18 | 2006-02-23 | エイアールエム リミテッド | Controlling device access to memory |
| JP2004199561A (en) | 2002-12-20 | 2004-07-15 | Hitachi Ltd | Computer resource allocation method, resource management server and computer system for executing the method |
Also Published As
| Publication number | Publication date |
|---|---|
| CN101290646B (en) | 2013-05-01 |
| CN101290646A (en) | 2008-10-22 |
| KR20080093359A (en) | 2008-10-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3326104B1 (en) | Technologies for secure trusted i/o access control | |
| US10789371B2 (en) | Technologies for trusted I/O with a channel identifier filter and processor-based cryptographic engine | |
| KR101405319B1 (en) | Devices and methods for secure system protection in virtualized environments | |
| US20110078760A1 (en) | Secure direct memory access | |
| TWI570589B (en) | Apparatus for providing trusted computing | |
| EP3103056B1 (en) | Methods and apparatus for protecting operating system data | |
| RU2444783C2 (en) | Virtual security module architecture | |
| EP3008656B1 (en) | Secure privilege level execution and access protection | |
| EP3842973B1 (en) | Security schemes for multiple trusted-execution-environments (tees) and multiple rich-execution-environments (rees) | |
| US9607177B2 (en) | Method for securing content in dynamically allocated memory using different domain-specific keys | |
| EP1983460B1 (en) | Apparatus and method for protecting system in virtualized environment | |
| US20080005794A1 (en) | Information Communication Device and Program Execution Environment Control Method | |
| US8627069B2 (en) | System and method for securing a computer comprising a microkernel | |
| US10250595B2 (en) | Embedded trusted network security perimeter in computing systems based on ARM processors | |
| GB2557305A (en) | Memory protection logic | |
| CN105308610A (en) | Method and system for platform and user application security on a device | |
| US9244863B2 (en) | Computing device, with data protection | |
| KR102493066B1 (en) | Fine-grained isolation to protect data against in-process attacks | |
| KR101506254B1 (en) | Wireless telephone apparatus and method for protecting system resources | |
| JP5496464B2 (en) | Apparatus and method for secure system protection in a virtualized environment | |
| CN114722404B (en) | Method and system for realizing any number of EAPP based on RISC-V | |
| US10824766B2 (en) | Technologies for authenticated USB device policy enforcement | |
| US20190042473A1 (en) | Technologies for enabling slow speed controllers to use hw crypto engine for i/o protection | |
| CN116635855A (en) | Apparatus and method for managing access of executable code to data memory based on execution context | |
| KR101426479B1 (en) | Storage information protection systems and methods |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-3-3-R10-R18-oth-X000 |
|
| A201 | Request for examination | ||
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| FPAY | Annual fee payment |
Payment date: 20170529 Year of fee payment: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| FPAY | Annual fee payment |
Payment date: 20180530 Year of fee payment: 5 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| FPAY | Annual fee payment |
Payment date: 20190530 Year of fee payment: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20210603 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20210603 |