KR20110004138A - Method for providing security for application virtualization - Google Patents

Method for providing security for application virtualization Download PDF

Info

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
Application number
KR1020090061787A
Other languages
Korean (ko)
Other versions
KR101089792B1 (en
Inventor
이병철
손범상
김정현
Original Assignee
주식회사센트루소프트웨어
이병철
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 주식회사센트루소프트웨어, 이병철 filed Critical 주식회사센트루소프트웨어
Priority to KR1020090061787A priority Critical patent/KR101089792B1/en
Publication of KR20110004138A publication Critical patent/KR20110004138A/en
Application granted granted Critical
Publication of KR101089792B1 publication Critical patent/KR101089792B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring 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/53Monitoring 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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

PURPOSE: A method for providing security for application virtualization is provided to set a problem of security due to a difference of information used in a real system and virtualized information for application virtualization, thereby a user can set a security. CONSTITUTION: A first processing device(100) stored in a stored type application/data is connected to a second processing device(200) and executes the stored type application by the second processing device. A security module included in a first processing device is loaded to the second processing device. The stored type application/data is converted into a realized application/data type, which can be executed in the second processing device, and a host device is installed. If the realized type application is executed, the security module controls access control about the realized data/application based on security policy information.

Description

애플리케이션 가상화를 위한 보안 제공방법{Method for providing security for application virtualization}Method for providing security for application virtualization

본 발명은 애플리케이션 가상화를 위한 보안 제공방법에 관한 것으로, 보다 상세하게는 상기 특정 장치에 가상화된 상태의 애플리케이션이 다른 장치에서 실행되는 과정에서 발생할 수 있는 문제점들을 위한 다양한 보안기법을 제공할 수 있는 방법에 관한 것이다.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 first processing device 100 and a second processing device 200 may be provided for a security providing method for application virtualization according to an exemplary embodiment of the present invention.

상기 제1프로세싱 장치(100)는 본 발명의 기술적 사상을 구현하기 위해 가상 화된 애플리케이션을 저장하고 있는 모든 유형의 데이터 프로세싱 장치를 포함하는 의미로 사용될 수 있다. 예컨대, 상기 제1프로세싱 장치(100)는 소정의 네트워크를 통하여 상기 제2프로세싱 장치(200)와 연결될 수 있는 소정의 서버로 구현될 수 있으며, 이때는 상기 제2프로세싱 장치(100)는 스트리밍을 통해 가상화된 애플리케이션을 상기 서버로부터 제공받을 수 있다. 다른 실시 예에 의하면, 상기 제1프로세싱 장치(100)는 소정의 이동형 메모리 장치(예컨대, USB(Universal Serial Bus) 장치)일 수 있으며, 이때는 상기 제2프로세싱 장치(200)는 로밍을 통해 상기 이동형 메모리 장치로부터 가상화된 애플리케이션을 제공받을 수 있다.The first processing apparatus 100 may be used to include all types of data processing apparatuses that store virtualized applications in order to implement the technical spirit of the present invention. For example, the first processing apparatus 100 may be implemented as a predetermined server that may be connected to the second processing apparatus 200 through a predetermined network. In this case, the second processing apparatus 100 may be streamed. The virtualized application may be provided from the server. According to another embodiment, the first processing device 100 may be a predetermined mobile memory device (for example, a universal serial bus (USB) device), and in this case, the second processing device 200 may be roaming through the mobile device. The virtualized application may be provided from the memory device.

상기 가상화된 애플리케이션은 소정의 저장형 애플리케이션(2) 및 저장형 데이터(3)를 포함할 수 있다. 상기 저장형 애플리케이션(2)은 상기 저장형 애플리케이션(2)에 포함되고 실제 호스트 장치(200)에서 실행될 애플리케이션 즉, 실행형 애플리케이션이 가상화되어 패키징(packaging)된 애플리케이션일 수 있다. 상기 저장형 데이터(3)는 상기 실행형 애플리케이션이 사용 및/또는 참조하는 모든 데이터 파일을 포함하는 의미로 사용될 수 있다. 도 1에서는 상기 제1프로세싱 장치(100)에 포함된 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)는 논리적으로 구분될 수 있음을 표현하기 위해 별도로 표시한 것이며, 반드시 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)가 별도로 패키징되거나 별도의 파일로 구현되는 것을 의미하지는 않는다.The virtualized application may comprise a predetermined storage application 2 and storage data 3. The storage application 2 may be an application included in the storage application 2 and executed in the actual host device 200, that is, an application in which the executable application is virtually packaged. The stored data 3 may be used to include all data files used and / or referenced by the executable application. In FIG. 1, the storage-type application 2 and the storage-type data 3 included in the first processing apparatus 100 are separately displayed to represent that they may be logically divided, and the storage-type application is necessarily represented. It does not mean that (2) and the storage data (3) are separately packaged or implemented as separate files.

