KR101089792B1 - 애플리케이션 가상화를 위한 보안 제공방법 - Google Patents

애플리케이션 가상화를 위한 보안 제공방법 Download PDF

Info

Publication number
KR101089792B1
KR101089792B1 KR1020090061787A KR20090061787A KR101089792B1 KR 101089792 B1 KR101089792 B1 KR 101089792B1 KR 1020090061787 A KR1020090061787 A KR 1020090061787A KR 20090061787 A KR20090061787 A KR 20090061787A KR 101089792 B1 KR101089792 B1 KR 101089792B1
Authority
KR
South Korea
Prior art keywords
application
data
executable
security
processing device
Prior art date
Application number
KR1020090061787A
Other languages
English (en)
Other versions
KR20110004138A (ko
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/ko
Publication of KR20110004138A publication Critical patent/KR20110004138A/ko
Application granted granted Critical
Publication of KR101089792B1 publication Critical patent/KR101089792B1/ko

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법은 보안모듈, 매핑모듈, 저장형 애플리케이션 및 저장형 데이터가 저장된 제1프로세싱 장치가 제2프로세싱 장치에 직접적 또는 네트워크를 통해서 연결되고, 상기 제2프로세싱 장치에 의해 상기 저장형 애플리케이션이 실행되는 단계, 상기 저장형 애플리케이션이 실행되면, 상기 보안모듈이 상기 제2프로세싱 장치에 로딩되고, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터 각각의 형태로 변환되어 상기 제2프로세싱 장치에 설치되는 단계, 설치된 상기 실행형 애플리케이션이 실행되면, 로딩된 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 소정의 보안 정책정보에 기초하여 제어하는 단계 및 상기 매핑모듈이 상기 제2프로세싱 장치에서 실행되는 단계를 포함하며, 상기 제2프로세싱 장치에 설치되는 단계는 실행된 상기 매핑모듈이 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 형태로 변환되는 과정을 분석하여, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 대응관계를 나타내는 매핑 데이터를 생성하는 단계를 포함하며, 상기 보안모듈은 생성된 상기 매핑 데이터 및 상기 보안정책 정보에 기초하여 상기 실행형 애플리케이션 및 상기 실행형 데이터에 대한 접근통제를 제어한다.

Description

애플리케이션 가상화를 위한 보안 제공방법{Method for providing security for application virtualization}
본 발명은 애플리케이션 가상화를 위한 보안 제공방법에 관한 것으로, 보다 상세하게는 상기 특정 장치에 가상화된 상태의 애플리케이션이 다른 장치에서 실행되는 과정에서 발생할 수 있는 문제점들을 위한 다양한 보안기법을 제공할 수 있는 방법에 관한 것이다.
오늘날 IT시스템 분야는 전세계적으로 시스템의 가상화를 통해 비용을 절감하고, 업무 효율을 높이기 위한 노력을 경쟁적으로 벌여나가고 있다. 하드웨어를 가상화하여 하드웨어의 유휴시간을 나눠 여러 시스템을 동시에 설치함으로써 시스템을 효과적으로 사용할 수 있게 되었고, 소프트웨어 스트리밍 기술이나 로밍 기술을 적용한 애플리케이션 가상화를 통하여 소프트웨어 라이센스 비용을 절감하고, 소프트웨어의 장애 요소를 줄여 유지보수 비용을 절감하고 있다.
가상화(Virtualization)는 지금까지 IT 자원의 효용을 높여 지금까지의 많은 문제점을 해결할 수 있는 방법이기 때문에 다양한 분야에 가상화를 도입하는 기업이 늘어나고 있으며, 그에 따라 다양한 방법의 가상화 기술을 개발하여 사업화하는 기업도 증가하고 있는 추세이다. 가상화는 이제 IT 인프라에서 광범위하게 사용되는 용어가 되었으며, 각 기업은 제 각기 서버기반 가상화부터 프리젠테이션 가상화, 애플리케이션 가상화, 데스크탑 가상화, 스토리지 가상화, 네트워크 가상화까지 IT인프라의 물리적인 기반의 한계를 넘어 IT서비스의 효율성 증대를 위해 가상화 기술을 다투어 개발하여 소개하고 있다.
이중 애플리케이션 가상화는 여러 가지 가상화 기술 중 중요한 부분을 차지하고 있다. 애플리케이션 가상화는 소프트웨어 스트리밍(streaming) 기술을 이용하여 중앙의 서버에서 스트리밍된 애플리케이션을 시스템의 가상 영역에서 실행시키는 방법과 소프트웨어 로밍 기술을 이용하여 포터블(portable)로 설치된 애플리케이션을 어떤 장치(예컨대, 컴퓨터)에서나 쉽게 사용할 수 있도록 하는 방법이 있다.
이러한 애플리케이션 가상화는 시스템의 고가용성을 높이고, 애플리케이션 로밍을 통한 업무 효율을 높여줄 수 있지만, 기존의 보안제품들을 그대로 적용할 수 없는 새로운 영역이 존재하게 된다는 공통점이 있다. 즉, 가상화된 시스템(애플리케이션)이 실제 프로세싱 장치에서 정상 동작하기 위해서는 가상화된 애플리케이션을 상기 실제 프로세싱 장치의 운영체제에서 동작할 수 있도록 변화해주는 과정이 필요하다. 이러한 과정을 리얼라이제이션(realization) 과정이라 할 수 있다.
가상화된 환경에서 수행되는 애플리케이션도 기존에 알려진 모든 보안 위협을 안고 있을 뿐만 아니라 전통적인 환경에서는 없었던 새로운 보안 위험도 발생하게 된다.
중앙 서버에 설치된 애플리케이션을 스트리밍 방식에 의해 수행하는 경우 데이터 가상화를 통해 데이터의 망실에 대한 위험은 줄어들 수 있으나, 클라이언트 에서 실행되는 동안 데이터의 누출을 직접 차단할 순 없으며, 악의적으로 가공된 데이터나 애플리케이션은 여러 클라이언트에 피해를 확산시킬 위험이 있다.
또한, USB 저장장치 등에 포터블로 설치되어 애플리케이션의 로밍에 의한 요율을 높이는 방식의 가상화의 경우에는 문제가 더욱 심각하여 데이터 및 애플리케이션의 누출에 대한 위험이나 바이러스 감염 등에 의한 피해 확산을 극대화시킬 위험이 있다.
이러한 위험에 대해 기존 방식의 보안제품의 경우 매체에 저장되어있는 가상화된 애플리케이션이나 데이터와 컴퓨터 등에서 실행될 때의 애플리케이션이나 데이터가 차이가 있기 때문에 정확하게 실행중인 애플리케이션을 보호하거나 데이터 누출을 차단할 수 없게 된다.
따라서, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법은 애플리케이션 가상화에 있어서, 가상화된 애플리케이션이 특정 프로세싱 장치에서 실행될 때, 가상화된 애플리케이션과 실제로 수행되는 애플리케이션의 대응 관계를 분석하고, 분석된 대응관계를 통해 프로세싱 장치에서 실행되는 애플리케이션과 데이터를 보호할 수 있는 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법은 보안모듈, 매핑모듈, 저장형 애플리케이션 및 저장형 데이터가 저장된 제1프로세싱 장치가 제2프로세싱 장치에 직접적 또는 네트워크를 통해서 연결되고, 상기 제2프로세싱 장치에 의해 상기 저장형 애플리케이션이 실행되는 (a)단계, 상기 저장형 애플리케이션이 실행되면, 상기 보안모듈이 상기 제2프로세싱 장치에 로딩되고, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터 각각의 형태로 변환되어 상기 제2프로세싱 장치에 설치되는 (b)단계, 및 설치된 상기 실행형 애플리케이션이 실행되면, 로딩된 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 제어하는 (c)단계를 포함하고, 상기 (b)단계는, 상기 매핑모듈이 상기 제2프로세싱 장치에서 실행되는 (d)단계, 및 실행된 상기 매핑모듈이 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 형태로 변환되는 과정을 분석하여, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 대응관계를 나타내는 매핑 데이터를 생성하는 (e)단계를 포함하며, 상기 (c)단계는, 상기 보안모듈이 생성된 상기 매핑 데이터 및 보안정책 정보에 기초하여 상기 접근통제를 제어할 수 있다.
실시 예에 따라 상기 보안정책 정보는, 사용자로부터 입력되어 상기 매핑모듈에 저장될 수 있다.
실시 예에 따라 상기 (c)단계는, 상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지 또는 함수 중 적어도 하나를 제어하는 (f)단계를 포함할 수 있다.
실시 예에 따라 상기 (f)단계는, 로딩된 상기 보안모듈이 상기 제2프로세싱 장치에서 수행되는 소정의 프로세스로부터 출력되는 메시지 또는 함수 중 적어도 하나를 후킹(hooking)하는 (g)단계, 후킹된 상기 메시지 또는 상기 함수 중 적어도 하나가 상기 보안정책 정보에 상응하는지를 판단하는 (h)단계, 및 판단결과 상기 보안정책 정보에 상응하지 않는 경우, 상기 메시지 또는 상기 함수 중 적어도 하나가 수행되지 않도록 제어하는 (i)단계를 포함할 수 있다.
실시 예에 따라 상기 보안정책 정보는, 상기 실행형 데이터 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함할 수 있다
실시 예에 따라 상기 애플리케이션 가상화를 위한 보안 제공방법은, 상기 실행형 애플리케이션이 설치되면서 소정의 등록정보가 상기 제2프로세싱 장치에 등록된 경우, 상기 보안모듈은 상기 실행형 애플리케이션의 실행이 종료된 후에 상기 소정의 등록정보를 삭제하는 (j)단계를 더 포함할 수 있다.
실시 예에 따라 상기 제1프로세싱 장치는, 상기 제2프로세싱 장치와 네트워크를 통해 연결될 수 있는 서버 또는 상기 제2프로세싱 장치에 연결될 수 있는 이동형 메모리 장치 중 적어도 하나를 포함할 수 있다.
실시 예에 따라 컴퓨터 프로그램을 기록할 수 있는 컴퓨터 판독가능한 기록매체는 상기 애플리케이션 가상화를 위한 보안 제공 방법을 저장할 수 있다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
본 발명에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의하면, 애플리케이션 가상화를 위한 가상화된 정보와 실제 시스템에 사용되는 정보의 차이로 인한 보안상의 문제점을 해결할 수 있으며, 사용자가 원하는대로 보안을 설정할 수있으며, 사용자의 의사에 반해서 다른 장치로 저장된 정보가 유출되는 경우를 원천적으로 차단할 수 있다.
또한, 상기 가상화된 애플리케이션 프로그램의 실행을 위해 소정의 등록정보를 특정 장치의 OS에 등록하여야 하는 경우에도, 상기 특정 장치에서의 사용이 종료되면 자동으로 등록정보를 삭제할 수 있으므로 혹시 등록정보를 이용하여 유출될 수 있는 정보를 차단할 수 있으며, 상기 특정 장치의 입장에서도 불필요한 정보가 저장되어 유지되는 것을 막을 수 있는 효과가 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위한 개략적인 구성을 나타낸다.
도 1을 참조하면, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해서는 제1프로세싱 장치(100) 및 제2프로세싱 장치(200)가 구비될 수 있다.
상기 제1프로세싱 장치(100)는 본 발명의 기술적 사상을 구현하기 위해 가상화된 애플리케이션을 저장하고 있는 모든 유형의 데이터 프로세싱 장치를 포함하는 의미로 사용될 수 있다. 예컨대, 상기 제1프로세싱 장치(100)는 소정의 네트워크를 통하여 상기 제2프로세싱 장치(200)와 연결될 수 있는 소정의 서버로 구현될 수 있으며, 이때는 상기 제2프로세싱 장치(200)는 스트리밍을 통해 가상화된 애플리케이션을 상기 서버로부터 제공받을 수 있다. 다른 실시 예에 의하면, 상기 제1프로세싱 장치(100)는 소정의 이동형 메모리 장치(예컨대, USB(Universal Serial Bus) 장치)일 수 있으며, 이때는 상기 제2프로세싱 장치(200)는 로밍을 통해 상기 이동형 메모리 장치로부터 가상화된 애플리케이션을 제공받을 수 있다.
상기 가상화된 애플리케이션은 소정의 저장형 애플리케이션(2) 및 저장형 데이터(3)를 포함할 수 있다. 상기 저장형 애플리케이션(2)은 상기 저장형 애플리케이션(2)에 포함되고 실제 호스트 장치(200)에서 실행될 애플리케이션 즉, 실행형 애플리케이션이 가상화되어 패키징(packaging)된 애플리케이션일 수 있다. 상기 저장형 데이터(3)는 상기 실행형 애플리케이션이 사용 및/또는 참조하는 모든 데이터 파일을 포함하는 의미로 사용될 수 있다. 도 1에서는 상기 제1프로세싱 장치(100)에 포함된 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)는 논리적으로 구분될 수 있음을 표현하기 위해 별도로 표시한 것이며, 반드시 상기 저장형 애플리케이션(2)과 상기 저장형 데이터(3)가 별도로 패키징되거나 별도의 파일로 구현되는 것을 의미하지는 않는다.
상기 저장형 애플리케이션(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)에 저장될 수도 있다.
상기 가상화된 애플리케이션의 리얼라이제이션 과정이 완료되면, 상기 제2프로세싱 장치(200)에는 실행형 애플리케이션(20) 및 상기 실행형 애플리케이션(30)이 사용 및/또는 참조하는 실행형 데이터(30)가 설치될 수 있다. 상기 실행형 애플 리케이션(20)은 상기 제2프로세싱 장치(200)에 의해 사용 및 접근될 수 있으며, 이때에는 미리 결정된 소정의 보안정책에 의해 통제(제어)될 수 있다. 이러한 과정은 도 2에서 도시된다.
도 2는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 리얼라이제이션이 완료된 경우의 제2프로세싱 장치의 구성을 개략적으로 나타낸다.
도 1 및 도 2를 참조하면, 상기 보안모듈(1)은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법의 기술적 사상을 구현하기 위해, 제2프로세싱 장치(200)에 로딩되어 상기 제2프로세싱 장치(200)의 데이터 흐름을 모니터링 및 제어할 수 있다. 이를 위해 상기 보안모듈(1)은 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)에 직접 또는 네트워크를 통하여 연결된 후, 상기 저장형 애플리케이션(2)이 사용자에 의해 선택 또는 실행되면, 상기 보안모듈(1)은 상기 호스트 장치(200)의 메인 메모리에 로딩(loading)될 수 있다. 또한, 상기 저장형 애플리케이션(2)와 결합된 소정의 디패키져는 상기 제2프로세싱 장치(200)에 설치될 소정의 실행형 애플리케이션(예컨대, 21, 22)을 디패키징하고, 디패키징된 파일들은 상기 제2프로세싱 장치(200)에 설치될 수 있다.
또한, 상기 보안모듈(1)은 도 2에 도시된 바와 같이 소정의 가상 머신(virtual machine) 상에서 동작하여, 상기 호스트 장치(200)의 여러 리소스(예컨대, 로딩된 다른 프로세스 또는 디바이스(device)들)에 의해 요청되는 메시지(message)들을 모니터링 할 수 있다. 또한 모니터링 한 메시지(또는 요청)이 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합하지 않는 경우, 요청된 메시지가 처리되지 않도록 제어함으로써 본 발명의 기술적 사상을 구현하는 방법을 제공할 수 있다. 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 부합되는 요청이라 함은 소정의 보안정책 정보에 상응하는 요청을 의미할 수 있다. 상기 보안정책 정보는 별도의 파일로 존재할 수도 있으며, 후술하는 바와 같이 소정의 매핑모듈(4)이 저장할 수도 있다.
상기 매핑모듈(4)은 관리자로부터 설정되는 소정의 보안정책 정보를 포함할 수 있다. 또한, 상기 저장형 애플리케이션(2)이 실행되는 경우, 상기 제2프로세싱 장치(200)에서 실행 및/또는 로딩되어 상기 저장형 애플리케이션(2)과 상기 실행형 애플리케이션(20) 및 상기 저장형 데이터(3)와 상기 실행형 데이터(30)의 대응관계에 대한 정보 즉, 매핑 데이터를 분석, 및 생성할 수 있다.
왜냐하면, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)이 상기 제2프로세싱 장치(200)에서 실행되기 위해서는 상기 제2프로세싱 장치(200)에서 실행될 수 있는 실행형 애플리케이션(20)으로 변환되어야 한다. 이때는 상기 실행형 애플리케이션(20)이 설치된 경로와 소정의 등록정보는 상기 제2프로세싱 장치(200)별로 다를 수 있다. 따라서, 애플리케이션 가상화가 이루어지면 종래의 방법으로는 원하는 실제로 상기 제2프로세싱 장치(200)에서 어떠한 경로로 어떻게 설치되었는지를 정확히 알 수 없으면, 효과적인 보안방법을 제공할 수 없을 수 있다. 따라서, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서는 상기 매핑모듈(4)이 상기 매핑 데이터를 생성할 수 있다. 따라서, 상 기 매핑모듈(4)이 저장하고 있는 상기 보안정책 정보가 상기 저장형 애플리케이션(2) 및 상기 저장형 데이터(3) 각각에 대해 설정되더라도, 이에 대응되는 각각의 실행형 애플리케이션(20) 및 상기 실행형 데이터(30)에 상기 보안정책 정보가 적용될 수 있다. 물론, 저장형 데이터(3)도 상기 호스트 장치(200)에서 사용가능하기 위해서는 소정의 실행형 데이터(30)로의 변환과정이 필요할 수 있다.
또한, 상기 저장형 애플리케이션(2) 각각이 상기 제2프로세싱 장치(200)에서 실행되기 위해 상기 실행형 애플리케이션(20)으로 변환되어 상기 제2프로세싱 장치(200)에 설치되면, 상기 실행형 애플리케이션(20)이 실행될 환경을 위해 상기 제2프로세싱 장치(200)의 OS(Operating system)에 등록되어야 할 정보인 소정의 등록정보(예컨대, 레지스트리(registry)에 등록될 정보, 또는 임시로 생성되는 임시파일에 대한 정보 등)가 있을 수 있다. 이러한 등록정보 역시 본 발명의 기술적 사상에 의한 보안정책의 대상이 될 수 있다. 또한, 이러한 등록정보는 상기 제1프로세싱 장치(100)가 상기 제2프로세싱 장치(200)에서 분리되거나 접속이 끊어지면, 상기 제2프로세싱 장치(200)에서 삭제되는 것이 바람직하다. 따라서, 상기 제1프로세싱 장치(100)에 저장되어 있던 어떠한 애플리케이션 및 데이터에 관련된 정보도 상기 제2프로세싱 장치(200)에 저장되지 않도록 하는 것이 바람직하다. 따라서, 이러한 등록정보도 본 발명의 실시 예에 의하면 관리 및 유지되는 것이 바람직하다.
이를 위해 본 발명의 실시 예에 따른 보안방법에 의하면, 상기 저장형 애플리케이션(2)이 실행되고, 실행에 응답하여 상기 보안모듈(1)이 로딩되면 상기 매핑모듈(4)이 활성화될 수 있으며, 상기 매핑모듈(4)은 이러한 등록정보도 분석 및 저 장할 수 있다.
상기 매핑모듈(4)은 상기 저장형 애플리케이션(2)이 실행형 애플리케이션(20)으로 상기 제2프로세싱 장치(200)에 설치되는 경우, 저장형 애플리케이션(2)에 포함된 각 프로그램 및/또는 코드가 실행형 애플리케이션(20)에 포함되는 어떤 프로그램 및/또는 코드와 대응되는지에 대한 정보를 생성 및 저장할 수 있다.
도 3은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서의 매핑 데이터의 일 예를 나타낸다.
도 3에 도시된 바와 같이, 상기 매핑데이터에는 저장형 애플리케이션 (2)에 포함된 prg1이라는 코드가 디패키징되어 실행형 애플리케이션(20)인 PRG1으로 변환된다는 정보, 상기 PRG1이 어떤 파일로 구성되는지 여부, 상기 PRG1이 상기 제2프로세싱 장치(200)에서 설치된 경로 등이 포함될 수 있다.
또한, 저장형 데이터(3)인 dat1이 어떤 파일(예컨대, DAT1 등)으로 변환되었다는 정보 및/또는 변환된 파일이 설치된 경로 등이 상기 매핑 데이터에 포함될 수도 있다.
또한, 전술한 바와 같이 소정의 등록정보가 상기 제2프로세싱 장치(200)에 등록되는 경우, 상기 매핑모듈(4)은 상기 등록정보를 분석하고 상기 매핑데이터에 포함시킬 수도 있다. 예컨대, prg1이 PRG1으로 변환되어 설치되는 경우에 레지스트리에 소정의 정보 a가 등록되어야 하는 경우, 상기 매핑모듈(4)은 상기 정보 a가 상기 prg1 또는 상기 PRG1에 상응하는 등록정보이며, 상기 정보 a가 등록된 레지스트리에 대한 정보를 저장할 수 있다. 이처럼, 생성된 매핑 데이터와 상기 보안정책 정보에 기초하여 상기 보안모듈(1)은 상기 실행형 애플리케이션(20), 실행형 데이터(30), 상기 실행형 데이터(30)가 변경되거나 업데이트된 생성데이터의 접근통제를 수행할 수 있다.
한편, 상기 보안정책 정보는 관리자가 상기 매핑모듈(4)을 통해 미리 설정할 수 있다. 즉, 관리자는 가상화된 애플리케이션을 생성하면서, 상기 가상화된 애플리케이션이 사용되어야 하는 정책정보를 설정할 수 있다. 설정된 보안정책 정보는 상기 매핑모듈(4)에 포함될 수 있으며, 리얼라이제이션을 통해 상기 매핑모듈(4)이 상기 제2프로세싱 장치(200)에서 실행(또는 로딩)되는 경우, 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 보안정책 정보에 기초하여 접근통제를 수행할 수 있다.
상기 보안정책 정보는 상기 실행형 데이터(30) 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터(30) 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함할 수 있다. 물론, 상기 보안정책 정보는 상기 저장형 데이터(3) 또는 상기 저장형 애플리케이션(2)을 기준으로 설정될 수도 있지만, 상기 보안모듈(1)은 상기 매핑데이터에 기초하여 쉽게 대응되는 실행형 데이터(30) 또는 실행형 애플리케이션(20)을 기준으로 하는 정책정보를 파악할 수 있다.
예컨대, 관리자는 상기 실행형 데이터(30)에 접근하기 위해서는 반드시 상기 실행형 애플리케이션(20)을 이용하도록 설정할 수 있다. 즉, 상기 제1프로세싱 장치(100)에서 제공하는 애플리케이션만 상기 실행형 데이터(30) 및/또는 생성데이터에 접근하도록 설정할 수 있다. 따라서, 미리 설정된 애플리케이션이 아닌 다른 애플리케이션에 의해서는 상기 실행형 데이터(30)에 접근할 수 없게 된다. 또한, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)에 대응되는 실행형 애플리케이션(20)과 동일한 애플리케이션이 상기 제2프로세싱 장치(200)에 이미 설치되어 있는 경우에도, 본 발명의 실시 예에 의하면, 상기 제2프로세싱 장치(200)에 미리 설치된 호스트 프로그램이 아닌, 상기 제1프로세싱 장치(100)에 저장된 상기 저장형 애플리케이션(2)에 대응되는 실행형 애플리케이션(20)이 실행되도록 할 수 있다. 따라서, 관리자는 상기 매핑모듈(4)을 통해 특정 기능을 제한하거나 특정 기능을 추가할 수 있으므로 관리자가 원치 않게 상기 실행형 데이터(30)가 사용되는 경우를 막을 수 있다. 또한, 실행형 데이터(30)에 접근 가능한 애플리케이션이 복수 개인 경우에도 관리자가 지정한 실행형 애플리케이션(30)만 특정 실행 데이터(30)에 접근하도록 할 수 있다.
또한, 관리자는 실행형 데이터(30) 또는 생성데이터가 저장될 수 있는 위치 및/또는 경로에 대한 정보를 설정할 수도 있다. 예컨대, 상기 실행형 데이터(30) 및/또는 생성데이터는 상기 제1프로세싱 장치(100) 또는 제2프로세싱 장치(200) 이외의 경로로는 저장되거나 복사되지 못하도록 설정할 수도 있다.
또한, 관리자는 사용자에 기초한 보안정책 정보를 설정할 수도 있다. 이를 위해 상기 보안정책 정보에는 소정의 사용자 각각에 대한 인증정보를 포함할 수 있 으며, 인증정보가 입력된 경우에만 상기 실행형 애플리케이션(20), 실행형 데이터(30), 및/또는 생성데이터에 접근하도록 할 수도 있다. 사용자에 기초한 보안정책에는 상기 제2프로세싱 장치(200)의 유니크한 정보를 이용할 수도 있다. 예컨대, 상기 제2프로세싱 장치(200)가 소정의 이동형 메모리 장치인 경우, 상기 이동형 메모리 장치의 유니크(unique)한 식별정보가 상기 보안정책 정보에 포함될 수도 있다. 그러면, 미리 인증된 이동형 메모리 장치만 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 상술한 애플리케이션들을 사용할 수도 있다.따라서, 보안이 요구되는 특정 시스템에 다수의 사용자가 상기 이동형 메모리 장치를 이용하여 상기 특정 시스템을 이용할 수 있는 경우에 이러한 이동형 메모리 장치의 인증이 유용하게 적용될 수 있다.
도 4는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해 보안모듈이 접근통제를 수행하는 방법을 설명하기 위한 도면이다.
도 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)에 접근을 할 수도 없도록 할 수 있다.
이를 위해 상기 보안모듈(1)은 소정의 프로세스(예컨대, PRG A) 또는 상기 제2프로세싱 장치(200)의 OS에서 호출되는(S600) 메시지(또는 함수)를 후킹할 수 있다(S700).
그러면, 상기 보안모듈(1)은 후킹된 메시지(또는 함수)를 분석하여, 상기 소정의 프로세스(예컨대, PRG A)가 상기 제2프로세싱 장치(200)에 설치된 애플리케이션이거나 상기 제1프로세싱 장치(100)에 포함된 애플리케이션이라도 특정 데이터(DAT 1)를 사용하도록 지정되지 않은 애플리케이션 프로그램에 상응하는 프로세스인지를 판단한다. 이때 상기 보안모듈(1)은 상기 매핑모듈(4)에 저장된 상기 매핑데이터를 참조할 수 있음은 물론이다. 따라서 이러한 매핑 데이터를 이용해 상기 메시지(또는 함수)가 실행형 데이터(30)에 관한 메시지인지 여부, 상기 실행형 데이터(30)에 접근할 수 있는 프로세스인지 여부, 및/또는 외부로 전송하려는지 여부를 판단할 수 있다. 판단결과 상기 소정의 프로세스(PRG A)가 상기 실행 데이터(DAT 1)에 접근할 수 없는 프로세스인 경우, 상기 보안모듈(1)은 상기 메시지(또는 함수)의 요청을 거절하는 응답(메시지)을 상기 메시지(또는 함수)를 호출한 프로세스 또는 OS로 출력할 수 있다.
한편, 사용자의 작업이 끝난 경우에는 상기 실행형 데이터(30) 및 생성데이터는 다시 제1프로세싱 장치(100)에 저장될 수 있다. 이를 위해 상기 보안모듈(1)은 상기 실행형 데이터(30) 및 생성데이터를 가상화(virtualization)하여, 가상화된 제2저장형 데이터를 생성할 수 있다. 생성된 제2저장형 데이터는 상기 저장형 데이터(3)에 사용자의 작업에 의한 생성데이터가 포함된 가상화된 데이터를 의미할 수 있다. 물론, 상기 제2저장형 데이터는 상기 저장형 데이터(3)와 동일한 이름으로 생성될 수 있다. 생성된 제2저장형 데이터는 상기 제1프로세싱 장치(100)에 저장될 수 있다. 이를 위해 상기 보안모듈(1)은 매핑모듈(4)에 저장된 매핑데이터를 통해 어떠한 실행형 데이터(30) 및/또는 생성데이터가 저장형 데이터(3)에 대응되는지를 확인하고, 확인된 정보에 기초하여 가상화를 수행할 수 있다.
또한, 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의하면, 상기 사용자가 필요한 작업을 끝낸 후에는 상기 실행형 애플리케이션(20)의 실행을 위해 상기 호스트 장치(200)에 등록한 소정의 등록정보(예컨대, 레지스트리 정보 등)까지도 모두 삭제될 수 있는 기술적 사상을 제공한다. 설치된 실행형 애플리케이션(20)도 물론 모두 삭제될 수 있다.
이를 위해 상기 보안모듈(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)이 자동으로 종료될 수도 있다.
본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안제공방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위한 개략적인 구성을 나타낸다.
도 2는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에 의해 리얼라이제이션이 완료된 경우의 제2프로세싱 장치의 구성을 개략적으로 나타낸다.
도 3은 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법에서의 매핑 데이터의 일 예를 나타낸다.
도 4는 본 발명의 실시 예에 따른 애플리케이션 가상화를 위한 보안 제공방법을 위해 보안모듈이 접근통제를 수행하는 방법을 설명하기 위한 도면이다.

