KR101299051B1 - 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법 - Google Patents

사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법 Download PDF

Info

Publication number
KR101299051B1
KR101299051B1 KR1020110090779A KR20110090779A KR101299051B1 KR 101299051 B1 KR101299051 B1 KR 101299051B1 KR 1020110090779 A KR1020110090779 A KR 1020110090779A KR 20110090779 A KR20110090779 A KR 20110090779A KR 101299051 B1 KR101299051 B1 KR 101299051B1
Authority
KR
South Korea
Prior art keywords
security
user
policy
data
file
Prior art date
Application number
KR1020110090779A
Other languages
English (en)
Other versions
KR20130027288A (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 KR1020110090779A priority Critical patent/KR101299051B1/ko
Publication of KR20130027288A publication Critical patent/KR20130027288A/ko
Application granted granted Critical
Publication of KR101299051B1 publication Critical patent/KR101299051B1/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/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Abstract

본 발명은 통신망에 접속되는 컴퓨터 단말기에 로그인을 시도하는 사용자를 확인해서 해당 사용자에게 설정된 정책에 따른 네트워크 통신 및 애플리케이션 등의 실행 환경을 상기 단말기에 조성하는 조성장치와 방법에 관한 것으로, 사용자의 정보를 입력받아 사용자를 확인하고, 단말기의 실행을 인가하는 로그인모듈; 공용 일반디스크와, OS(Operating System)가 독립된 파일시스템으로 인식하는 가상드라이브 이미지파일에 의해 관리되고 상기 일반디스크에 파일형태로 저장되는 가상디스크로 구성된 디스크; 사용자 계정별 정책을 관리하고, 운영모듈 및 필터드라이버의 질의에 대응해 해당 정책을 전달하는 보안운영프로세스; 상기 로그인모듈의 실행 인가 시 상기 보안운영프로세스로 해당 사용자의 정책을 질의해서 상기 단말기를 해당 정책에 상응하게 활성화하고, 애플리케이션의 데이터 처리 및 상기 디스크에 대한 저장 처리를 상기 정책에 따라 진행하는 운영모듈; 상기 단말기의 업무망 및 인터넷망에 대한 선택적인 접속을 처리하고, 상기 업무망 또는 인터넷망을 통한 데이터의 전송 처리를 상기 정책에 따라 진행하는 통신모듈; 및 상기 운영모듈 및 통신모듈의 데이터 처리를 확인하고 상기 보안운영프로세스에 정책을 질의해서 상기 운영모듈 및 통신모듈로 전달하는 필터드라이버;를 포함하는 것이다.

Description

사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법{ENVIRONMENT SETTING DEVICE AND METHOD ACCORDING TO THE USER ACCOUNT}
본 발명은 통신망에 접속되는 컴퓨터 단말기에 로그인을 시도하는 사용자를 확인해서 해당 사용자에게 설정된 정책에 따른 네트워크 통신 및 애플리케이션 등의 실행 환경을 상기 단말기에 조성하는 조성장치와 방법에 관한 것이다.
다양한 정보를 공유해야 하는 회사 또는 연구단체와 같은 집단에서는 사용자가 누구냐에 따라 해당 정보의 접근 권한에 차등을 둬야 하고, 상기 정보를 처리하는 애플리케이션에 대한 실행 권한에도 사용자별로 분명한 구분을 두어야 한다. 또한, 특정 사용자가 생성한 정보는 보안을 위해 해당 사용자 또는 상기 사용자가 허용한 사용자만이 접근할 수 있도록 관리되어야 한다.
하지만, 종래 정보 관리시스템의 경우, 사용자를 단순히 차등화해서 특정 정보에 대한 접근 여부만을 관리하므로, 동일한 등급으로 분류된 사용자라면 모든 정보를 공유하는 불합리함이 있었다.
또한, 관리해야 할 정보와 사용자가 많을 경우, 상기 등급의 세분화에는 한계가 있으므로, 정보의 세밀한 보안관리에 한계가 있고, 이를 만회하기 위해 대부분의 정보에 접근 제한을 걸어둠으로써, 업무상 해당 정보에 접속해야 하는 사용자는 상기 정보에 접속하기 위해 매번 상급자의 결제를 받아야 하는 번거로움과 불편이 있었다.
한편, 전술한 바와 같이 사용자별로 접근 여부가 차등화된 정보를 저장하는 데이터베이스는 외부 통신망과는 분리된 별도의 업무망(근거리통신망, 이더넷, 인트라넷)에 구성되고, 보안을 위해 상기 업무망은 폐쇄된다. 따라서, 상기 데이터베이스에 저장된 정보를 인터넷망의 다운로드정보와 연결해 가공 처리하기 위해서는, 인터넷망 접속이 가능한 별도 단말기에서 상기 다운로드정보를 다운로드 한 후, USB메모리 또는 디스크 등과 같은 저장매체를 이용해 상기 데이터베이스와 접속 가능한 특정 단말기에 복사해야 하는 번거로움이 있었다.
이에 본 발명은 상기와 같은 문제를 해소하기 위해 발명된 것으로서, 보안성을 보장하면서도 하나의 단말기에서 사용자는 인터넷망과 업무망의 작업환경을 분리하여 접속이 가능하고 분리된 작업환경에서는 실행 가능한 어플리케이션과 정보를 차등화하여 제공하기 위한 정보 처리환경 조성장치와 방법의 제공을 기술적 과제로 한다.
상기의 기술적 과제를 달성하기 위하여 본 발명은,
사용자의 정보를 입력받아 사용자를 확인하고, 단말기의 실행을 인가하는 로그인모듈;
공용 일반디스크와, OS(Operating System)가 독립된 파일시스템으로 인식하는 가상드라이브 이미지파일에 의해 관리되고 상기 일반디스크에 파일형태로 저장되는 가상디스크로 구성된 디스크;
사용자 계정별 정책을 관리하고, 운영모듈 및 필터드라이버의 질의에 대응해 해당 정책을 전달하는 보안운영프로세스;
상기 로그인모듈의 실행 인가 시 상기 보안운영프로세스로 해당 사용자의 정책을 질의해서 상기 단말기를 해당 정책에 상응하게 활성화하고, 애플리케이션의 데이터 처리 및 상기 디스크에 대한 저장 처리를 상기 정책에 따라 진행하는 운영모듈;
상기 단말기의 업무망 및 인터넷망에 대한 선택적인 접속을 처리하고, 상기 업무망 또는 인터넷망을 통한 데이터의 전송 처리를 상기 정책에 따라 진행하는 통신모듈; 및
상기 운영모듈 및 통신모듈의 데이터 처리를 확인하고 상기 보안운영프로세스에 정책을 질의해서 상기 운영모듈 및 통신모듈로 전달하는 필터드라이버;
를 포함하는 작업환경 분리를 위한 사용자 계정에 따른 정보 처리 환경 조성장치이다.
상기의 기술적 과제를 달성하기 위하여 본 발명은,
단말기에 설치된 로그인모듈이 사용자의 정보를 입력받아 사용자를 확인하고, 상기 단말기의 실행을 인가하는 단계; 및
운용모듈이 로그인한 사용자의 정책에 대해 사용자 계정별 정책을 관리하는 보안운영프로세스로 질의해 수신하고, 상기 정책에 따라 상기 사용자의 가상디스크와 애플리케이션을 활성화하고, 통신모듈은 업무망 또는 인터넷망 중 선택된 하나의 통신망과의 접속을 대기하며, 상기 운용모듈 또는 통신모듈의 실행에 따라 상기 보안운영프로세스에 정책을 질의하도록 연결되는 필터드라이버를 활성화하는 단계;
를 포함하는 작업환경 분리를 위한 사용자 계정에 따른 정보 처리 환경 조성방법이다.
상기의 본 발명은, 사용자별로 구분 설정된 정책에 따라 컴퓨터 단말기의 실행환경을 조성함으로써, 다수의 사용자는 하나의 컴퓨터 단말기에서도 보안을 유지하면서 사용자별로 조성된 환경하에서 자신에게 허가된 데이터 처리를 진행할 수 있고, 망 분리를 통해 보안 대상 데이터의 무단 유출을 방지하면서도 다양한 통신망에 원활히 접속해 이용할 수 있는 효과가 있다.
또한, 한 명의 사용자가 여러 작업환경(예, 업무환경, 인터넷환경 등)이 필요한 경우, 하나의 컴퓨터 단말기에서 여러 개의 작업환경으로 나뉘고, 사용자는 각각의 환경에서 자신에게 허가된 데이터를 처리할 수 있는 효과가 있다.
도 1은 본 발명에 따른 조성장치의 모습을 도시한 블록도이고,
도 2는 본 발명에 따른 조성장치의 데이터 처리모습을 개략적으로 도시한 블록도이고,
도 3은 본 발명에 따른 조성장치의 통신망 접속 환경 설정모습을 개략적으로 도시한 블록도이고,
도 4는 종래 보안프로그램의 프로세스 처리 모습을 개략적으로 도시한 블록도이고,
도 5는 본 발명에 따른 조성장치의 데이터 보안 처리 모습을 개략적으로 도시한 블록도이고,
도 6은 본 발명에 따른 조성장치가 보안대상 애플리케이션에서 데이터를 보안 처리하는 과정을 순차 도시한 플로차트이고,
도 7은 본 발명에 따른 조성장치에 의한 데이터 보안 처리 중 제어 정책 확인과 실행에 대한 진행과정을 순차 도시한 플로차트이다.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 출원에서 사용한 용어는 단지 특정한 실시 예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.
이하, 본 발명을 첨부된 예시도면에 의거하여 상세히 설명한다.
도 1은 본 발명에 따른 조성장치의 모습을 도시한 블록도인 바, 이를 참조해 설명한다.
본 발명에 따른 조성장치(100)는 통상적인 OS(Operating System)에 의해 운영되는 컴퓨터 단말기에 구성될 수 있고, 따라서 사용자가 데이터를 입력하기 위해 조작하는 키보드 또는 마우스와 같은 입력수단과, 사용자가 데이터를 인지할 수 있도록 출력하는 모니터 또는 스피커와 같은 출력수단과 연동할 수 있다.
한편, 조성장치(100)의 데이터를 저장하는 저장수단은 단말기에 일체로 구성되는 하드디스크일 수도 있고, 대용량의 저장공간을 확보하거나 상기 데이터의 보안성을 높이기 위해 업무망 범위에 포함되는 근거리 통신망(LAN)을 매개로 별도 연결되는 저장소 일수 있다. 도 1에서 도시한 일 실시 예인 저장수단은 조성장치(100)를 포함한 단말기에 일체인 것으로 하였지만, 본 발명에 따른 조성장치(100)가 이에 한정하는 것은 아니며, 전술한 바와 같이 상기 저장수단이 저장용량의 확장 또는 보안성 강화 등의 이유로 별도의 데이터베이스일 수도 있음은 물론이다.
본 발명에 따른 조성장치(100)는 로그인모듈(110)과 입출력모듈(120)과 운영모듈(130)과 필터드라이버(140)와 보안운영프로세스(150)와 디스크(160) 및 통신모듈(170)을 포함한다.
로그인모듈(110)은 단말기의 부팅을 시도하는 사용자를 확인하고 상기 단말기의 실행을 인가하는 공지,공용의 수단으로서, 통상적으로 사용자가 입력한 ID(Identification) 확인을 통해 사용자를 식별한다. 한편, 사용자가 입력한 ID의 진의 여부는 패스워드 확인을 통해 이루어지며, 이를 위해 로그인모듈(110)은 ID와 더불어 패스워드 입력을 요청하고, 기록된 ID 및 패스워드와의 일치 여부를 확인해서 상기 사용자를 최종 확인한다.
사용자를 확인하기 위한 방법은 전술한 ID 및 패스워드 방식 외에도, 지문인식, 홍채인식, 망막인식 또는 음성인식 등과 같은 생체인식 방법이 있고, 이를 위해 로그인모듈(110)은 필요한 공지,공용의 구성이 포함될 수 있을 것이다.
입출력모듈(120)은 키보드 또는 마우스 등과 같은 입력수단의 입력신호를 수신해 처리하고, 처리 연산된 출력신호를 모니터 또는 스피커 등과 같은 출력수단으로 전송하는 공지,공용의 장치이다. 참고로, 사용자는 단말기의 사용을 위해 로그인을 시도할 수 있고, 이때 로그인모듈(110)이 구동할 수 있는데, 사용자는 입출력모듈(120)의 신호처리에 의해 출력되는 로그인모듈(110)의 구동사항을 확인하고 입출력모듈(120)을 조작해 제어해서 사용자의 정보가 운영모듈(130)에 정확히 전달될 수 있도록 한다.
운영모듈(130)은 로그인모듈(110)의 실행 인가에 따라 단말기의 최초 부팅 환경을 정책에 상응하게 조성 및 활성화하는 것으로서, 사용자의 통신망 접속 관리, 디스크 관리 및 실행되는 애플리케이션 관리 등을 수행한다. 일반적으로 운영모듈(130)은 조성장치(100)를 포함한 단말기의 OS에 기구성된 것이거나 일부가 새롭게 추가될 수 있는데, 이에 대한 보다 상세한 내용은 실시 예를 들어 설명한다.
필터드라이버(140)는 입출력되는 데이터의 경로, 접속 통신망, 보안대상 애플리케이션의 파일(데이터) 처리 등을 정책에 따라 처리하는 것으로서, 커널영역에서 운영모듈(130)의 동작을 제어하면서 사용자별로 설정된 정책이 실행 중에 적용될 수 있도록 한다. 본 발명에 따른 실시 예에서 필터드라이버(140)는 로컬디스크(local disk)에 접근하는 File I/O를 확인해서 해당 사용자의 가상디스크로 redirect 시키는 FSFD(File System Filter Driver)와, 네트워크 통신시 패킷(데이터)의 IP 정보를 분석해서 상기 패킷의 전송 허용 여부를 제어하는 NDIS(Network Driver Interface Specification) Filter Driver와, 특정 데이터를 대상으로 한 이벤트 후속 절차의 속행 여부를 제어하는 필터드라이버를 포함한다. 참고로, 업무망과 인터넷망은 IP로 분류돼 관리되므로, 패킷(데이터)에 포함된 IP를 통해 해당 패킷(데이터)에 지정된 전송경로를 확인할 수 있다.
보안운영프로세스(150)는 필터드라이버(140)의 구동을 위한 정책을 사용자 계정별로 저장 관리하고, 필터드라이버(140)의 질의에 해당하는 정책을 전달해서, 필터드라이버(140)가 상기 정책에 따라 해당 데이터에 대한 다음 처리를 안정적으로 진행할 수 있도록 한다. 보안운영프로세스(150)에 저장되는 정책은 사용자 등에 의해 조정될 수 있고, 이러한 정책 조정은 사용자의 가입 또는 탈퇴시 이루어질 수 있을 것이다.
참고로, 본 발명에 따른 조성장치(100)는 사용자의 계정에 따라 다양한 통신환경 및 사용환경을 갖도록 한 것으로서, 보안운영프로세스(150)가 갖는 정책은 사용자별로 다르게 설정될 수 있다. 따라서, 운영모듈(130)은 사용자의 로그인 과정에서 사용자의 정책을 보안운영프로세스(150)에 질의해 수신한 후 수신한 해당 정책에 상응하는 통신 및 사용환경으로 컴퓨터 단말기를 조성해 부팅해서, 해당 사용자가 설정한 환경에서 상기 컴퓨터 단말기를 사용할 수 있도록 한다.
디스크(160)는 데이터를 저장 관리하는 통상적인 하드웨어로, 본 발명에 따른 디스크(160)는 사용자 계정별로 구분 형성된 제1가상디스크(161)와 제2가상디스크(162) 등의 가상디스크와, 모든 사용자가 공동으로 사용할 수 있는 일반디스크로 구성되고, 상기 가상디스크는 업무망디스크(a)와 인터넷망디스크(b)로 분리돼 구성될 수 있다.
상기 가상디스크는 일반디스크의 일부를 파일형태로 점유하는 데이터의 일종으로서, 본 발명에 따른 운영모듈(130)에는 상기 가상디스크에 데이터를 저장, 삭제 및 편집 등의 관리를 수행하는 가상드라이브 이미지파일과, OS가 상기 가상드라이브 이미지파일을 독립된 File System으로 인식하도록 처리하는 FSD(File System Driver)가 구성되어서, OS는 상기 가상드라이브를 독립된 드라이브로 인식한다. 하드디스크의 실제 분할 없이도 OS가 특정 파일(가상디스크)을 독립된 드라이브로 인식하도록 하는 가상드라이브 기술은 공지,공용의 기술(대한민국 등록특허공보 특허 제0549644호, 특허 제0596135호)로서, 여기서는 가상드라이브를 설정하기 위한 하드웨어적/소프트웨어적인 구성에 대한 구체적인 설명은 생략한다.
계속해서, 상기 가상디스크는 사용자별로 업무망디스크(a)와 인터넷망디스크(b)로 분리돼 구성될 수 있다. 업무망디스크(a)는 업무망에서 발생한 데이터를 저장하는 전용 디스크이고, 인터넷망디스크(b)는 인터넷망에서 발생한 데이터를 저장하는 전용 디스크이다. 따라서, 업무망과 인터넷망의 각 데이터가 동일디스크 내에 혼재되는 것을 방지하고, 이를 통해 업무망의 업무관련문서가 외부로 무단 유출되는 것을 효과적으로 방지한다.
업무망디스크(a)와 인터넷망디스크(b)는 OS가 독립된 드라이브로 인식하도록 할 수도 있을 것이나, 이외에도 업무망디스크(a)와 인터넷망디스크(b)를 동일한 드라이브에 있는 폴더 형태로 인식하고, 데이터의 저장이 해당 폴더에 강제되도록 설정할 수도 있을 것이다.
통신모듈(170)은 조성장치(100)의 통신망(업무망, 인터넷망) 연결을 처리하는 것으로서, TDI(Transport Driver Interface; 171)와 NDIS(Network Driver Interface Specification; 172)와 Miniport(173)를 포함한다.
TDI(171)와 NDIS(172) 및 Miniport(173)는 운영모듈(130)의 제어를 받아 조성장치(100)의 네트워크 통신을 처리하는 공지,공용의 장치로서, 임의 애플리케이션으로부터 생성된 데이터가 지정된 통신망을 통해 정상적으로 전송될 수 있도록 한다. 참고로, NDIS(172)는 네트워크 인터페이스 카드를 위한 표준 API를 정의하고, 상위 레벨(TCP/IP) 프로토콜 드라이버뿐만 아니라 MAC driver들에 의해 사용될 수 있는 함수들의 라이브러리를 제공한다. TDI(171), NDIS(172) 및 Miniport(173) 등으로 구성된 통신모듈(170)은 통신망을 통한 데이터 통신에 필수적으로 적용되는 통상적인 장치로서, 통신모듈(170)의 구체적인 구조 및 소프트웨어적인 구성에 대한 설명은 생략한다.
상기 통신망은 본 발명에 따른 조성장치(100)가 포함된 단말기가 다른 단말기와 통신하기 위해 연결되는 통상적인 네트워크 수단으로서, 본 발명에서는 폐쇄된 근거리통신망인 업무망과, 외부로 공개된 인터넷망으로 구분될 수 있다. 본 발명에 따른 조성장치(100)는 상기 업무망과 인터넷망에 선택적으로 접속될 수 있고, 이러한 망 분리 통신을 통해 데이터의 보안성을 높일 수 있다. 이에 대한 설명은 아래에서 다시 언급한다.
이상 설명한 조성장치(100)는 다음과 같은 과정으로 동작할 수 있다.
우선, 임의 사용자는 조성장치(100)가 포함된 컴퓨터 단말기를 활용하기 위해 로그인을 시도할 수 있고, 이를 위해 로그인모듈(110)이 요구하는 ID를 입출력모듈(120)을 이용해 컴퓨터 단말기에 입력해서 상기 사용자 자신을 확인시킨다.
한편, 로그인모듈(110)과 더불어 운영모듈(130)은 입력된 ID를 확인하고, 보안운영프로세스(150)에 상기 ID에 상응하는 정책을 질의해서, 수신한 정책에 따라 컴퓨터 단말기의 실행환경을 조성한다. 여기서, 상기 실행환경 조성이란, 해당 사용자에게 부여된 가상디스크 활성화, 해당 사용자가 실행 가능한 애플리케이션 활성화, 해당 사용자가 접속(열람)할 수 있는 데이터 활성화 등을 수행하는 것이다.
결국, 사용자가 단말기에 로그인을 하면, 운영모듈(130)은 상기 사용자를 확인해서 보안운영프로세스(150)에 있는 상기 사용자의 해당 정책에 상응하는 환경으로 단말기를 조성하고, 사용자는 지정된 애플리케이션의 구동 및 접속이 허가된 데이터의 접속 등을 진행하면서 단말기를 사용한다.
도 2는 본 발명에 따른 조성장치의 데이터 처리모습을 개략적으로 도시한 블록도인 바, 이를 참조해 설명한다.
본 발명에 따른 조성장치(100)는 애플리케이션(200)에서 생성된 데이터를 디스크(160)에 저장함에 있어, 해당 사용자에게 허가된 가상디스크로만 상기 데이터가 저장되도록 저장소를 분리한다. 또한, 더 나아가 상기 데이터의 발원지가 업무망인지 인터넷망인지를 확인해서, 상기 발원지에 따라 그 저장소가 결정되도록 할 수도 있다.
이를 좀 더 구체적으로 설명하면, 정책에 의해 사용자가 사용할 수 있도록 된 애플리케이션(200)은 자체 동작을 통해 데이터를 생성하고, 운영모듈(130)은 유저영역(User level)에서의 통상적인 구동에 의해 File I/O(OS API)를 발생시킨다.
이렇게 발생한 File I/O는 커널영역(Kernel level)의 OS I/O 매니저(131) 및 OS 필터매니저(132)를 구동시켜서 해당 데이터를 디스크(160)로 전달해 저장시킨다. 여기서, OS I/O 매니저(131) 및 OS 필터매니저(132)는 커널영역에서 구동하는 운영모듈(130)의 일 구성으로서, 데이터를 디스크(160)로 전달해 저장하기 위해 필수적으로 구성되는 공지,공용의 장치이다.
참고로, 디스크(160)는 가상디스크와 일반디스크로 구분될 수 있다. 여기서, 가상디스크는 사용자별로 분리되어서 로그인한 사용자의 가상디스크만이 활성화될 수 있도록 하고, 일반디스크는 사용자에 상관없이 항시 활성화되면서 모두가 공유할 수 있도록 한다. OS 필터매니저(132)는 데이터의 저장 위치를 가상디스크로 할지 일반디스크로 할지를 확인해 처리하고, 가상디스크인 경우 로그인한 사용자의 가상디스크로 상기 데이터가 정확히 저장될 수 있도록 처리한다.
커널영역에 위치한 필터드라이버(140)는 OS 필터매니저(132)의 File I/O를 감지하고, 해당 File I/O 처리에 대한 정책을 보안운영프로세스(150)에 질의한다.
보안운영프로세스(150)는 현 사용자와 애플리케이션의 보안대상 여부 및 해당 데이터의 처리 종류를 확인하고 해당하는 정책을 필터드라이버(140)에 전달한다.
필터드라이버(140)는 수신한 정책에 따라 OS 필터매니저(132)의 동작을 제어하는데, 일 예를 들어 상기 데이터가 사용자의 가상디스크에 저장될 필요가 있는 보안 대상으로 최종 확인되면 필터드라이버(140)는 OS 필터매니저(132)가 데이터를 저장하는 경로를 해당 사용자의 가상디스크로 재지정해서, 상기 데이터가 사용자의 가상디스크로 저장될 수 있도록 한다. 더 나아가, 가상디스크는 업무망디스크(a)와 인터넷망디스크(b)로 분리될 수 있으므로, 이에 따라 필터드라이버(140)는 OS 필터매니저(132)의 데이터 저장 경로를 상세하게 재지정할 수 있고, 이를 통해 데이터는 그 종류에 따라 더 세밀하게 분류 저장돼 보호될 수 있을 것이다.
도 3은 본 발명에 따른 조성장치의 통신망 접속 환경 설정모습을 개략적으로 도시한 블록도인 바, 이를 참조해 설명한다.
본 발명에 따른 조성장치(100)는 하나의 단말기가 다양한 통신망에 접속할 수 있도록 하되, 망 분리 통신을 통해 하나의 통신망에 있는 데이터가 다른 통신망으로 전달돼 무단 유출되는 것을 방지할 수 있도록 된다.
이를 좀 더 구체적으로 설명하면, 유저영역(User level)에서 웹브라우저 또는 P2P 등과 같은 통신전용 애플리케이션(200')의 네트워크 I/O가 발생하면, 통신모듈(170)의 TDI(171), NDIS(172) 및 Miniport(173)는 각각 고유 기능을 수행해서 해당 통신망과의 통신을 인가시키고, 상기 통신망을 통한 데이터의 통신을 속행한다.
여기서, 커널영역의 필터드라이버(140)는 NDIS(172)에서의 네트워크 I/O를 감지하고, 해당 네트워크 I/O 처리에 대한 정책을 보안운영프로세스(150)에 질의한다. 참고로, 보안운영프로세스(150)는 네트워크 I/O에 포함된 패킷(데이터)의 IP를 확인하고, 이를 기준으로 정책을 적용한다.
보안운영프로세스(150)는 현 사용자와 애플리케이션(200')의 보안대상 여부 및 해당 데이터를 확인하고 해당하는 정책을 필터드라이버(140)에 전달한다.
필터드라이버(140)는 수신한 정책에 따라 NDIS(172)의 동작을 제어하는데, 일 예를 들어 업무망 또는 인터넷망에 대한 컴퓨터 단말기의 접속 시도가 인가된 것으로 확인되면 필터드라이버(140)는 NDIS(172) 및 Miniport(173)를 통한 컴퓨터 단말기의 통신 경로를 허용해서 상기 업무망 또는 인터넷망의 접속이 정상화되도록 한다. 그러나, 본 발명에 따른 필터드라이버(140)는 보안을 위해 컴퓨터 단말기가 일시에 업무망 또는 인터넷망 중 하나의 통신망에만 접속해 통신할 수 있도록 하고, 이를 통해 둘 이상의 망 접속을 통한 데이터 유출이 방지되도록 한다.
도 4는 종래 보안프로그램의 프로세스 처리 모습을 개략적으로 도시한 블록도이고, 도 5는 본 발명에 따른 조성장치의 데이터 보안 처리 모습을 개략적으로 도시한 블록도인 바, 이를 참조해 설명한다.
널리 알려진 바와 같이, 디지털컨텐츠는 text, graph, multimedia 등 다양한 종류가 있고, 이를 저장하고 표현하며 배포하기 위한 여러 가지 방법이 사용된다.
여기서, 디지털컨텐츠보호(Digital contents security)란 다양한 종류의 디지털컨텐츠에 대한 배포/표현/저장에 대하여 인증/권한/관리의 보안성을 구현하는 것을 말한다.
디지털컨텐츠 보호를 구현하는 기술중 DRM(Digital Right Management)은 다양한 디지털컨텐츠를 CP(Contents Provider)로부터 고객에게 안전하게 전달하고, 고객이 불법적으로 컨텐츠를 유통하지 못하도록 하는 시스템 기술을 말한다.
역시 디지털컨텐츠 보호를 목적으로 하는 문서보안은 기업환경에서 사내에 있는 핵심정보를 보호하고, 송신하고자 하는 기밀정보를 안전하게 외부로 반출할 뿐만 아니라, 무분별한 불법 유출을 방지하는 보안 솔루션을 통칭하여 말한다. 즉 조직 내 중요 문서의 생성과 보관, 내부유통 및 외부 반출의 전체적 흐름을 통합적인 보안 정책을 통해서 체계적으로 관리할 수 있도록 해주는 솔루션을 말하고 장치제어,프린터 제어,인증,서버기술 등 여러 가지 요소가 혼합돼 구성된다. 이런 문서보안의 구성요소들 중에 저장장치에 있는 데이터에 대한 입출력 제어를 통해 무단유출되지 않게 제어하는 방법을 파일 입출력 보안이라 칭한다.
그런데, 이러한 파일 입출력 보안을 구현하기 위해서는 해당 데이터 또는 보안대상 애플리케이션에 대한 해킹 상황 또는 각종 유출 상황 등을 미리 예견해서, 동일한 상황이 발생할 경우 해당 상황에 대한 신속한 대처가 이루어질 수 있도록 하는 보안 제어 정책이 마련되어 있어야 한다. 즉, 이러한 보안프로그램이 보호대상 데이터 또는 애플리케이션을 효과적으로 보호하기 위해서는, 개발자가 다양한 해킹 상황과 다양한 데이터의 유출 상황 등을 미리 예견해서 보안 제어 정책으로 DB 또는 소스코드(이하 DB로 통칭)로 저장하고, 이를 통해 예견된 해킹 및 데이터의 유출 시도가 확인되면 상기 보안 제어 정책에 따라 상기 데이터에 대한 보안 처리가 진행되도록 하는 것이다. 결국, 파일 입출력 보안프로그램의 우수성은 동일한 환경에 저장된 데이터의 해킹 또는 유출 상황 등을 누가 더 많이 예견해서 이를 대비한 보안 제어 정책을 마련했느냐로 좌우될 수 있는 것이다. 물론, 보안프로그램의 보안 행태는 보안 제어 정책 방식에 한정하는 것은 아니나, 상기 방식은 데이터 보안의 기본적인 보안 행태임은 분명하다.
이를 좀 더 구체적으로 설명하면, 도 4에 도시한 바와 같이, 보안프로그램은 컴퓨터 단말기에 설치되면 유저영역과 커널영역에 각각 유저영역 접근제어엔진(230)과 커널영역 접근제어엔진(180)을 구성시킨다. 이때, 상기 보안프로그램은 보안대상 애플리케이션(200a)에 제어모듈(220) 및 유저영역 접근제어엔진(230)을 적용하고, 비보안대상 애플리케이션(200b)에는 해당 제어모듈(220) 및 유저영역 접근제어엔진(230)을 적용하지 않을 수 있다.
참고로, 유저영역 접근제어엔진(230)은 보안대상 애플리케이션(200a)의 메인프로세스(210) 동작을 제어하고, 커널영역 접근제어엔진(180)은 메인프로세스(210)에 의해 생성된 서브프로세스(미도시함)의 동작을 제어한다. 여기서 메인프로세스(210)와 서브프로세스의 동작을 제어한다 함은 상기 DB에 저장된 보안 제어 정책에 따라 메인프로세스(210) 및 서브프로세스가 처리하는 데이터의 열람/접근/편집/이동/삭제 기타 데이터 처리에 관한 내용을 제어한다는 것이다.
한편, 유저영역 접근제어엔진(230)은 해당 프로세스의 경로 내에 설정되는 DLL 형식으로 제작될 수 있고, 커널영역 접근제어엔진(180)은 드라이버 형식으로 제작될 수 있다. 따라서, 유저영역 접근제어엔진(230)은 특정 데이터에 대한 처리를 위해 함수 실행을 시도할 경우, 유저영역 접근제어엔진(230)의 자체 제어 정책에 따라 상기 함수 실행 자체가 원천적으로 차단될 수 있고, 이로 인해 사용자가 상기 제어 정책에 반하는 업무를 요청한다면 해당 프로세스는 이후 절차 진행을 하지 않을 수도 있다.
계속해서, 제어모듈(220)은 제어 대상 프로세스의 정보와 각종 데이터 등의 복사 및 붙여넣기 등의 제어 정책을 기반으로 상기 정보 및 데이터에 대한 처리를 진행하는 것으로, 통상적인 보안프로그램의 필수 구성이며, DLL 형식으로 제작될 수 있다.
이상 설명한 바와 같이, 종래 보안프로그램은 유저영역과 커널영역에 각각 보안대상 애플리케이션(200a)과 링크되는 제어모듈(220), 유저영역 접근제어엔진(230) 및 커널영역 접근제어엔진(180)이 생성 또는 설치되고, 사용자가 입출력수단(120; 도 1 참조)을 통해 입력하는 명령에 따라 보안대상 애플리케이션(200a)에 대한 데이터 처리를 진행하되, 유저영역 접근제어엔진(230)과 커널영역 접근제어엔진(180)은 설정된 보안 제어 정책에 따라 상기 데이터를 안전한 보안 환경 내에서 처리한다.
그런데, 이러한 종래 보안프로그램은 안정된 보안 환경에서 데이터 또는 보안프로그램이 처리되도록 하기 위해서는, 수많은 보안 제어 정책을 DB에 입력해 유저영역 접근제어엔진(230) 및 커널영역 접근제어엔진(180) 등이 이에 따라 구동하도록 해야하고, 상기 보안프로그램의 설치시 보안대상 애플리케이션(200a)과 비보안대상 애플리케이션(200b)을 구분해서 보안대상 애플리케이션(200a)에 대해서만 해당 제어모듈(220), 유저영역 접근제어엔진(230) 및 커널영역 접근제어엔진(180)이 적용되도록 하는 설치 조건을 제시해야 한다.
결국, 종래 보안프로그램은 전술한 조건을 만족시키기 위해 제작과정에서 구조적인 복잡성과 곤란성이 동반되고, 더욱이 보안성을 높이기 위해 수많은 보안 제어 정책을 주기적으로 제시해 갱신해야 하는데, 이러한 보안 제어 정책 또한 유저영역과 커널영역, 보안대상 애플리케이션(200a)과 비보안대상 애플리케이션(200b) 등의 대상에 따라 다른 포맷과 구동 경로로 제작되어야 하므로, 보안 제어 정책을 제작하고 이를 적용하는 과정 또한 쉽지 않은 문제가 있었다.
물론, 이러한 보안 제어 정책을 개발하기 위해서는 보안대상 애플리케이션(110)에 대한 전문 인력 투입이 불가피하고, 개발 시간 또한 적지 않게 요구되므로, 종래 보안프로그램의 제작과 그 유지 등에 소요되는 비용과 노력이 비효율적인 문제 또한 있었다.
이러한 문제를 해소하기 위해 본 발명에 따른 조성장치(100)는 유저영역에 보안대상 애플리케이션(200a')과 비보안대상 애플리케이션(200b)이 설치되고, 이와 더불어 데이터 처리에 대한 보안 제어 정책을 기반으로 상기 처리를 제어하는 보안운영프로세스(150)가 추가로 설치된다. 즉, 상기 보안운영프로세스(150)는 보안대상 애플리케이션(200a')과 비보안대상 애플리케이션(200b)과는 독립해 구동하는 프로세스인 것이다.
한편, 커널영역에는 보안운영프로세스(150)의 제어를 받아 해당 데이터의 처리를 진행하는 필터드라이버(140)가 설치된다. 여기서, 필터드라이버(140)는 보안대상 애플리케이션(200a')의 메인프로세스(210)가 진행하려하는 처리 내용을 확인해서 보안운영프로세스(150)에 질의하고, 보안운영프로세스(150)의 제어에 따라 다음 과정을 진행한다. 이에 대한 좀 더 구체적인 설명은 본 발명에 따른 보안방법의 실시예와 더불어 설명한다.
도 6은 본 발명에 따른 조성장치가 보안대상 애플리케이션에서 데이터를 보안 처리하는 과정을 순차 도시한 플로차트인 바, 이를 참조해 설명한다.
S10; 프로세스 구동단계
사용자가 실행하고자하는 애플리케이션(200a', 200b)을 통상적인 입력수단(미도시함)을 이용해 선택하면, 상기 애플리케이션(200a', 200b)의 메인프로세스(210)가 각각 구동하면서 해당 애플리케이션(200a', 200b)을 실행시킨다.
참고로, OS의 탐색기(미도시함)에 의해 진행되는 애플리케이션(200a', 200b)의 실행 과정과 방법은 널리 알려진 공지,공용의 기술이므로, 여기서는 그 설명을 생략한다.
계속해서, 해당 애플리케이션(200a', 200b)이 보안대상 애플리케이션(200a')일 경우, 상기 보안대상 애플리케이션(200a')의 메인프로세스(210) 구동을 확인할 수 있다. 메인프로세스(210)의 구동을 확인하기 위한 수단은 매우 다양할 수 있는데, 우선 탐색기의 프로세스(미도시함)에서 처리되는 API 함수(Createprocess, Createfile 등)의 구동 경로를 확인해서 최종 구동 경로의 애플리케이션을 확인하는 방법, 애플리케이션이 실행될 때 구동하는 프로세스의 종류를 확인하는 방법 등이 있으며, 아래에서 기재되는 청구범위를 벗어나지 않는 한도 내에서 다양하게 변형실시될 수 있음은 물론이다.
S20; 보안운영프로세스 구동단계
보안대상 애플리케이션(200a')의 실행이 확인되면 보안운영프로세스(150)의 해당 기능이 실행되도록 될 수 있다. 보안운영프로세스(150)는 보안대상 애플리케이션(200a')의 보안 정책 전달 외에도 가상디스크의 활성화, 사용자별 애플리케이션의 활성화, 통신망 제한 등에 대한 정책 등을 관리한다. 따라서, 보안운영프로세스(150) 자체는 단말기의 ON 동작과 동시에 실행되고, 보안대상 애플리케이션(200a')에 대한 정책 관리 실행은 보안대상 애플리케이션(200a') 실행 시 실행되도록 할 수도 있다. 그러나, 보안운영프로세스(150)의 해당 동작이 전술한 실시 예에 한정하는 것은 아니며, 보안대상 애플리케이션(200a')의 실행 여부와 상관없이 항시 ON 상태를 유지하도록 될 수도 있을 것이다.
보안운영프로세스(150)는 보안대상 애플리케이션(200a')의 식별기준, 데이터 처리의 실행기준 등을 제한한 보안 제어 정책에 따라 구동하면서 보안대상 애플리케이션(200a')에 의해 처리되는 데이터를 보호함은 물론, 더 나아가 비보안대상 애플리케이션(200b)에 의해 처리되는 데이터까지도 보호할 수 있다. 즉, 사용자의 선택에 따라 보안대상 애플리케이션(200a')의 처리 데이터만 보호하도록 할 수도 있고, 애플리케이션의 보안 대상 여부에 상관없이 해당 컴퓨터 단말기에서 처리되는 모든 데이터를 보호하도록 할 수도 있는 것이다.
S30; 이벤트 발생단계
사용자는 현재 실행중인 (비)보안대상 애플리케이션(200a', 200b)을 조작해서 데이터를 실행, 편집, 저장 또는 삭제 등(이하 '이벤트')을 할 수 있고, 사용자가 입력한 상기 이벤트는 해당 (비)보안대상 애플리케이션(200a', 200b)의 메인프로세스(210)가 관련 함수를 처리함으로써 진행된다. 이때, 커널영역의 필터드라이버(140)는 상기 함수를 훅 처리해서 상기 이벤트에 대한 정보를 확인할 수 있도록 함은 물론, 이후 진행에 대한 처리를 중단시킨 후 보안운영프로세스(150)의 결정 사항에 따라 후속처리가 진행되도록 한다.
S40; 제어 정책 확인단계
상기 이벤트의 후속처리를 위해 필터드라이버(140)는 보안운영프로세스(150)로 상기 이벤트 발생을 알리되, 이벤트의 종류, 해당 애플리케이션의 종류, 이벤트 발생 위치 등에 대한 이벤트 정보를 함께 전달한다.
보안운영프로세스(150)는 상기 이벤트 정보를 확인해서 해당 보안 제어 정책을 검색하고, 상기 이벤트의 후속처리 가능 여부를 판단한다. 즉, 보안운영프로세스(150)는 유저영역과 커널영역 전체에 각각 적용된 보안 제어 정책을 하나의 프로세스(보안운영프로세스)에 집중시킬 수 있으므로, 상기 보안 제어 정책은 보안운영프로세스(150)에 맞는 형식으로만 제작하면 되고, 이를 통해 관리자는 보안프로그램 관리를 위해 수행하는 보안 제어 정책의 제작 및 갱신 작업을 획기적으로 간편화할 수 있다.
계속해서, 보안운영프로세스(150)는 다양한 보안 제어 정책을 DLL 형식으로 저장할 수 있고, 상기 이벤트 정보를 해당 보안 제어 정책과 비교해서 후속처리 가능 여부에 대한 결정 사항을 필터드라이버(140)로 전달한다.
S50; 실행단계
보안운영프로세스(150)의 결정 사항이 필터드라이버(140)로 전달되면, 필터드라이버(140)는 중단된 상기 이벤트의 후속처리를 상기 결정 사항에 따라 진행한다.
결국, 상기 결정 사항이 다음 실행을 중단하는 것일 경우엔 해당 후속 처리는 해당 함수의 처리를 중단하는 것이고, 상기 결정 사항이 다음 실행을 속행하는 것일 경우엔 해당 후속 처리는 해당 함수의 처리를 지속하는 것이 될 것이다.
따라서, 본 발명에 따른 보안시스템은 데이터의 보안을 위해 보안운영프로세스(150)에 설정되는 보안 제어 정책만으로도, 상기 데이터의 보안을 안정적으로 진행할 수 있고, 보안프로그램의 관리 및 갱신을 위한 보안 제어 정책의 제작과 갱신 작업에 대한 수고를 줄일 수 있다.
도 7은 본 발명에 따른 조성장치에 의한 데이터 보안 처리 중 제어 정책 확인과 실행에 대한 진행과정을 순차 도시한 플로차트인 바, 이를 참조해 설명한다.
S41; 영역 확인단계
본 발명에 따른 보안 제어 정책은 해당 컴퓨터 단말기에 일반영역과 구분되는 보안영역을 설정해서, 영역별로 데이터의 이벤트 처리가 이루어지도록 한다.
즉, 컴퓨터 단말기에 공개된 일반영역인 C 드라이브가 존재한다면, 보안프로그램을 컴퓨터 단말기에 설치해 설정할 경우, 상기 C 드라이브와는 독립된 D 드라이브가 생성되고, 상기 D 드라이브는 보안영역으로서 D 드라이브에서 발생하는 이벤트의 대상 데이터를 보호하게 되는 것이다. 물론, 본 발명에 따른 보안영역은 드라이브 단위로 구분될 수도 있을 것이나, 폴더 단위로 구분될 수도 있다. 결국, 보안영역은 데이터(파일)의 저장과 관리가 이루어질 수 있는 공간이라면, 그 공간의 형식에 구분없이 다양하게 변형실시될 수 있다. 이하에서는 C 드라이브는 일반영역을 대표해 기재하고, D 드라이브는 보안영역을 대표해 기재한다. 참고로, 본 발명에 따른 실시 예에서, 일반영역은 일반디스크로 할당될 수 있고, 보안영역은 가상디스크로 할당될 수 있을 것이다.
본 단계인 영역 확인단계(S41)에서는 보안운영프로세스(150)가 필터드라이버(140)에서 전달한 이벤트 정보를 확인해서, (비)보안대상 애플리케이션(200a', 200b)이 실행하고 있는 데이터(파일)의 위치가 C 드라이브인지 D 드라이브인지를 확인한다. 즉, 실행하고 있는 데이터(파일)의 위치가 일반영역인지 보안영역인지를 확인하는 것이다.
상기 이벤트 정보의 해당 이벤트가 보안영역인 D 드라이브에서 이루어지는 것으로 확인되면, 보안운영프로세스(150)는 필터드라이버(140)에 해당 이벤트에 대한 모든 처리(불러오기, 저장)를 속행시키는 결정 사항을 전달하고, 필터드라이버(140)는 상기 결정 사항에 따라 해당 이벤트의 후속처리를 속행한다(내용처리단계, S54).
반면, 상기 이벤트 정보의 해당 이벤트가 일반영역인 C 드라이브에서 이루어지는 것으로 확인되면, 보안운영프로세스(150)는 상기 이벤트의 내용을 확인하는 다음 단계를 진행한다.
S42; 이벤트 내용 확인단계
상기 영역 확인단계(S41)에서 이벤트가 진행되는 영역이 일반영역으로 확인되면, 이벤트의 내용이 불러오기인지 저장인지를 확인한다. 여기서, 불러오기는 데이터의 출력을 대표하는 것이고, 저장은 데이터의 쓰기, 편집 및 저장을 대표하는 것이다.
만일, (비)보안대상 애플리케이션(200a', 200b)이 실행하는 데이터(파일)가 이미 있던 파일을 불러와 실행하는 것이라면, 본 단계(S42)에서 해당 이벤트 정보가 데이터(파일)의 불러오기일 경우 경로가 재지정된 파일을 탐색해 열도록 한다(경로 재지정파일 열기단계, S55). 경로 재지정에 대한 좀 더 구체적인 설명은 아래에서 상세히 한다.
계속해서, (비)보안대상 애플리케이션(200a', 200b)이 실행하는 데이터(파일)가 새로 생성된 것으로서 상기 이벤트의 내용이 상기 데이터(파일)를 컴퓨터 단말기의 일반영역에 저장하는 것이라면, 보안운영프로세스(150)는 더미정보를 생성하는 다음 단계를 진행한다.
S51; 더미파일 생성단계
본 발명에 따른 보안방법은 해당 이벤트가 일반영역에서 이루어지더라도, 보안시스템은 상기 이벤트를 보안영역에서 수행하되, 사용자는 자신이 수행하고 있는 이벤트가 일반영역에서 이루어지는 것으로 인지하도록 진행한다.
이를 위해 보안운영프로세스(150)는 필터드라이버(140)가 해당 데이터(파일)를 대신하는 더미파일을 생성하도록 하는 결정사항을 전달하고, 필터드라이버(140)는 상기 결정사항에 따라 더미파일을 생성해서 사용자가 지정한 일반영역의 해당 위치에 이를 저장한다. 일 예를 들어 설명하면, 사용자가 (비)보안대상 애플리케이션(200a', 200b)인 한글(HWP.exe)에서 문서를 작업해 이를 a.hwp 명으로 C 드라이브의 A폴더에 저장을 시도한다면, 필터드라이버(140)는 상기 a.hwp의 더미파일인 동일한 파일명의 a.hwp를 생성한 후, 사용자가 지정한 C 드라이브의 A폴더에 이를 저장한다. 결국, 상기 더미파일의 경로는 C:\A\a.hwp가 될 것이다.
S52; 경로재지정 단계
계속해서, 필터드라이버(140)는 사용자가 작업한 원본인 a.hwp를 보안영역인 D 드라이브에 저장하되, 사용자가 생성한 A폴더 또한 D 드라이브에 생성시켜서 상기 원본 a.hwp이 D 드라이브의 A폴더에 저장되도록 탐색 경로를 지정한다.
이때 원본 데이터(파일)의 더미파일은 파일명에 대한 데이터와 원본 데이터(파일)과의 링크를 위한 정보만을 포함할 뿐이고 실제 데이터는 전혀 포함하고 있지 않다.
참고로, 보안영역인 D 드라이브에서 필터드라이버(140)의 경로재지정으로 저장되는 원본 데이터(파일)에 대한 관리를 효과적으로 하기 위해, D 드라이브의 하위 디렉토리로 C 드라이브 폴더를 생성시키고, 이렇게 생성된 C 드라이브에 하위 디렉토리인 상기 A폴더를 생성시킨 후 원본 데이터(파일)를 저장할 수도 있을 것이다. 따라서, 원본 데이터(파일)의 재지정 경로는 D:\C\A\a.hwp가 될 것이다.
S53; 내용처리단계
원본 데이터(파일)와 더미파일의 생성 및 경로 지정이 완료되면, 필터드라이버(140)는 사용자가 입력하는 정보가 더미파일이 아닌 원본 데이터(파일)에 저장되도록 처리한다. 내용처리에 대한 사용자의 계속 진행 여부를 확인(S56)해서 본 발명에 따른 제어 정책 확인단계(S40)와 실행단계(S50)를 반복할 수 있다.
참고로, 이벤트 내용 확인단계(S42)에서 사용자는 일반영역에 있는 더미파일의 불러오기를 시도할 수 있는데, 이러한 이벤트가 발생하면 필터드라이버(140)는 해당 이벤트 정보를 보안운영프로세스(150)로 전달하고, 보안운영프로세스(150)는 이러한 이벤트 정보를 확인해서 필터드라이버(140)가 상기 더미파일을 대신해 해당 더미파일의 원본 데이터(파일)를 불러오도록 하는 결정사항을 전달한다. 물론, 필터드라이버(140)는 재지정된 경로에 따라 원본 데이터(파일)를 불러와 실행시킬 것이다.
또한, 사용자는 일반영역에서 더미파일의 위치를 변경할 수 있는데, 필터드라이버(140)는 이러한 이벤트를 확인해서 해당 이벤트 정보를 보안운영프로세스(150)로 전달하고, 보안운영프로세스(150)는 상기 이벤트 정보가 보안 제어 정책에 상응하는 이벤트라면, 해당 더미파일의 원본 데이터(파일) 또한 그 위치를 수정하도록 하는 결정사항을 필터드라이버(140)에 전달할 수 있다.
일 예를 통해 설명하면, 사용자가 일반영역인 C 드라이브의 A 폴더에 저장된 a.hwp의 위치를 B 폴더로 옮기는 이벤트를 진행한다면, 필터드라이버(140)는 보안운영프로세스(150)의 결정사항에 따라, 해당 더미파일의 경로를 C:\A\a.hwp에서 C:\B\a.hwp로 수정하고, 이와 더불어 상기 더미파일의 원본 데이터(파일)의 경로를 D:\C\A\a.hwp에서 D:\C\B\a.hwp로 수정할 수 있다.
앞서 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예들을 참조해 설명했지만, 해당 기술분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술될 특허청구범위에 기재된 본 발명의 사상 및 기술영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100; 조성장치 110; 로그인모듈 120; 입출력모듈
130; 운영모듈 140; 필터드라이브 150; 보안운영프로세스
160; 디스크 170; 통신모듈 200, 200'; 애플리케이션

Claims (8)

  1. 삭제
  2. 사용자의 정보를 입력받아 사용자를 확인하고, 단말기의 실행을 인가하는 로그인모듈;
    공용 일반디스크와, OS(Operating System)가 독립된 파일시스템으로 인식하는 가상드라이브 이미지파일에 의해 관리되고 상기 일반디스크에 파일형태로 저장되는 가상디스크로 구성된 디스크;
    사용자 계정별 정책을 관리하고, 운영모듈 및 필터드라이버의 질의에 대응해 해당 정책을 전달하는 보안운영프로세스;
    상기 로그인모듈의 실행 인가 시 상기 보안운영프로세스로 해당 사용자의 정책을 질의해서 상기 단말기를 해당 정책에 상응하게 활성화하고, 애플리케이션의 데이터 처리 및 상기 디스크에 대한 저장 처리를 상기 정책에 따라 진행하며, OS I/O 매니저와 OS 필터매니저를 포함하는 운영모듈;
    상기 단말기의 업무망 및 인터넷망에 대한 선택적인 접속을 처리하고, 상기 업무망 또는 인터넷망을 통한 데이터의 전송 처리를 상기 정책에 따라 진행하는 통신모듈; 및
    상기 운영모듈 및 통신모듈의 데이터 처리를 확인하고 상기 보안운영프로세스에 정책을 질의해서 상기 운영모듈 및 통신모듈로 전달하며, 애플리케이션에서 발생한 데이터에 대한 File I/O를 상기 OS 필터매니저에서 인식해서 해당 정책에 따라 해당 사용자의 가상디스크로 상기 데이터가 저장되도록 경로를 재지정하는 필터드라이버;
    를 포함하는 것을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치.
  3. 사용자의 정보를 입력받아 사용자를 확인하고, 단말기의 실행을 인가하는 로그인모듈;
    공용 일반디스크와, OS(Operating System)가 독립된 파일시스템으로 인식하는 가상드라이브 이미지파일에 의해 관리되고 상기 일반디스크에 파일형태로 저장되는 가상디스크로 구성된 디스크;
    사용자 계정별 정책을 관리하고, 운영모듈 및 필터드라이버의 질의에 대응해 해당 정책을 전달하는 보안운영프로세스;
    상기 로그인모듈의 실행 인가 시 상기 보안운영프로세스로 해당 사용자의 정책을 질의해서 상기 단말기를 해당 정책에 상응하게 활성화하고, 애플리케이션의 데이터 처리 및 상기 디스크에 대한 저장 처리를 상기 정책에 따라 진행하는 운영모듈;
    상기 단말기의 업무망 및 인터넷망에 대한 선택적인 접속을 처리하고, 상기 업무망 또는 인터넷망을 통한 데이터의 전송 처리를 상기 정책에 따라 진행하며, TDI와, NDIS와, Miniport를 포함하는 통신모듈; 및
    상기 운영모듈 및 통신모듈의 데이터 처리를 확인하고 상기 보안운영프로세스에 정책을 질의해서 상기 운영모듈 및 통신모듈로 전달하며, 애플리케이션에서 발생한 데이터에 대한 네트워크 I/O와 IP를 상기 NDIS에서 인식해서 해당 정책에 따라 상기 데이터의 후속 처리 여부를 결정하는 필터드라이버;
    를 포함하는 것을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치.
  4. 단말기에 설치된 로그인모듈이 사용자의 정보를 입력받아 사용자를 확인하고, 상기 단말기의 실행을 인가하는 단계;
    운용모듈이 로그인한 사용자의 정책에 대해 사용자 계정별 정책을 관리하는 보안운영프로세스로 질의해 수신하고, 상기 정책에 따라 상기 사용자의 가상디스크와 애플리케이션을 활성화하고, 통신모듈은 업무망 또는 인터넷망 중 선택된 하나의 통신망과의 접속을 대기하며, 상기 운용모듈 또는 통신모듈의 실행에 따라 상기 보안운영프로세스에 정책을 질의하도록 연결되는 필터드라이버를 활성화하는 단계;
    상기 필터드라이버는 애플리케이션이 처리하는 이벤트를 확인해서 그 진행을 중단시키고, 상기 이벤트의 이벤트 정보를 상기 보안운영프로세스로 전달하는 이벤트 발생단계;
    상기 보안운영프로세스는 상기 이벤트 정보와 해당 보안 제어 정책을 비교해서 상기 이벤트 정보의 후속처리를 결정하고, 해당 결정사항을 상기 필터드라이버로 전달하는 제어 정책 확인단계; 및
    상기 필터드라이버는 상기 보안운영프로세스의 상기 결정사항에 따라 해당 이벤트에 대한 후속처리를 속행하는 실행단계;
    를 포함하는 것을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성방법.
  5. 삭제
  6. 제 4 항에 있어서,
    상기 보안운영프로세스 및 필터드라이버가 설치된 상기 단말기에는 데이터(파일)의 실행이 이루어지는 저장공간이 보안영역과 일반영역으로 구분돼 설정되고,
    상기 제어 정책 확인단계는, 상기 보안영역과 일반영역 중 애플리케이션이 처리하는 이벤트가 이루어지는 영역을 확인해서, 해당 영역이 보안영역으로 확인되면 상기 보안운영프로세스는 상기 필터드라이버에 상기 이벤트의 진행을 속행하는 결정사항을 전달하는 영역확인단계를 포함하고;
    상기 실행단계는, 상기 필터드라이버가 상기 이벤트의 진행을 속행하는 결정사항을 받아 후속처리를 속행하는 내용처리단계를 포함하는 것;
    을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성방법.
  7. 제 6 항에 있어서,
    상기 제어 정책 확인단계는, 상기 영역확인단계에서 해당 영역이 일반영역으로 확인되면 상기 보안운영프로세스는 상기 이벤트가 데이터(파일)에 대한 저장인지 불러오기인지를 확인해서, 상기 이벤트가 저장으로 확인되면 상기 보안운영프로세스는 상기 필터드라이버에 더미파일 생성과 원본 데이터(파일)에 대한 경로 재지정에 관한 결정사항을 전달하는 이벤트 내용 확인단계를 포함하고;
    상기 실행단계는, 상기 필터드라이버가 상기 더미파일을 생성하는 결정사항을 받아 사용자가 지정한 일반영역에 상기 더미파일을 생성하는 더미파일생성단계와, 상기 필터드라이버가 상기 경로 재지정하는 결정사항을 받아 원본 데이터(파일)의 경로를 보안영역으로 재지정해 저장하는 경로재지정단계와, 애플리케이션의 해당 이벤트가 보안영역에 재지정된 원본 데이터(파일)를 대상으로 진행되는 내용처리단계를 포함하는 것을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성방법.
  8. 제 7 항에 있어서,
    상기 이벤트 내용 확인단계는 상기 이벤트가 데이터(파일)에 대한 불러오기로 확인되면, 상기 보안운영프로세스는 보안영역에 저장된 상기 데이터(파일)의 원본 데이터(파일)를 검색하는 결정사항을 상기 필터드라이버로 전달하고;
    상기 실행단계는, 상기 필터드라이버가 보안영역에서 경로가 재지정된 원본 데이터(파일)를 검색해 실행하는 경로재지정파일 열기단계(S55)를 더 포함하는 것;
    을 특징으로 하는 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성방법.
KR1020110090779A 2011-09-07 2011-09-07 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법 KR101299051B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110090779A KR101299051B1 (ko) 2011-09-07 2011-09-07 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110090779A KR101299051B1 (ko) 2011-09-07 2011-09-07 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법

Publications (2)

Publication Number Publication Date
KR20130027288A KR20130027288A (ko) 2013-03-15
KR101299051B1 true KR101299051B1 (ko) 2013-09-16

Family

ID=48178281

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110090779A KR101299051B1 (ko) 2011-09-07 2011-09-07 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법

Country Status (1)

Country Link
KR (1) KR101299051B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160118A1 (ko) * 2014-04-15 2015-10-22 (주)나무소프트 보안 저장 영역에 대한 응용 프로그램의 접근 제어 방법 및 장치
US11764005B2 (en) 2018-10-23 2023-09-19 Samsung Electronics Co., Ltd. Electronic device including key assembly and operation method thereof

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101446326B1 (ko) * 2013-03-28 2014-10-07 소프트캠프(주) 보안데이터 관리장치와 관리방법
WO2024076103A1 (ko) * 2022-10-07 2024-04-11 삼성전자 주식회사 데이터 수집 시스템 및 그 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050086051A (ko) * 2004-02-24 2005-08-30 소프트캠프(주) 가상 디스크를 이용한 응용 프로그램 별 접근통제시스템과 그 통제방법
KR20090065127A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 가상 환경을 이용한 안전한 데스크톱 운영 시스템 및 그방법
KR20100030872A (ko) * 2008-09-11 2010-03-19 현대중공업 주식회사 프로그램의 동작 목적에 따른 프로세스 제어기반 파일시스템 제어기
KR20100030874A (ko) * 2008-09-11 2010-03-19 현대중공업 주식회사 프로그램의 동작 목적에 따른 프로세스 제어기반 개인 방화벽 제어기

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050086051A (ko) * 2004-02-24 2005-08-30 소프트캠프(주) 가상 디스크를 이용한 응용 프로그램 별 접근통제시스템과 그 통제방법
KR20090065127A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 가상 환경을 이용한 안전한 데스크톱 운영 시스템 및 그방법
KR20100030872A (ko) * 2008-09-11 2010-03-19 현대중공업 주식회사 프로그램의 동작 목적에 따른 프로세스 제어기반 파일시스템 제어기
KR20100030874A (ko) * 2008-09-11 2010-03-19 현대중공업 주식회사 프로그램의 동작 목적에 따른 프로세스 제어기반 개인 방화벽 제어기

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160118A1 (ko) * 2014-04-15 2015-10-22 (주)나무소프트 보안 저장 영역에 대한 응용 프로그램의 접근 제어 방법 및 장치
KR20150144312A (ko) * 2014-04-15 2015-12-24 (주)나무소프트 보안 저장 영역에 대한 응용 프로그램의 접근 제어 방법 및 장치
KR101705550B1 (ko) 2014-04-15 2017-02-10 (주)나무소프트 보안 저장 영역에 대한 응용 프로그램의 접근 제어 방법 및 장치
US10289860B2 (en) 2014-04-15 2019-05-14 Namusoft Co., Ltd. Method and apparatus for access control of application program for secure storage area
US11764005B2 (en) 2018-10-23 2023-09-19 Samsung Electronics Co., Ltd. Electronic device including key assembly and operation method thereof

Also Published As

Publication number Publication date
KR20130027288A (ko) 2013-03-15

Similar Documents

Publication Publication Date Title
US9594898B2 (en) Methods and systems for controlling access to resources and privileges per process
US10404708B2 (en) System for secure file access
US8839234B1 (en) System and method for automated configuration of software installation package
KR101705550B1 (ko) 보안 저장 영역에 대한 응용 프로그램의 접근 제어 방법 및 장치
US8799407B2 (en) Computer program and method for biometrically secured, transparent encryption and decryption
US7380267B2 (en) Policy setting support tool
KR101113820B1 (ko) 응용프로그램의 파일 입출력 보안방법과 보안시스템
US8752201B2 (en) Apparatus and method for managing digital rights through hooking a kernel native API
US10650158B2 (en) System and method for secure file access of derivative works
US9350760B2 (en) Method and system for implementing mandatory file access control in native discretionary access control environments
US20170353458A1 (en) System and method to allow third-party developer to debug code in customer environment
EP2939390B1 (en) Processing device and method of operation thereof
WO2008087085A2 (en) Administering access permissions for computer resources
GB2398134A (en) Applying a data handing policy to predetermined system calls
US20100031373A1 (en) Method and system for secure flexible software licensing
US20150358357A1 (en) Processing device and method of operation thereof
KR101299051B1 (ko) 사용자 계정에 따라 작업환경을 분리하는 정보 처리환경 조성장치와 방법
US8205072B1 (en) Method and apparatus for electronically configuring a secured user desktop
JP6670318B2 (ja) ソフトウェアアプリケーションにおける分類及びirmの実現
US20180189415A1 (en) Controlling access to one or more datasets of an operating system in use
JP2004303242A (ja) 高信頼性コンピューティングシステムにおけるセキュリティ属性
US11822699B1 (en) Preventing surreptitious access to file data by malware
JP2009176265A (ja) 情報処理装置および情報処理システム
TWI736012B (zh) 位元鎖磁碟處理程序管理系統與方法
CN112784263B (zh) 位元锁磁盘处理程序管理系统与方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160810

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170808

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180814

Year of fee payment: 6