KR20110004138A - Method for providing security for application virtualization - Google Patents
Method for providing security for application virtualization Download PDFInfo
- Publication number
- KR20110004138A KR20110004138A KR1020090061787A KR20090061787A KR20110004138A KR 20110004138 A KR20110004138 A KR 20110004138A KR 1020090061787 A KR1020090061787 A KR 1020090061787A KR 20090061787 A KR20090061787 A KR 20090061787A KR 20110004138 A KR20110004138 A KR 20110004138A
- Authority
- KR
- South Korea
- Prior art keywords
- application
- data
- executable
- stored
- security
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Abstract
Description
본 발명은 애플리케이션 가상화를 위한 보안 제공방법에 관한 것으로, 보다 상세하게는 상기 특정 장치에 가상화된 상태의 애플리케이션이 다른 장치에서 실행되는 과정에서 발생할 수 있는 문제점들을 위한 다양한 보안기법을 제공할 수 있는 방법에 관한 것이다.The present invention relates to a method for providing security for application virtualization, and more particularly, to a method for providing various security techniques for problems that may occur when an application virtualized on a specific device is executed on another device. It is about.
오늘날 IT시스템 분야는 전세계적으로 시스템의 가상화를 통해 비용을 절감하고, 업무 효율을 높이기 위한 노력을 경쟁적으로 벌여나가고 있다. 하드웨어를 가상화하여 하드웨어의 유휴시간을 나눠 여러 시스템을 동시에 설치함으로써 시스템을 효과적으로 사용할 수 있게 되었고, 소프트웨어 스트리밍 기술이나 로밍 기술을 적용한 애플리케이션 가상화를 통하여 소프트웨어 라이센스 비용을 절감하고, 소프트웨어의 장애 요소를 줄여 유지보수 비용을 절감하고 있다. Today, the IT system field is competing globally to reduce costs and improve work efficiency through system virtualization. By virtualizing the hardware, you can install multiple systems at the same time by dividing the idle time of the hardware to effectively use the system, and reduce software license costs and reduce software obstacles through application virtualization using software streaming or roaming technology. It is reducing the maintenance cost.
가상화(Virtualization)는 지금까지 IT 자원의 효용을 높여 지금까지의 많은 문제점을 해결할 수 있는 방법이기 때문에 다양한 분야에 가상화를 도입하는 기업이 늘어나고 있으며, 그에 따라 다양한 방법의 가상화 기술을 개발하여 사업화하는 기업도 증가하고 있는 추세이다. 가상화는 이제 IT 인프라에서 광범위하게 사용되는 용어가 되었으며, 각 기업은 제 각기 서버기반 가상화부터 프리젠테이션 가상화, 애플리케이션 가상화, 데스크탑 가상화, 스토리지 가상화, 네트워크 가상화까지 IT인프라의 물리적인 기반의 한계를 넘어 IT서비스의 효율성 증대를 위해 가상화 기술을 다투어 개발하여 소개하고 있다.Since virtualization is a method that can solve many problems until now by increasing the utility of IT resources, more and more companies are adopting virtualization in various fields, and accordingly, companies that develop and commercialize various methods of virtualization technology The trend is also increasing. Virtualization is now a widely used term in IT infrastructures, and each company is moving beyond the physical infrastructure of IT infrastructure, from server-based virtualization to presentation virtualization, application virtualization, desktop virtualization, storage virtualization, and network virtualization. In order to increase the efficiency of services, virtual technology has been developed and introduced.
이중 애플리케이션 가상화는 여러 가지 가상화 기술 중 중요한 부분을 차지하고 있다. 애플리케이션 가상화는 소프트웨어 스트리밍(streming) 기술을 이용하여 중앙의 서버에서 스트리밍된 애플리케이션을 시스템의 가상 영역에서 실행시키는 방법과 소프트웨어 로밍 기술을 이용하여 포터블(portable)로 설치된 애플리케이션을 어떤 장치(예컨대, 컴퓨터)에서나 쉽게 사용할 수 있도록 하는 방법이 있다.Dual application virtualization is an important part of many virtualization technologies. Application virtualization uses software streaming technology to run applications streamed from a central server in a virtual area of the system, and software roaming technology enables portable devices to be installed on any device (eg computer). There is a way to make it easier to use.
이러한 애플리케이션 가상화는 시스템의 고가용성을 높이고, 애플리케이션 로밍을 통한 업무 효율을 높여줄 수 있지만, 기존의 보안제품들을 그대로 적용할 수 없는 새로운 영역이 존재하게 된다는 공통점이 있다. 즉, 가상화된 시스템(애플리케이션)이 실제 프로세싱 장치에서 정상 동작하기 위해서는 가상화된 애플리케이션을 상기 실제 프로세싱 장치의 운영체제에서 동작할 수 있도록 변화해주는 과정이 필요하다. 이러한 과정을 리얼라이제이션(realization) 과정이라 할 수 있다. Such application virtualization can increase the system's high availability and improve the work efficiency through application roaming, but there is a new area in which existing security products cannot be applied. That is, in order for a virtualized system (application) to operate normally on an actual processing device, a process of changing the virtualized application to operate on an operating system of the actual processing device is required. This process can be referred to as a realization process.
가상화된 환경에서 수행되는 애플리케이션도 기존에 알려진 모든 보안 위협을 안고 있을 뿐만 아니라 전통적인 환경에서는 없었던 새로운 보안 위험도 발생하게 된다. Applications running in virtualized environments pose not only all known security threats, but also new security risks not found in traditional environments.
중앙 서버에 설치된 애플리케이션을 스트리밍 방식에 의해 수행하는 경우 데이터 가상화를 통해 데이터의 망실에 대한 위험은 줄어들 수 있으나, 클라이언트 에서 실행되는 동안 데이터의 누출을 직접 차단할 순 없으며, 악의적으로 가공된 데이터나 애플리케이션은 여러 클라이언트에 피해를 확산시킬 위험이 있다.When running applications installed on a central server by streaming, data virtualization can reduce the risk of data loss, but cannot directly prevent data leakage while running on the client. There is a risk of spreading damage to multiple clients.
또한, USB 저장장치 등에 포터블로 설치되어 애플리케이션의 로밍에 의한 요율을 높이는 방식의 가상화의 경우에는 문제가 더욱 심각하여 데이터 및 애플리케이션의 누출에 대한 위험이나 바이러스 감염 등에 의한 피해 확산을 극대화시킬 위험이 있다.In addition, in the case of the virtualization method that is installed as a portable USB storage device to increase the rate by roaming the application, the problem is more serious, and there is a risk of maximizing the spread of damage caused by data or application leakage or virus infection. .
이러한 위험에 대해 기존 방식의 보안제품의 경우 매체에 저장되어있는 가상화된 애플리케이션이나 데이터와 컴퓨터 등에서 실행될 때의 애플리케이션이나 데이터가 차이가 있기 때문에 정확하게 실행중인 애플리케이션을 보호하거나 데이터 누출을 차단할 수 없게 된다.Against this risk, traditional security products can't protect applications that are running correctly or prevent data leakage because there is a difference between the virtualized application or data stored in the media and the application or data when executed on a computer.
따라서, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법은 애플리케이션 가상화에 있어서, 가상화된 애플리케이션이 특정 프로세싱 장치에서 실행될 때, 가상화된 애플리케이션과 실제로 수행되는 애플리케이션의 대응 관계를 분석하고, 분석된 대응관계를 통해 프로세싱 장치에서 실행되는 애플리케이션과 데이터를 보호할 수 있는 방법을 제공하는 것이다. Accordingly, the method for providing security for application virtualization according to an embodiment of the present invention, in application virtualization, analyzes the correspondence between the virtualized application and the actually executed application when the virtualized application is executed in a specific processing device. Correspondence provides a way to protect applications and data running on processing devices.
상기 기술적 사상을 제공하기 위한 애플리케이션 가상화를 위한 보안 제공방법은 저장형 애플리케이션 및 저장형 데이터가 저장된 제1프로세싱 장치가 제2프로세싱 장치에 연결되고, 상기 제2프로세싱 장치에 의해 상기 저장형 애플리케이션이 실행되는 단계, 상기 저장형 애플리케이션이 실행되면, 상기 제1프로세싱 장치에 포함된 보안모듈이 상기 제2프로세싱 장치에 로딩되고, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각에 대응되고 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터의 형태로 변환되어 상기 호스트 장치에 설치되는 단계, 및 설치된 상기 실행형 애플리케이션이 실행되면, 로딩된 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 소정의 보안 정책정보에 기초하여 제어하는 단계를 포함한다.In the security provision method for application virtualization for providing the technical idea, a first processing device storing a storage application and the storage data is connected to a second processing device, and the storage application is executed by the second processing device. When the stored application is executed, a security module included in the first processing device is loaded into the second processing device, and each of the stored application and the stored data is stored in the stored application and the stored type. Converting into a form of an executable application and executable data corresponding to each data and executable in the second processing device, and installing the executable data on the host device; and when the installed executable application is executed, the loaded security module is loaded. The executable data and the thread The access control type of the application includes the step of controlling, based on a predetermined security policy information.
상기 애플리케이션 가상화를 위한 보안 제공방법은 상기 제1프로세싱 장치에 포함된 매핑모듈이 상기 제2프로세싱 장치에서 실행되는 단계를 더 포함하며, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각에 대응되고 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터의 형태로 변환되어 상기 호스트 장치에 설치되는 단계는, 실행된 상기 매핑모듈이 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 형태로 변환되는 과정을 분석하여, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 대응관계를 나타내는 매핑 데이 터를 생성하는 단계를 포함하며, 상기 보안모듈은 생성된 상기 매핑 데이터 및 상기 보안정책 정보에 기초하여 상기 실행형 애플리케이션 및 상기 실행형 데이터에 대한 접근통제를 제어할 수 있다.The security providing method for application virtualization further includes the step of executing the mapping module included in the first processing device in the second processing device, wherein each of the stored application and the stored data is the stored application and Converting into a form of an executable application and executable data corresponding to each of the stored data and executable in the second processing device, and installing in the host device may include executing the mapping module with the stored application and the stored data. Analyzing a process of converting each of the stored data into the form of the executable application and the executable data, and mapping each of the stored application and the stored data to indicate a correspondence between the executable application and the executable data. To generate data It includes a system, the security module may be based on the generated map data and the security policy information to control the running type application and access control for the data alone.
상기 보안정책 정보는 사용자로부터 입력되어 상기 매핑모듈에 저장될 수 있다.The security policy information may be input from a user and stored in the mapping module.
상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 소정의 보안 정책정보에 기초하여 제어하는 단계는 상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지 또는 함수 중 적어도 하나를 제어하는 단계를 포함할 수 있다.The controlling of the access control for the executable data and the executable application by the security module based on predetermined security policy information may be performed by the security module for accessing at least one of the executable application or the executable data. Controlling at least one of the message or the function.
상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지 또는 함수 중 적어도 하나를 제어하는 단계는 로딩된 상기 보안모듈이 상기 제2프로세싱 장치에서 수행되는 소정의 프로세스로부터 출력되는 또는 함수 중 적어도 하나를 후킹(hooking)하는 단계, 후킹된 상기 또는 함수 중 적어도 하나가 상기 보안정책 정보에 상응하는지를 판단하는 단계, 및 판단결과 상기 보안정책 정보에 상응하지 않는 경우, 상기 메시지 또는 함수 중 적어도 하나가 수행되지 않도록 제어하는 단계를 포함할 수 있다.The controlling the at least one of a message or a function for accessing at least one of the executable application or the executable data by the security module may be performed by the loaded security module from a predetermined process performed by the second processing device. Or hooking at least one of a function, determining whether at least one of the hooked or the function corresponds to the security policy information, and if the determination does not correspond to the security policy information, the message or And controlling at least one of the functions to not be performed.
상기 보안정책 정보는 상기 실행형 데이터 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케 이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함할 수 있다.The security policy information may be stored in a location where at least one of information about an application accessible to at least one of the executable data or generated data generated based on the executable data, the executable data, or the generated data may be stored. Information about the user, or information about a user who can use the executable application or the accessible application.
상기 애플리케이션 가상화를 위한 보안 제공방법은 상기 실행 애플리케이션이 설치되면서 소정의 등록정보가 상기 제2프로세싱 장치에 등록된 경우, 상기 보안모듈은 상기 실행 애플리케이션의 실행이 종료된 후에 상기 소정의 등록정보를 삭제하는 단계를 더 포함할 수 있다.In the security providing method for application virtualization, when predetermined execution information is registered in the second processing device while the execution application is installed, the security module deletes the predetermined registration information after the execution of the execution application ends. It may further comprise the step.
상기 제1프로세싱 장치는 상기 제2프로세싱 장치와 네트워크를 통해 연결될 수 있는 서버 또는 상기 제2프로세싱 장치에 연결될 수 있는 이동형 메모리 장치 중 적어도 하나를 포함하는 것을 특징으로 할 수 있다. 상기 애플리케이션 가상화프로그램을 기록한 컴퓨터 판독가능한 기록매체에 저장될 수 있다.The first processing device may include at least one of a server that can be connected to the second processing device through a network or a portable memory device that can be connected to the second processing device. The application virtualization program may be stored in a computer-readable recording medium having recorded thereon.
본 발명에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의하면, 애플리케이션 가상화를 위한 가상화된 정보와 실제 시스템에 사용되는 정보의 차이로 인한 보안상의 문제점을 해결할 수 있으며, 사용자가 원하는대로 보안을 설정할 수있으며, 사용자의 의사에 반해서 다른 장치로 저장된 정보가 유출되는 경우를 원천적으로 차단할 수 있다. According to the security providing method for application virtualization according to the present invention, it is possible to solve the security problems caused by the difference between the virtualized information for the application virtualization and information used in the actual system, the user can set the security as desired, If the information stored on the other device is leaked against the user's intention, the source can be blocked.
또한, 상기 가상화된 애플리케이션 프로그램의 실행을 위해 소정의 등록정보를 특정 장치의 OS에 등록하여야 하는 경우에도, 상기 특정 장치에서의 사용이 종료되면 자동으로 등록정보를 삭제할 수 있으므로 혹시 등록정보를 이용하여 유출될 수 있는 정보를 차단할 수 있으며, 상기 특정 장치의 입장에서도 불필요한 정보가 저장되어 유지되는 것을 막을 수 있는 효과가 있다.In addition, even if it is necessary to register the predetermined registration information in the OS of a specific device to execute the virtualized application program, when the use of the specific device is terminated, the registration information may be automatically deleted. Information that can be leaked can be blocked, and there is an effect of preventing unnecessary information from being stored and maintained even from the viewpoint of the specific device.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.In order to fully understand the present invention, the operational advantages of the present invention, and the objects achieved by the practice of the present invention, reference should be made to the accompanying drawings which illustrate preferred embodiments of the present invention and the contents described in the accompanying drawings.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.
도 1은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위한 개략적인 구성을 나타낸다.1 is a schematic diagram illustrating a security providing method for application virtualization according to an exemplary embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해서는 제1프로세싱 장치(100) 및 제2프로세싱 장치(200)가 구비될 수 있다.1, a
상기 제1프로세싱 장치(100)는 본 발명의 기술적 사상을 구현하기 위해 가상 화된 애플리케이션을 저장하고 있는 모든 유형의 데이터 프로세싱 장치를 포함하는 의미로 사용될 수 있다. 예컨대, 상기 제1프로세싱 장치(100)는 소정의 네트워크를 통하여 상기 제2프로세싱 장치(200)와 연결될 수 있는 소정의 서버로 구현될 수 있으며, 이때는 상기 제2프로세싱 장치(100)는 스트리밍을 통해 가상화된 애플리케이션을 상기 서버로부터 제공받을 수 있다. 다른 실시 예에 의하면, 상기 제1프로세싱 장치(100)는 소정의 이동형 메모리 장치(예컨대, USB(Universal Serial Bus) 장치)일 수 있으며, 이때는 상기 제2프로세싱 장치(200)는 로밍을 통해 상기 이동형 메모리 장치로부터 가상화된 애플리케이션을 제공받을 수 있다.The
상기 가상화된 애플리케이션은 소정의 저장형 애플리케이션(2) 및 저장형 데이터(3)를 포함할 수 있다. 상기 저장형 애플리케이션(2)은 상기 저장형 애플리케이션(2)에 포함되고 실제 호스트 장치(200)에서 실행될 애플리케이션 즉, 실행형 애플리케이션이 가상화되어 패키징(packaging)된 애플리케이션일 수 있다. 상기 저장형 데이터(3)는 상기 실행형 애플리케이션이 사용 및/또는 참조하는 모든 데이터 파일을 포함하는 의미로 사용될 수 있다. 도 1에서는 상기 제1프로세싱 장치(100)에 포함된 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)는 논리적으로 구분될 수 있음을 표현하기 위해 별도로 표시한 것이며, 반드시 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)가 별도로 패키징되거나 별도의 파일로 구현되는 것을 의미하지는 않는다.The virtualized application may comprise a
상기 저장형 애플리케이션(2)에는 상기 제2프로세싱 장치(200)에 설치되어 상기 제2프로세싱 장치(200)에서 실행될 실제 애플리케이션인 실행형 애플리케이 션(20) 및 상기 실행형 애플리케이션(20)이 상기 제2프로세싱 장치(200)에 설치될 때 필요한 다양한 정보들이 같이 패키징 되어 있을 수 있다. 따라서, 상기 저장형 애플리케이션(2)에는 상기 저장형 애플리케이션(2)을 상기 제2프로세싱 장치(200)에서 디패키징(de-packaging)하기 위한 소정의 디패키징 장치가 추가되어 구현될 수 있다. 또한, 본 발명의 일 실시 예에 의하면, 상기 저장형 애플리케이션(2)에는 본 발명의 기술적 사상을 구현하기 위한 소정의 보안모듈(1)이 포함될 수 있다. 또한, 상기 저장형 애플리케이션(2)에는 본 발명의 기술적 사상을 구현하기 위한 소정의 매핑모듈(4)이 포함될 수도 있다. 물론 다른 실시 예에 의하면, 상기 보안모듈(1) 및/또는 매핑모듈(4)은 상기 제1프로세싱 장치(100)에 별도로 저장될 수 있으며, 상기 제1프로세싱 장치(100)에 저장된 상기 가상화된 애플리케이션의 리얼라이제이션(realzation)이 시작되면, 상기 제2프로세싱 장치(200)의 소정의 메모리에 로딩되어 활성화될 수 있다. 리얼라이제이션이라 함은, 상기 가상화된 애플리케이션이 제2프로세싱 장치(200)와 같이 특정 데이터 프로세싱 장치에서 실행되기 위해 상기 제2프로세싱 장치(200)의 환경에 맞도록 변환 및 설치되는 일련의 과정을 의미할 수 있다. 또한, 상기 실행형 데이터(30) 및 상기 실행형 데이터(30)가 변경되거나 새롭게 생성된 생성데이터는 다시 소정의 가상화된 저장형 데이터인 제2 저장형 데이터로 가상화되어 상기 제1프로세싱 장치(100)에 저장될 수도 있다. The
상기 가상화된 애플리케이션의 리얼라이제이션 과정이 완료되면, 상기 제2프로세싱 장치(200)에는 실행형 애플리케이션(20) 및 상기 실행형 애플리케이션(30)이 사용 및/또는 참조하는 실행형 데이터(30)가 설치될 수 있다. 상기 실행형 애플 리케이션(20)은 상기 제2프로세싱 장치(200)에 의해 사용 및 접근될 수 있으며, 이때에는 미리 결정된 소정의 보안정책에 의해 통제(제어)될 수 있다. 이러한 과정은 도 2에서 도시된다.When the realization process of the virtualized application is completed, the
도 2는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 리얼라이제이션이 완료된 경우의 제2프로세싱 장치의 구성을 개략적으로 나타낸다.2 schematically illustrates a configuration of a second processing apparatus when realization is completed by a method for providing security for application virtualization according to an embodiment of the present invention.
도 1 및 도 2를 참조하면, 상기 보안모듈(1)은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법의 기술적 사상을 구현하기 위해, 제2프로세싱 장치(200)에 로딩되어 상기 제2프로세싱 장치(200)의 데이터 흐름을 모니터링 및 제어할 수 있다. 이를 위해 상기 보안모듈(1)은 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)에 직접 또는 네트워크를 통하여 연결된 후, 상기 저장형 애플리케이션(2)이 사용자에 의해 선택 또는 실행되면, 상기 보안모듈(1)은 상기 호스트 장치(200)의 메인 메모리에 로딩(loading)될 수 있다. 또한, 상기 저장형 애플리케이션(2)와 결합된 소정의 디패키져는 상기 제2프로세싱 장치(200)에 설치될 소정의 실행형 애플리케이션(예컨대, 21, 22)을 디패키징하고, 디패키징된 파일들은 상기 제2프로세싱 장치(200)에 설치될 수 있다. 1 and 2, the
또한, 상기 보안모듈(1)은 도 2에 도시된 바와 같이 소정의 가상 머신(virtual machine) 상에서 동작하여, 상기 호스트 장치(200)의 여러 리소스(예컨대, 로딩된 다른 프로세스 또는 디바이스(device)들)에 의해 요청되는 메시지(message)들을 모니터링 할 수 있다. 또한 모니터링 한 메시지(또는 요청)이 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합하지 않는 경우, 요청된 메시지가 처리되지 않도록 제어함으로써 본 발명의 기술적 사상을 구현하는 방법을 제공할 수 있다. 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합되는 요청이라 함은 소정의 보안정책 정보에 상응하는 요청을 의미할 수 있다. 상기 보안정책 정보는 별도의 파일로 존재할 수도 있으며, 후술하는 바와 같이 소정의 매핑모듈(4)이 저장할 수도 있다.In addition, the
상기 매핑모듈(4)은 관리자로부터 설정되는 소정의 보안정책 정보를 포함할 수 있다. 또한, 상기 저장형 애플리케이션(2)이 실행되는 경우, 상기 제2프로세싱 장치(200)에서 실행 및/또는 로딩되어 상기 저장형 애플리케이션(2)과 상기 실행형 애플리케이션(20) 및 상기 저장형 데이터(3)와 상기 실행형 데이터(30)의 대응관계에 대한 정보 즉, 매핑 데이터를 분석, 및 생성할 수 있다. The
왜냐하면, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)이 상기 제2프로세싱 장치(200)에서 실행되기 위해서는 상기 제2프로세싱 장치(200)에서 실행될 수 있는 실행형 애플리케이션(20)으로 변환되어야 한다. 이때는 상기 실행형 애플리케이션(20)이 설치된 경로와 소정의 등록정보는 상기 제2프로세싱 장치(200)별로 다를 수 있다. 따라서, 애플리케이션 가상화가 이루어지면 종래의 방법으로는 원하는 실제로 상기 제2프로세싱 장치(200)에서 어떠한 경로로 어떻게 설치되었는지를 정확히 알 수 없으면, 효과적인 보안방법을 제공할 수 없을 수 있다. 따라서, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서는 상기 매핑모듈(4)이 상기 매핑 데이터를 생성할 수 있다. 따라서, 상 기 매핑모듈(4)이 저장하고 있는 상기 보안정책 정보가 상기 저장형 애플리케이션(2) 및 상기 저장형 데이터(3) 각각에 대해 설정되더라도, 이에 대응되는 각각의 실행형 애플리케이션(20) 및 상기 실행형 데이터(30)에 상기 보안정책 정보가 적용될 수 있다. 물론, 저장형 데이터(3)도 상기 호스트 장치(200)에서 사용가능하기 위해서는 소정의 실행형 데이터(30)로의 변환과정이 필요할 수 있다.This is because the stored
또한, 상기 저장형 애플리케이션(2) 각각이 상기 제2프로세싱 장치(200)에서 실행되기 위해 상기 실행형 애플리케이션(20)으로 변환되어 상기 제2프로세싱 장치(200)에 설치되면, 상기 실행형 애플리케이션(20)이 실행될 환경을 위해 상기 제2프로세싱 장치(200)의 OS(Operating ysytem)에 등록되어야 할 정보인 소정의 등록정보(예컨대, 레지스트리(registry)에 등록될 정보, 또는 임시로 생성되는 임시파일에 대한 정보 등)가 있을 수 있다. 이러한 등록정보 역시 본 발명의 기술적 사상에 의한 보안정책의 대상이 될 수 있다. 또한, 이러한 등록정보는 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)에서 분리되거나 접속이 끊어지면, 상기 제2프로세싱 장치(200)에서 삭제되는 것이 바람직하다. 따라서, 상기 제1프로세싱 장치(100)에 저장되어 있던 어떠한 애플리케이션 및 데이터에 관련된 정보도 상기 제2프로세싱 장치(200)에 저장되지 않도록 하는 것이 바람직하다. 따라서, 이러한 등록정보도 본 발명의 실시 예에 의하면 관리 및 유지되는 것이 바람직하다.In addition, when each of the stored
이를 위해 본 발명의 실시 예에 따른 보안방법에 의하면, 상기 저장형 애플리케이션(2)이 실행되고, 실행에 응답하여 상기 보안모듈(1)이 로딩되면 상기 매핑모듈(4)이 활성화될 수 있으며, 상기 매핑모듈(4)은 이러한 등록정보도 분석 및 저 장할 수 있다. To this end, according to the security method according to an embodiment of the present invention, when the storage-type application (2) is executed, and the security module (1) is loaded in response to the execution, the mapping module (4) can be activated, The
상기 매핑모듈(4)은 상기 저장형 애플리케이션(2)이 실행형 애플리케이션(20)으로 상기 제2프로세싱 장치(200)에 설치되는 경우, 저장형 애플리케이션(2)에 포함된 각 프로그램 및/또는 코드가 실행형 애플리케이션(20)에 포함되는 어떤 프로그램 및/또는 코드와 대응되는지에 대한 정보를 생성 및 저장할 수 있다. The
도 3은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서의 매핑 데이터의 일 예를 나타낸다.3 illustrates an example of mapping data in a security providing method for application virtualization according to an embodiment of the present invention.
도 3에 도시된 바와 같이, 상기 매핑데이터에는 저장형 애플리케이션 (2)에 포함된 prg1이라는 코드가 디패키징되어 실행형 애플리케이션(20)인 PRG1으로 변환된다는 정보, 상기 PRG1이 어떤 파일로 구성되는지 여부, 상기 PRG1이 상기 제2프로세싱 장치(200)에서 설치된 경로 등이 포함될 수 있다.As shown in FIG. 3, the mapping data includes information that a code called prg1 included in the
또한, 저장형 데이터(3)인 dat1이 어떤 파일(예컨대, DAT1 등)으로 변환되었다는 정보 및/또는 변환된 파일이 설치된 경로 등이 상기 매핑 데이터에 포함될 수도 있다.In addition, the mapping data may include information indicating that dat1, which is the
또한, 전술한 바와 같이 소정의 등록정보가 상기 제2프로세싱 장치(200)에 등록되는 경우, 상기 매핑모듈(4)은 상기 등록정보를 분석하고 상기 매핑데이터에 포함시킬 수도 있다. 예컨대, prg1이 PRG1으로 변환되어 설치되는 경우에 레지스트리에 소정의 정보 a가 등록되어야 하는 경우, 상기 매핑모듈(4)은 상기 정보 a가 상기 prg1 또는 상기 PRG1에 상응하는 등록정보이며, 상기 정보 a가 등록된 레지스트리에 대한 정보를 저장할 수 있다. 이처럼, 생성된 매핑 데이터와 상기 보안정책 정보에 기초하여 상기 보안모듈(1)은 상기 실행형 애플리케이션(20), 실행형 데이터(30), 상기 실행형 데이터(30)가 변경되거나 업데이트된 생성데이터의 접근통제를 수행할 수 있다.In addition, when predetermined registration information is registered in the
한편, 상기 보안정책 정보는 관리자가 상기 매핑모듈(4)을 통해 미리 설정할 수 있다. 즉, 관리자는 가상화된 애플리케이션을 생성하면서, 상기 가상화된 애플리케이션이 사용되어야 하는 정책정보를 설정할 수 있다. 설정된 보안정책 정보는 상기 매핑모듈(4)에 포함될 수 있으며, 리얼라이제이션을 통해 상기 매핑모듈(4)이 상기 제2프로세싱 장치(200)에서 실행(또는 로딩)되는 경우, 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 보안정책 정보에 기초하여 접근통제를 수행할 수 있다.Meanwhile, the security policy information may be set in advance by the administrator through the
상기 보안정책 정보는 상기 실행형 데이터(30) 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터(30) 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함할 수 있다. 물론, 상기 보안정책 정보는 상기 저장형 데이터(3) 또는 상기 저장형 애플리케이션(2)을 기준으로 설정될 수도 있지만, 상기 보안모듈(1)은 상기 매핑데이터에 기초하여 쉽게 대응되는 실행형 데이터(30) 또는 실행형 애플리케이션(20)을 기준으로 하는 정책정보를 파악할 수 있다. The security policy information includes information about an application accessible to at least one of the
예컨대, 관리자는 상기 실행형 데이터(30)에 접근하기 위해서는 반드시 상기 실행형 애플리케이션(20)을 이용하도록 설정할 수 있다. 즉, 상기 제1프로세싱 장치(100)에서 제공하는 애플리케이션만 상기 실행형 데이터(30) 및/또는 생성데이터에 접근하도록 설정할 수 있다. 따라서, 미리 설정된 애플리케이션이 아닌 다른 애플리케이션에 의해서는 상기 실행형 데이터(30)에 접근할 수 없게 된다. 또한, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)에 대응되는 실행형 애플리케이션(20)과 동일한 애플리케이션이 상기 제2프로세싱 장치(200)에 이미 설치되어 있는 경우에도, 본 발명의 실시 예에 의하면, 상기 제2프로세싱 장치(200)에 미리 설치된 호스트 프로그램이 아닌, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)에 대응되는 실행형 애플리케이션(20)이 실행되도록 할 수 있다. 따라서, 관리자는 상기 매핑모듈(4)을 통해 특정 기능을 제한하거나 특정 기능을 추가할 수 있으므로 관리자가 원치 않게 상기 실행형 데이터(30)가 사용되는 경우를 막을 수 있다. 또한, 실행형 데이터(30)에 접근 가능한 애플리케이션이 복수 개인 경우에도 관리자가 지정한 실행형 애플리케이션(30)만 특정 실행 데이터(30)에 접근하도록 할 수 있다. For example, an administrator may set to use the
또한, 관리자는 실행형 데이터(30) 또는 생성데이터가 저장될 수 있는 위치 및/또는 경로에 대한 정보를 설정할 수도 있다. 예컨대, 상기 실행형 데이터(30) 및/또는 생성데이터는 상기 제1프로세싱 장치(100) 또는 제2프로세싱 장치(200) 이외의 경로로는 저장되거나 복사되지 못하도록 설정할 수도 있다.In addition, the administrator may set the information on the location and / or path where the
또한, 관리자는 사용자에 기초한 보안정책 정보를 설정할 수도 있다. 이를 위해 상기 보안정책 정보에는 소정의 사용자 각각에 대한 인증정보를 포함할 수 있 으며, 인증정보가 입력된 경우에만 상기 실행형 애플리케이션(20), 실행형 데이터(30), 및/또는 생성데이터에 접근하도록 할 수도 있다. 사용자에 기초한 보안정책에는 상기 제2프로세싱 장치(200)의 유니크한 정보를 이용할 수도 있다. 예컨대, 상기 제2프로세싱 장치(200)가 소정의 이동형 메모리 장치인 경우, 상기 이동형 메모리 장치의 유니크(unique)한 식별정보가 상기 보안정책 정보에 포함될 수도 있다. 그러면, 미리 인증된 이동형 메모리 장치만 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 상술한 애플리케이션들을 사용할 수도 있다.따라서, 보안이 요구되는 특정 시스템에 다수의 사용자가 상기 이동형 메모리 장치를 이용하여 상기 특정 시스템을 이용할 수 있는 경우에 이러한 이동형 메모리 장치의 인증이 유용하게 적용될 수 있다. The administrator may also set security policy information based on the user. To this end, the security policy information may include authentication information for each predetermined user, and only if the authentication information is input to the
도 4는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해 보안모듈이 접근통제를 수행하는 방법을 설명하기 위한 도면이다.4 is a diagram illustrating a method of performing a security module access control for a method for providing security for application virtualization according to an embodiment of the present invention.
도 4를 참조하면, 저장형 애플리케이션(2)이 실행되면, 리얼라이제이션 과정이 수행될 수 있다. 이때 상기 보안모듈(1)이 상기 호스트 장치(200)의 메모리에 로딩될 수 있다(S100). 설치된 실행형 애플리케이션(20)이 PRG1이고, 상기 PRG1이 실행되면, 상기 실행 애플리케이션(PRG 1)에 상응하는 프로세스가 상기 메모리에 로딩될 수 있다(S200). 그러면 상기 보안모듈(1)은 상기 프로세스 또는 상기 호스트 장치(200)의 OS에서 호출되는(S400) 요청 즉, 메시지 또는 함수를 후킹할 수 있다(S500). 상기 함수는 다양한 API 함수를 포함할 수 있다. 또한, 상기 후킹은 API(Application Protocol Interface) 후킹을 사용할 수 있다. 그러면 상기 보안모 듈(1)은 후킹된 메시지(함수)를 분석하여, 상기 매핑모듈(4)에 포함된 보안정책 정보에 따라 접근통제를 제어할 수 있다. 예컨대, 상기 보안정책은 다음과 같을 수 있다. 상기 보안모듈(1)이 후킹된 메시지(함수)를 분석한 결과, 상기 메시지(함수)가 상기 실행형 데이터(30)에 포함된 데이터(예컨대, DAT 1) 또는 상기 실행형 애플리케이션(PRG 1)에 의해 생성된 데이터인 생성데이터(예컨대, NDAT1) 중 적어도 하나를 상기 제1프로세싱 장치(100)가 아닌 곳으로 저장하기 위한 I/O(Input/Ouput) 메시지(함수)인 경우, 상기 보안모듈(1)은 상기 I/O 메시지(함수)의 요청을 거절하는 응답 또는 메시지를 상기 메시지(함수)를 호출한 프로세스 또는 OS로 출력할 수 있다. 본 명세서에서 요청을 거절하는 응답 또는 메시지를 출력한다고 함은, 요청에 아무런 응답을 하지 않는 경우 즉, 널(Null) 메시지를 출력하는 경우를 포함할 수 있다. 상기 생성데이터는 상기 실행형 데이터(30)에 의해 포함된 데이터(예컨대, DAT1)이 업데이트된 데이터를 포함할 수 있다. 따라서, 본 발명의 실시 예에 의하면, 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)와 연결 및/또는 접속된 후에는 상기 실행 데이터(예컨대, DAT 1)를 사용할 수 있는 실행 애플리케이션(PRG 1)도 외부로는 데이터를 유출할 수 없도록 한다. 뿐만 아니라, 상기 실행 애플리케이션(20)에 포함된 프로그램이라도 관리자에 의해 특정 데이터(예컨대, DAT1)을 사용할 수 있도록 설정된 실행형 애플리케이션이 아니거나, 상기 실행형 애플리케이션(20)에 포함되지 않는 애플리케이션 프로그램(예컨대, 상기 제2프로세싱 장치(200)에 설치된 프로그램)은 상기 데이터(예컨대, DAT 1)에 접근을 할 수도 없도록 할 수 있다.Referring to FIG. 4, when the stored
이를 위해 상기 보안모듈(1)은 소정의 프로세스(예컨대, PRG A) 또는 상기 제2프로세싱 장치(200)의 OS에서 호출되는(S600) 메시지(또는 함수)를 후킹할 수 있다(S700). To this end, the
그러면, 상기 보안모듈(1)은 후킹된 메시지(또는 함수)를 분석하여, 상기 소정의 프로세스(예컨대, PRG A)가 상기 제2프로세싱 장치(200)에 설치된 애플리케이션이거나 상기 제1프로세싱 장치(100)에 포함된 애플리케이션이라도 특정 데이터(DAT 1)를 사용하도록 지정되지 않은 애플리케이션 프로그램에 상응하는 프로세스인지를 판단한다. 이때 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 매핑데이터를 참조할 수 있음은 물론이다. 따라서 이러한 매핑 데이터를 이용해 상기 메시지(또는 함수)가 실행형 데이터(30)에 관한 메시지인지 여부, 상기 실행형 데이터(30)에 접근할 수 있는 프로세스인지 여부, 및/또는 외부로 전송하려는지 여부를 판단할 수 있다. 판단결과 상기 소정의 프로세스(PRG A)가 상기 실행 데이터(DAT 1)에 접근할 수 없는 프로세스인 경우, 상기 보안모듈(1)은 상기 메시지(또는 함수)의 요청을 거절하는 응답(메시지)을 상기 메시지(또는 함수)를 호출한 프로세스 또는 OS로 출력할 수 있다.Then, the
한편, 사용자의 작업이 끝난 경우에는 상기 실행형 데이터(30) 및 생성데이터는 다시 제1프로세싱 장치(100)에 저장될 수 있다. 이를 위해 상기 보안모듈(1)은 상기 실행형 데이터(30) 및 생성데이터를 가상화(virtualization)하여, 가상화된 제2저장형 데이터를 생성할 수 있다. 생성된 제2저장형 데이터는 상기 저장형 데이터(3)에 사용자의 작업에 의한 생성데이터가 포함된 가상화된 데이터를 의미할 수 있다. 물론, 상기 제2저장형 데이터는 상기 저장형 데이터(3)와 동일한 이름으로 생성될 수 있다. 생성된 제2저장형 데이터는 상기 제1프로세싱 장치(100)에 저장될 수 있다. 이를 위해 상기 보안모듈(1)은 매핑모듈(4)에 저장된 매핑데이터를 통해 어떠한 실행형 데이터(30) 및/또는 생성데이터가 저장형 데이터(3)에 대응되는지를 확인하고, 확인된 정보에 기초하여 가상화를 수행할 수 있다.Meanwhile, when the user's work is finished, the
또한, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의하면, 상기 사용자가 필요한 작업을 끝낸 후에는 상기 실행형 애플리케이션(20)의 실행을 위해 상기 호스트 장치(200)에 등록한 소정의 등록정보(예컨대, 레지스트리 정보 등)까지도 모두 삭제될 수 있는 기술적 사상을 제공한다. 설치된 실행형 애플리케이션(20)도 물론 모두 삭제될 수 있다.In addition, according to the method for providing security for virtualization of an application according to an embodiment of the present invention, after the user completes a necessary task, a predetermined registration registered with the
이를 위해 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 등록정보와 상기 실행형 애플리케이션(20)에 대한 매핑정보 및/또는 경로 등에 대한 정보를 참조할 수 있음은 물론이다. 따라서, 상기 실행형 애플리케이션(20)이 설치되면서 소정의 등록정보가 상기 제2프로세싱 장치(200)에 등록된 경우, 상기 보안모듈(1)은 상기 실행형 애플리케이션(20)의 실행이 종료된 후에 상기 소정의 등록정보를 삭제할 수 있다. 삭제한다고 함은 상기 보안모듈(1)이 상기 제2프로세싱 장치(200)의 프로세서로 상기 호스트 장치(200)의 OS단 또는 로컬 저장 장치(즉, 파일 시스템)에 등록 또는 저장된 정보를 삭제하기 위한 소정의 제어신호(예컨대, 명령어)를 전송함을 의미할 수 있다. 이러한 정보에 기초하여 상기 제2프로세싱 장치(200)는 널리 공지된 바와 같은 소위, 언인스톨(uninstall)과 유사한 동작을 수행할 수 있다. 따라 서, 본 발명의 기술적 사상과 같이 애플리케이션 가상화를 위한 소정의 등록정보는 사용자가 제1프로세싱 장치(100)와의 접속이 끊어진 후에는 상기 제2프로세싱 장치(200)에서 삭제될 수 있다. 상기 보안모듈(1)이 상기 등록정보를 삭제하는 시점은 상기 실행형 애플리케이션(20)의 실행이 종료된 후이기만 하면 가능하다. 예컨대, 상기 실행형 애플리케이션(20)의 실행이 종료된 후 즉시 또는 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)와 접속 또는 연결이 끊어진 전후일 수 있다. 예컨대, 상기 제1프로세싱 장치(100)가 이동형 메모리 장치인 경우에는 상기 제2프로세싱 장치(200)에서 분리되기 전에 사용자가 상기 이동형 메모리 장치가 분리될 것이라는 정보를 미리 입력하게끔 하는 경우에는, 상기 정보가 입력된 후 상기 보안모듈(1)에 의해 상기 등록정보가 삭제될 수 있다. 또는 상기 이동형 메모리 장치가 분리되었음을 나타내는 소정의 신호가 상기 제2프로세싱 장치(예컨대, 호스트 장치, 200)에서 인식되는 경우, 상기 신호에 응답하여 상기 보안모듈(1)은 소정의 등록정보를 삭제한 후 상기 보안모듈(1)이 자동으로 종료될 수도 있다.To this end, the
본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안제공방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.Security providing method for application virtualization according to an embodiment of the present invention can be implemented as a computer-readable code on a computer-readable recording medium. Computer-readable recording media include all kinds of recording devices that store data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, optical data storage, and the like, and also in the form of carrier waves (e.g., transmission over the Internet). It also includes implementations. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. And functional programs, codes and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.BRIEF DESCRIPTION OF THE DRAWINGS In order to better understand the drawings cited in the detailed description of the invention, a brief description of each drawing is provided.
도 1은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위한 개략적인 구성을 나타낸다.1 is a schematic diagram illustrating a security providing method for application virtualization according to an exemplary embodiment of the present invention.
도 2는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 리얼라이제이션이 완료된 경우의 제2프로세싱 장치의 구성을 개략적으로 나타낸다.2 schematically illustrates a configuration of a second processing apparatus when realization is completed by a method for providing security for application virtualization according to an embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서의 매핑 데이터의 일 예를 나타낸다.3 illustrates an example of mapping data in a security providing method for application virtualization according to an embodiment of the present invention.
도 4는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해 보안모듈이 접근통제를 수행하는 방법을 설명하기 위한 도면이다.4 is a diagram illustrating a method of performing a security module access control for a method for providing security for application virtualization according to an embodiment of the present invention.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090061787A KR101089792B1 (en) | 2009-07-07 | 2009-07-07 | Method for providing security for application virtualization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090061787A KR101089792B1 (en) | 2009-07-07 | 2009-07-07 | Method for providing security for application virtualization |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110004138A true KR20110004138A (en) | 2011-01-13 |
KR101089792B1 KR101089792B1 (en) | 2011-12-07 |
Family
ID=43611800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090061787A KR101089792B1 (en) | 2009-07-07 | 2009-07-07 | Method for providing security for application virtualization |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101089792B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101429131B1 (en) * | 2013-06-12 | 2014-08-11 | 소프트캠프(주) | Device and method for securing system |
WO2016069595A1 (en) * | 2014-10-28 | 2016-05-06 | Openpeak Inc. | Method and system for exchanging content between applications |
-
2009
- 2009-07-07 KR KR1020090061787A patent/KR101089792B1/en active IP Right Grant
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101429131B1 (en) * | 2013-06-12 | 2014-08-11 | 소프트캠프(주) | Device and method for securing system |
WO2014200201A1 (en) * | 2013-06-12 | 2014-12-18 | 소프트캠프(주) | File security management apparatus and management method for system protection |
CN105453104A (en) * | 2013-06-12 | 2016-03-30 | 软件营地株式会社 | File security management apparatus and management method for system protection |
US9967263B2 (en) | 2013-06-12 | 2018-05-08 | Softcamp Co., Ltd. | File security management apparatus and management method for system protection |
CN105453104B (en) * | 2013-06-12 | 2018-10-09 | 软件营地株式会社 | System protection file security control device and management method |
WO2016069595A1 (en) * | 2014-10-28 | 2016-05-06 | Openpeak Inc. | Method and system for exchanging content between applications |
Also Published As
Publication number | Publication date |
---|---|
KR101089792B1 (en) | 2011-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3113063B1 (en) | System and method for detecting malicious code in random access memory | |
US10007541B2 (en) | Method for operating a mobile virtual environment upon connection to a host computer | |
US10462228B2 (en) | Providing access to a smartcard within a remote session | |
TWI620126B (en) | Method and computer-readable storage medium for expansion of services for a virtual data center guest computer system | |
JP5847734B2 (en) | Declarative registration of extension points for virtualization | |
CN109074450B (en) | Threat defense techniques | |
US20170286644A1 (en) | Protection Method and Device for Application Data | |
US10235189B2 (en) | Isolating a redirected smart card reader to a remote session | |
US10157120B2 (en) | Role-oriented testbed environments for use in test automation | |
US7797727B1 (en) | Launching an application in a restricted user account | |
US10635816B2 (en) | Restricting reprogramming of a redirected USB device | |
US20190197233A1 (en) | Automatic whitelisting using provisioning information | |
KR101089792B1 (en) | Method for providing security for application virtualization | |
CN114912103A (en) | Access control method and related device | |
WO2018045926A1 (en) | Method and device for use in accessing container | |
US8583837B2 (en) | Systems and methods for input/output isolation | |
US10831883B1 (en) | Preventing application installation using system-level messages | |
CN116450373A (en) | Code running method, device, equipment and computer readable storage medium | |
KR101772129B1 (en) | A smart storage system of checking contents integrity | |
KR101103795B1 (en) | Method for providing software virtualization system using portable medium | |
US10862757B2 (en) | Isolating a redirected biometric device to a remote session | |
KR20100090119A (en) | Method for providing security for application virtualization using portable memeory apparutus and the portable memory apparutus | |
CN111177728A (en) | Virtual equipment vulnerability mining method, device and medium | |
US11922211B2 (en) | System and method for cross-architecture trusted execution environment migration | |
KR101434794B1 (en) | The method and system for defending program hacking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20140930 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20151113 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181031 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20191111 Year of fee payment: 9 |