Claims (9)

  1. 보안모듈, 매핑모듈, 저장형 애플리케이션 및 저장형 데이터가 저장된 제1프로세싱 장치가 제2프로세싱 장치에 직접적 또는 네트워크를 통해서 연결되고, 상기 제2프로세싱 장치에 의해 상기 저장형 애플리케이션이 실행되는 (a)단계;
    상기 저장형 애플리케이션이 실행되면, 상기 보안모듈이 상기 제2프로세싱 장치에 로딩되고, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각은 상기 제2프로세싱 장치에서 실행될 수 있는 실행형 애플리케이션 및 실행형 데이터 각각의 형태로 변환되어 상기 제2프로세싱 장치에 설치되는 (b)단계; 및
    설치된 상기 실행형 애플리케이션이 실행되면, 로딩된 상기 보안모듈이 상기 실행형 데이터 및 상기 실행형 애플리케이션에 대한 접근 통제를 제어하는 (c)단계를 포함하고,
    상기 (b)단계는,
    상기 매핑모듈이 상기 제2프로세싱 장치에서 실행되는 (d)단계; 및
    실행된 상기 매핑모듈이 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 형태로 변환되는 과정을 분석하여, 상기 저장형 애플리케이션 및 상기 저장형 데이터 각각이 상기 실행형 애플리케이션 및 상기 실행형 데이터의 대응관계를 나타내는 매핑 데이터를 생성하는 (e)단계를 포함하며,
    상기 (c)단계는,
    상기 보안모듈이 생성된 상기 매핑 데이터 및 보안정책 정보에 기초하여 상기 접근통제를 제어하는 애플리케이션 가상화를 위한 보안 제공방법.
  2. 삭제
  3. 제1항에 있어서, 상기 보안정책 정보는,
    사용자로부터 입력되어 상기 매핑모듈에 저장되는 애플리케이션 가상화를 위한 보안 제공방법.
  4. 제1항에 있어서, 상기 (c) 단계는,
    상기 보안모듈이 상기 실행형 애플리케이션 또는 상기 실행형 데이터 중 적어도 하나에 접근하기 위한 메시지 또는 함수 중 적어도 하나를 제어하는 (f)단계를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.
  5. 제4항에 있어서, 상기 (f) 단계는,
    로딩된 상기 보안모듈이 상기 제2프로세싱 장치에서 수행되는 소정의 프로세스로부터 출력되는 메시지 또는 함수 중 적어도 하나를 후킹(hooking)하는 (g)단계;
    후킹된 상기 메시지 또는 상기 함수 중 적어도 하나가 상기 보안정책 정보에 상응하는지를 판단하는 (h)단계; 및
    판단결과 상기 보안정책 정보에 상응하지 않는 경우, 상기 메시지 또는 상기 함수 중 적어도 하나가 수행되지 않도록 제어하는 (i)단계를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.
  6. 제1항에 있어서, 상기 보안정책 정보는,
    상기 실행형 데이터 또는 상기 실행형 데이터에 기초하여 생성되는 생성데이터 중 적어도 하나에 접근가능한 애플리케이션에 대한 정보, 상기 실행형 데이터 또는 상기 생성데이터 중 적어도 하나가 저장될 수 있는 위치에 대한 정보, 또는 상기 실행형 애플리케이션 또는 상기 접근가능한 애플리케이션을 사용할 수 있는 사용자에 대한 정보 중 적어도 하나를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.
  7. 제1항에 있어서, 상기 애플리케이션 가상화를 위한 보안 제공방법은,
    상기 실행형 애플리케이션이 설치되면서 소정의 등록정보가 상기 제2프로세싱 장치에 등록된 경우, 상기 보안모듈은 상기 실행형 애플리케이션의 실행이 종료된 후에 상기 소정의 등록정보를 삭제하는 (j)단계를 더 포함하는 애플리케이션 가상화를 위한 보안 제공방법.
  8. 제1항에 있어서, 상기 제1프로세싱 장치는,
    상기 제2프로세싱 장치와 네트워크를 통해 연결될 수 있는 서버 또는 상기 제2프로세싱 장치에 연결될 수 있는 이동형 메모리 장치 중 적어도 하나를 포함하는 애플리케이션 가상화를 위한 보안 제공방법.
  9. 제1항에 기재된 방법을 수행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독가능한 기록매체.