상기 저장형 애플리케이션(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 stored application 2 includes an executable application 20 and an executable application 20 which are installed in the second processing apparatus 200 and are actual applications to be executed in the second processing apparatus 200. Various information required when installed in the two processing apparatus 200 may be packaged together. Accordingly, the storage application 2 may be implemented by adding a predetermined depackaging device for depackaging the storage application 2 in the second processing device 200. In addition, according to an embodiment of the present invention, the storage-type application 2 may include a predetermined security module 1 for implementing the technical idea of the present invention. In addition, the storage application 2 may include a predetermined mapping module 4 for implementing the technical idea of the present invention. Of course, according to another embodiment, the security module 1 and / or mapping module 4 may be stored separately in the first processing device 100, the virtualized stored in the first processing device 100 When realzation of an application is started, the application may be loaded and activated in a predetermined memory of the second processing apparatus 200. Realization refers to a series of processes in which the virtualized application is converted and installed in accordance with an environment of the second processing device 200 to be executed in a specific data processing device such as the second processing device 200. can do. In addition, the executable data 30 and the generated data in which the executable data 30 is changed or newly generated are again virtualized into second storage data which is predetermined virtualized storage data, and thus the first processing apparatus 100. It may be stored in).

상기 가상화된 애플리케이션의 리얼라이제이션 과정이 완료되면, 상기 제2프로세싱 장치(200)에는 실행형 애플리케이션(20) 및 상기 실행형 애플리케이션(30)이 사용 및/또는 참조하는 실행형 데이터(30)가 설치될 수 있다. 상기 실행형 애플 리케이션(20)은 상기 제2프로세싱 장치(200)에 의해 사용 및 접근될 수 있으며, 이때에는 미리 결정된 소정의 보안정책에 의해 통제(제어)될 수 있다. 이러한 과정은 도 2에서 도시된다.When the realization process of the virtualized application is completed, the second processing device 200 is installed with the executable application 20 and the executable data 30 used and / or referenced by the executable application 30. Can be. The executable application 20 may be used and accessed by the second processing device 200, and may be controlled (controlled) by a predetermined security policy. This process is shown in FIG.

도 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 security module 1 is loaded on the second processing apparatus 200 to implement the technical idea of the method for providing security for application virtualization according to an embodiment of the present invention. The data flow of the processing device 200 may be monitored and controlled. To this end, after the first processing device 100 is directly connected to the second processing device 200 or through a network, the security module 1 is selected or executed by the user. The security module 1 may be loaded into a main memory of the host device 200. In addition, a predetermined depackager combined with the stored application 2 depackets a predetermined executable application (eg, 21, 22) to be installed in the second processing apparatus 200, and the depackaged files It may be installed in the second processing apparatus 200.

또한, 상기 보안모듈(1)은 도 2에 도시된 바와 같이 소정의 가상 머신(virtual machine) 상에서 동작하여, 상기 호스트 장치(200)의 여러 리소스(예컨대, 로딩된 다른 프로세스 또는 디바이스(device)들)에 의해 요청되는 메시지(message)들을 모니터링 할 수 있다. 또한 모니터링 한 메시지(또는 요청)이 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합하지 않는 경우, 요청된 메시지가 처리되지 않도록 제어함으로써 본 발명의 기술적 사상을 구현하는 방법을 제공할 수 있다. 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합되는 요청이라 함은 소정의 보안정책 정보에 상응하는 요청을 의미할 수 있다. 상기 보안정책 정보는 별도의 파일로 존재할 수도 있으며, 후술하는 바와 같이 소정의 매핑모듈(4)이 저장할 수도 있다.In addition, the security module 1 operates on a predetermined virtual machine, as shown in FIG. 2, so that various resources (eg, other loaded processes or devices) of the host device 200 can be obtained. You can monitor the messages requested by). In addition, if the monitored message (or request) does not comply with the security provision method for application virtualization according to an embodiment of the present invention, it may provide a method of implementing the technical idea of the present invention by controlling the requested message not to be processed. Can be. The request corresponding to the security providing method for application virtualization according to an embodiment of the present invention may mean a request corresponding to predetermined security policy information. The security policy information may exist as a separate file, or may be stored by a predetermined mapping module 4 as described below.