KR1020090061787A 2009-07-07 2009-07-07 애플리케이션 가상화를 위한 보안 제공방법 KR101089792B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090061787A KR101089792B1 (ko) 2009-07-07 2009-07-07 애플리케이션 가상화를 위한 보안 제공방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090061787A KR101089792B1 (ko) 2009-07-07 2009-07-07 애플리케이션 가상화를 위한 보안 제공방법

Publications (2)

Publication Number Publication Date
KR20110004138A KR20110004138A (ko) 2011-01-13
KR101089792B1 true KR101089792B1 (ko) 2011-12-07

Family

ID=43611800

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090061787A KR101089792B1 (ko) 2009-07-07 2009-07-07 애플리케이션 가상화를 위한 보안 제공방법

Country Status (1)

Country Link
KR (1) KR101089792B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101429131B1 (ko) * 2013-06-12 2014-08-11 소프트캠프(주) 시스템 보호를 위한 파일 보안용 관리장치와 관리방법
US9098715B1 (en) * 2014-10-28 2015-08-04 Openpeak Inc. Method and system for exchanging content between applications

Also Published As

Publication number Publication date
KR20110004138A (ko) 2011-01-13

Similar Documents

Publication Publication Date Title
EP3113063B1 (en) System and method for detecting malicious code in random access memory
JP5904514B1 (ja) 仮想マシンのスナップショットに対して更新を自動的に適用する方法、並びに、そのコンピュータ・システム及びコンピュータ・システム用プログラム
US10007541B2 (en) Method for operating a mobile virtual environment upon connection to a host computer
TWI620126B (zh) 用於擴充針對虛擬資料中心之訪客電腦系統的服務的方法及電腦可讀取儲存媒體
US10462228B2 (en) Providing access to a smartcard within a remote session
US20150332043A1 (en) Application analysis system for electronic devices
JP5847734B2 (ja) 仮想化のための拡張ポイントの宣言的登録
CN109074450B (zh) 威胁防御技术
JP2008524686A (ja) コンピュータ装置においてアプリケーションを保守する方法
JP2016515267A5 (ko)
US20170286644A1 (en) Protection Method and Device for Application Data
US10114779B2 (en) Isolating a redirected USB device to a set of applications
US7797727B1 (en) Launching an application in a restricted user account
US20170286681A1 (en) Restricting reprogramming of a redirected usb device
US10956561B2 (en) Automatic whitelisting using provisioning information
KR101089792B1 (ko) 애플리케이션 가상화를 위한 보안 제공방법
WO2018045926A1 (zh) 用于访问容器的方法和装置
CN114912103A (zh) 一种访问控制方法及相关装置
US8583837B2 (en) Systems and methods for input/output isolation
US10831883B1 (en) Preventing application installation using system-level messages
KR101772129B1 (ko) 콘텐츠 무결성을 검증하는 지능형 스토리지 시스템
JP2014225302A (ja) ウイルス検出プログラム、ウイルス検出方法、及びコンピュータ
KR101103795B1 (ko) 포터블 매체를 이용한 소프트웨어 가상화 시스템 제공방법
JP6781126B2 (ja) 仮想マシン設定投入システム、仮想マシン設定投入方法、及びプログラム
KR20100090119A (ko) 애플리케이션 가상화를 위한 이동형 메모리 장치의 보안 제공방법 및 상기 이동형 메모리 장치

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