상기 매핑모듈(4)은 관리자로부터 설정되는 소정의 보안정책 정보를 포함할 수 있다. 또한, 상기 저장형 애플리케이션(2)이 실행되는 경우, 상기 제2프로세싱 장치(200)에서 실행 및/또는 로딩되어 상기 저장형 애플리케이션(2)과 상기 실행형 애플리케이션(20) 및 상기 저장형 데이터(3)와 상기 실행형 데이터(30)의 대응관계에 대한 정보 즉, 매핑 데이터를 분석, 및 생성할 수 있다. The mapping module 4 may include predetermined security policy information set by an administrator. In addition, when the storage application 2 is executed, it is executed and / or loaded in the second processing device 200, the storage application 2 and the executable application 20 and the storage data ( Information about the correspondence between 3) and the executable data 30, that is, mapping data, may be analyzed and generated.

왜냐하면, 상기 제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 application 2 stored in the first processing apparatus 100 may be executed in the second processing apparatus 200 in order to be executed in the second processing apparatus 200. Must be converted to In this case, the path in which the executable application 20 is installed and predetermined registration information may be different for each of the second processing apparatuses 200. Therefore, if application virtualization is made, if the conventional method does not know exactly how the path is actually installed in the second processing apparatus 200, it may not be able to provide an effective security method. Therefore, in the security providing method for application virtualization according to an embodiment of the present invention, the mapping module 4 may generate the mapping data. Therefore, even if the security policy information stored in the mapping module 4 is set for each of the storage type application 2 and the storage type data 3, each of the executable application 20 corresponding thereto is provided. And the security policy information may be applied to the executable data 30. Of course, in order for the stored data 3 to be usable in the host device 200, a process of converting the stored data 3 into predetermined executable data 30 may be required.

또한, 상기 저장형 애플리케이션(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 applications 2 is converted into the executable application 20 and installed in the second processing apparatus 200 to be executed in the second processing apparatus 200, the executable application ( 20, predetermined registration information (for example, information to be registered in a registry), or temporary file temporarily generated, which is information to be registered in an operating ysytem (OS) of the second processing apparatus 200 for an environment to be executed. Information, etc.). Such registration information may also be a subject of a security policy according to the technical spirit of the present invention. In addition, such registration information may be deleted from the second processing apparatus 200 when the first processing apparatus 100 is separated or disconnected from the second processing apparatus 200. Therefore, it is preferable that information related to any application and data stored in the first processing apparatus 100 is not stored in the second processing apparatus 200. Therefore, such registration information is also preferably managed and maintained according to an embodiment of the present invention.

이를 위해 본 발명의 실시 예에 따른 보안방법에 의하면, 상기 저장형 애플리케이션(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 mapping module 4 may also analyze and store such registration information.

상기 매핑모듈(4)은 상기 저장형 애플리케이션(2)이 실행형 애플리케이션(20)으로 상기 제2프로세싱 장치(200)에 설치되는 경우, 저장형 애플리케이션(2)에 포함된 각 프로그램 및/또는 코드가 실행형 애플리케이션(20)에 포함되는 어떤 프로그램 및/또는 코드와 대응되는지에 대한 정보를 생성 및 저장할 수 있다. The mapping module 4 is a program and / or code included in the storage type application 2 when the storage type application 2 is installed in the second processing apparatus 200 as the execution type application 20. May generate and store information about which program and / or code included in the executable application 20 corresponds to.

도 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 storage application 2 is depackaged and converted into PRG1, which is an executable application 20, and which file is included in the PRG1. The PRG1 may include a path installed in the second processing apparatus 200.

또한, 저장형 데이터(3)인 dat1이 어떤 파일(예컨대, DAT1 등)으로 변환되었다는 정보 및/또는 변환된 파일이 설치된 경로 등이 상기 매핑 데이터에 포함될 수도 있다.In addition, the mapping data may include information indicating that dat1, which is the storage type data 3, is converted into a certain file (for example, DAT1, etc.) and / or a path in which the converted file is installed.

또한, 전술한 바와 같이 소정의 등록정보가 상기 제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 second processing apparatus 200 as described above, the mapping module 4 may analyze the registration information and include it in the mapping data. For example, in the case where prg1 is converted to PRG1 and installed, predetermined information a should be registered in the registry, the mapping module 4 indicates that the information a is registration information corresponding to the prg1 or the PRG1, and the information a Can store information about registered registries. As such, based on the generated mapping data and the security policy information, the security module 1 generates generated data in which the executable application 20, the executable data 30, and the executable data 30 are changed or updated. Access control can be performed.

한편, 상기 보안정책 정보는 관리자가 상기 매핑모듈(4)을 통해 미리 설정할 수 있다. 즉, 관리자는 가상화된 애플리케이션을 생성하면서, 상기 가상화된 애플리케이션이 사용되어야 하는 정책정보를 설정할 수 있다. 설정된 보안정책 정보는 상기 매핑모듈(4)에 포함될 수 있으며, 리얼라이제이션을 통해 상기 매핑모듈(4)이 상기 제2프로세싱 장치(200)에서 실행(또는 로딩)되는 경우, 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 보안정책 정보에 기초하여 접근통제를 수행할 수 있다.Meanwhile, the security policy information may be set in advance by the administrator through the mapping module 4. That is, the administrator may set policy information that the virtualized application should be used while creating the virtualized application. The set security policy information may be included in the mapping module 4. When the mapping module 4 is executed (or loaded) in the second processing apparatus 200 through realization, the security module 1 may be included in the mapping module 4. The access control may be performed based on the security policy information stored in the mapping module 4.

상기 보안정책 정보는 상기 실행형 데이터(30) 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터(30) 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함할 수 있다. 물론, 상기 보안정책 정보는 상기 저장형 데이터(3) 또는 상기 저장형 애플리케이션(2)을 기준으로 설정될 수도 있지만, 상기 보안모듈(1)은 상기 매핑데이터에 기초하여 쉽게 대응되는 실행형 데이터(30) 또는 실행형 애플리케이션(20)을 기준으로 하는 정책정보를 파악할 수 있다. The security policy information includes information about an application accessible to at least one of the executable data 30 or generated data generated based on the executable data, and at least one of the executable data 30 or the generated data. It may include at least one of information about a location that can be stored, or information about a user who can use the executable application or the accessible application. Of course, the security policy information may be set based on the storage type data 3 or the storage application 2, but the security module 1 may be easily executed based on the mapping data. 30) or the policy information based on the executable application 20 can be grasped.

예컨대, 관리자는 상기 실행형 데이터(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 executable application 20 to access the executable data 30. That is, only an application provided by the first processing apparatus 100 may be set to access the executable data 30 and / or generated data. Therefore, the executable data 30 cannot be accessed by an application other than a preset application. In addition, even when the same application as the executable application 20 corresponding to the stored application 2 stored in the first processing apparatus 100 is already installed in the second processing apparatus 200, the present invention may be used. According to an embodiment of the present disclosure, the executable application 20 corresponding to the stored application 2 stored in the first processing apparatus 100 is executed, not the host program pre-installed in the second processing apparatus 200. You can do that. Therefore, the administrator can limit a specific function or add a specific function through the mapping module 4, thereby preventing the administrator from using the executable data 30 undesirably. In addition, even when there are a plurality of applications accessible to the executable data 30, only the executable application 30 designated by the administrator may access the specific executable data 30.

또한, 관리자는 실행형 데이터(30) 또는 생성데이터가 저장될 수 있는 위치 및/또는 경로에 대한 정보를 설정할 수도 있다. 예컨대, 상기 실행형 데이터(30) 및/또는 생성데이터는 상기 제1프로세싱 장치(100) 또는 제2프로세싱 장치(200) 이외의 경로로는 저장되거나 복사되지 못하도록 설정할 수도 있다.In addition, the administrator may set the information on the location and / or path where the executable data 30 or generated data can be stored. For example, the executable data 30 and / or generated data may be set to not be stored or copied in a path other than the first processing device 100 or the second processing device 200.

또한, 관리자는 사용자에 기초한 보안정책 정보를 설정할 수도 있다. 이를 위해 상기 보안정책 정보에는 소정의 사용자 각각에 대한 인증정보를 포함할 수 있 으며, 인증정보가 입력된 경우에만 상기 실행형 애플리케이션(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 executable application 20, the executable data 30, and / or generated data. You can also have access. Unique information of the second processing apparatus 200 may be used for a security policy based on a user. For example, when the second processing apparatus 200 is a predetermined removable memory device, unique identification information of the removable memory device may be included in the security policy information. Then, only the pre-authenticated removable memory device may use the above-mentioned applications by the security providing method for application virtualization according to an embodiment of the present invention. When the specific system can be used by using the authentication of the removable memory device can be usefully applied.

도 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 application 2 is executed, a realization process may be performed. In this case, the security module 1 may be loaded into the memory of the host device 200 (S100). When the installed executable application 20 is PRG1 and the PRG1 is executed, a process corresponding to the executable application PRG1 may be loaded into the memory (S200). Then, the security module 1 may hook a request, that is, a message or a function, which is called from the process or the OS of the host device 200 (S400) (S500). The function may include various API functions. In addition, the hooking may use an API (Application Protocol Interface) hooking. Then, the security module 1 may analyze the hooked message (function) and control access control according to the security policy information included in the mapping module 4. For example, the security policy may be as follows. As a result of analyzing the hooked message (function) by the security module 1, the message (function) is included in the executable data 30 (eg, DAT 1) or the executable application (PRG 1). In the case of an I / O (Input / Ouput) message (function) for storing at least one of the generated data (eg, NDAT1) that is data generated by the first processing device 100, the security module (1) may output a response or a message for rejecting the request of the I / O message (function) to the process or OS that called the message (function). In this specification, outputting a response or a message rejecting a request may include a case in which no response is made to the request, that is, a case in which a null message is output. The generated data may include data in which data (eg, DAT1) included in the executable data 30 is updated. Therefore, according to an embodiment of the present invention, after the first processing apparatus 100 is connected to and / or connected to the second processing apparatus 200, the execution data (eg, DAT 1) may be used. The application (PRG 1) also prevents data from leaking outside. In addition, even if a program included in the execution application 20 is not a execution application that is set to use specific data (eg, DAT1) by an administrator, or is not included in the execution application 20 ( For example, a program installed in the second processing apparatus 200 may prevent access to the data (eg, DAT 1).

이를 위해 상기 보안모듈(1)은 소정의 프로세스(예컨대, PRG A) 또는 상기 제2프로세싱 장치(200)의 OS에서 호출되는(S600) 메시지(또는 함수)를 후킹할 수 있다(S700). To this end, the security module 1 may hook a message (or a function) called by a predetermined process (for example, PRG A) or the OS of the second processing apparatus 200 (S600) (S700).

그러면, 상기 보안모듈(1)은 후킹된 메시지(또는 함수)를 분석하여, 상기 소정의 프로세스(예컨대, PRG A)가 상기 제2프로세싱 장치(200)에 설치된 애플리케이션이거나 상기 제1프로세싱 장치(100)에 포함된 애플리케이션이라도 특정 데이터(DAT 1)를 사용하도록 지정되지 않은 애플리케이션 프로그램에 상응하는 프로세스인지를 판단한다. 이때 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 매핑데이터를 참조할 수 있음은 물론이다. 따라서 이러한 매핑 데이터를 이용해 상기 메시지(또는 함수)가 실행형 데이터(30)에 관한 메시지인지 여부, 상기 실행형 데이터(30)에 접근할 수 있는 프로세스인지 여부, 및/또는 외부로 전송하려는지 여부를 판단할 수 있다. 판단결과 상기 소정의 프로세스(PRG A)가 상기 실행 데이터(DAT 1)에 접근할 수 없는 프로세스인 경우, 상기 보안모듈(1)은 상기 메시지(또는 함수)의 요청을 거절하는 응답(메시지)을 상기 메시지(또는 함수)를 호출한 프로세스 또는 OS로 출력할 수 있다.Then, the security module 1 analyzes the hooked message (or function) so that the predetermined process (eg, PRG A) is an application installed in the second processing apparatus 200 or the first processing apparatus 100. It is determined whether or not the application included in the process corresponds to an application program not designated to use the specific data DAT 1. In this case, the security module 1 may refer to the mapping data stored in the mapping module 4. Thus, the mapping data can be used to determine whether the message (or function) is a message relating to the executable data 30, whether the process can access the executable data 30, and / or whether to transmit it externally. You can judge. As a result of the determination, when the predetermined process PRG A is a process that cannot access the execution data DAT 1, the security module 1 returns a response (message) that rejects the request of the message (or function). The message (or function) can be output to the calling process or OS.

한편, 사용자의 작업이 끝난 경우에는 상기 실행형 데이터(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 executable data 30 and the generated data may be stored in the first processing apparatus 100 again. To this end, the security module 1 may generate virtualized second storage data by virtualizing the executable data 30 and the generated data. The generated second storage data may refer to virtualized data in which the storage data 3 includes data generated by a user's work. Of course, the second storage data may be generated with the same name as the storage data 3. The generated second storage data may be stored in the first processing apparatus 100. To this end, the security module 1 checks which executable data 30 and / or generated data correspond to the stored data 3 through the mapping data stored in the mapping module 4, and checks the identified information. Virtualization can be performed based on this.

또한, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의하면, 상기 사용자가 필요한 작업을 끝낸 후에는 상기 실행형 애플리케이션(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 host device 200 to execute the executable application 20 is performed. It provides a technical idea that even information (for example, registry information) can be deleted. Of course, all of the installed executable application 20 can be deleted.

이를 위해 상기 보안모듈(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 security module 1 may refer to registration information stored in the mapping module 4 and information on mapping information and / or paths for the executable application 20, and the like. Therefore, if predetermined registration information is registered in the second processing apparatus 200 while the executable application 20 is installed, the security module 1 is after the execution of the executable application 20 ends. The predetermined registration information may be deleted. Deletion means that the security module 1 deletes information registered or stored in an OS terminal or a local storage device (ie, a file system) of the host device 200 by a processor of the second processing device 200. This may mean transmitting a predetermined control signal (eg, a command). Based on this information, the second processing apparatus 200 may perform an operation similar to so-called uninstall as well known. Therefore, as described in the spirit of the present invention, predetermined registration information for application virtualization may be deleted from the second processing apparatus 200 after the user is disconnected from the first processing apparatus 100. The point in time at which the security module 1 deletes the registration information is only after the execution of the executable application 20 is finished. For example, immediately after the execution of the executable application 20 is terminated or before or after the first processing apparatus 100 is connected to or disconnected from the second processing apparatus 200. For example, when the first processing device 100 is a mobile memory device, when the user inputs information that the mobile memory device is to be detached before being separated from the second processing device 200, the information. After inputting the registration information can be deleted by the security module (1). Alternatively, when a predetermined signal indicating that the removable memory device is detached is recognized by the second processing device (eg, the host device 200), the security module 1 deletes predetermined registration information in response to the signal. After that, the security module 1 may be automatically terminated.

본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안제공방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 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)

저장형 애플리케이션 및 저장형 데이터가 저장된 제1프로세싱 장치가 제2프로세싱 장치에 연결되고, 상기 제2프로세싱 장치에 의해 상기 저장형 애플리케이션이 실행되는 단계;Connecting the first processing device storing the stored application and the stored data to a second processing device, and executing the stored application by the second processing device; 상기 저장형 애플리케이션이 실행되면, 상기 제1프로세싱 장치에 포함된 보안모듈이 상기 제2프로세싱 장치에 로딩되고, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각에 대응되고 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터의 형태로 변환되어 상기 호스트 장치에 설치되는 단계; 및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 each of the stored application and the stored data. Converting into a form of an executable application and executable data corresponding to and executed in the second processing device, and installing the same on the host device; And 설치된 상기 실행형 애플리케이션이 실행되면, 로딩된 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 소정의 보안 정책정보에 기초하여 제어하는 단계를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.When the installed executable application is executed, the loaded security module controls access control to the executable data and the executable application based on predetermined security policy information. . 제 1항에 있어서, 상기 애플리케이션 가상화를 위한 보안 제공방법은,The method of claim 1, wherein the security providing method for virtualizing the application comprises: 상기 제1프로세싱 장치에 포함된 매핑모듈이 상기 제2프로세싱 장치에서 실행되는 단계를 더 포함하며,The step of executing the mapping module included in the first processing device in the second processing device, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각에 대응되고 상기 제2프로세싱 장치에서 실행 될 수 있는 실행형 애플리케이션 및 실행형 데이터의 형태로 변환되어 상기 호스트 장치에 설치되는 단계는,Each of the stored application and the stored data is converted into a form of an executable application and executable data corresponding to each of the stored application and the stored data and executed in the second processing device. The steps to be installed, 실행된 상기 매핑모듈이 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 형태로 변환되는 과정을 분석하여, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 대응관계를 나타내는 매핑 데이터를 생성하는 단계를 포함하며,The execution of the mapping module analyzes the process of converting each of the stored application and the stored data into the form of the executable application and the executable data, so that each of the stored application and the stored data is executable. Generating mapping data representing a correspondence between an application and the executable data; 상기 보안모듈은 생성된 상기 매핑 데이터 및 상기 보안정책 정보에 기초하여 상기 실행형 애플리케이션 및 상기 실행형 데이터에 대한 접근통제를 제어하는 애플리케이션 가상화를 위한 이동형 메모리 장치의 보안 제공방법. The security module provides a security method for a mobile memory device for application virtualization that controls access control to the executable application and the executable data based on the generated mapping data and the security policy information. 제 2항에 있어서, 상기 보안정책 정보는,The method of claim 2, wherein the security policy information, 사용자로부터 입력되어 상기 매핑모듈에 저장되는 것을 특징으로 하는 애플리케이션 가상화를 위한 보안 제공방법.Security input method for application virtualization, characterized in that the input from the user is stored in the mapping module. 제 1항에 있어서, 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 소정의 보안 정책정보에 기초하여 제어하는 단계는,The method of claim 1, wherein the controlling of the access control to the executable data and the executable application by the security module is based on predetermined security policy information. 상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지 또는 함수 중 적어도 하나를 제어하는 단계를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.And controlling, by the security module, at least one of a message or a function for accessing at least one of the executable application or the executable data. 제 4항에 있어서, 상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지를 제어하는 단계는,The method of claim 4, wherein the controlling of the message for accessing at least one of the executable application or the executable data by the security module comprises: 로딩된 상기 보안모듈이 상기 제2프로세싱 장치에서 수행되는 소정의 프로세스로부터 출력되는 메시지 또는 함수 중 적어도 하나를 후킹(hooking)하는 단계;Hooking at least one of a message or a function outputted from a predetermined process performed in the second processing apparatus by the loaded security module; 후킹된 상기 메시지 또는 함수 중 적어도 하나가 상기 보안정책 정보에 상응하는지를 판단하는 단계; 및Determining whether at least one of the hooked message or function corresponds to the security policy information; And 판단결과 상기 보안정책 정보에 상응하지 않는 경우, 상기 메시지 또는 함수 중 적어도 하나가 수행되지 않도록 제어하는 단계를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.And if it is determined that the security policy information does not correspond, controlling at least one of the message or the function not to be performed. 제 1항에 있어서, 상기 보안정책 정보는,The method of claim 1, wherein the security policy information, 상기 실행형 데이터 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 애플리케이션 가상화를 위한 보안 제공방법.Information about an application accessible to at least one of the executable data or generated data generated based on the executable data, information on a location where at least one of the executable data or the generated data can be stored, or the And at least one of information about a user who can use the executable application or the accessible application. 제1항에 있어서, 상기 애플리케이션 가상화를 위한 보안 제공방법은,The method of claim 1, wherein the security providing method for virtualizing the application comprises: 상기 실행 애플리케이션이 설치되면서 소정의 등록정보가 상기 제2프로세싱 장치에 등록된 경우, 상기 보안모듈은 상기 실행 애플리케이션의 실행이 종료된 후에 상기 소정의 등록정보를 삭제하는 단계를 더 포함하는 애플리케이션 가상화를 위한 보안 제공방법.When the execution application is installed and predetermined registration information is registered in the second processing device, the security module further includes the step of deleting the predetermined registration information after the execution of the execution application is terminated. How to Provide Security 제 1항에 있어서, 상기 제1프로세싱 장치는,The method of claim 1, wherein the first processing device, 상기 제2프로세싱 장치와 네트워크를 통해 연결될 수 있는 서버 또는 상기 제2프로세싱 장치에 연결될 수 있는 이동형 메모리 장치 중 적어도 하나를 포함하는 것을 특징으로 하는 애플리케이션 가상화를 위한 보안 제공방법.And at least one of a server that can be connected to the second processing device through a network or a mobile memory device that can be connected to the second processing device. 제 1항 내지 제 8항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독가능한 기록매체.A computer-readable recording medium having recorded thereon a program for performing the method according to any one of claims 1 to 8.
KR1020090061787A 2009-07-07 2009-07-07 Method for providing security for application virtualization KR101089792B1 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (6)

* Cited by examiner, † Cited by third party
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