KR101549896B1 - 단말 장치 및 단말 장치의 소프트웨어 관리 방법 - Google Patents

단말 장치 및 단말 장치의 소프트웨어 관리 방법 Download PDF

Info

Publication number
KR101549896B1
KR101549896B1 KR1020130138991A KR20130138991A KR101549896B1 KR 101549896 B1 KR101549896 B1 KR 101549896B1 KR 1020130138991 A KR1020130138991 A KR 1020130138991A KR 20130138991 A KR20130138991 A KR 20130138991A KR 101549896 B1 KR101549896 B1 KR 101549896B1
Authority
KR
South Korea
Prior art keywords
software
terminal device
identification information
whitelist
installation
Prior art date
Application number
KR1020130138991A
Other languages
English (en)
Other versions
KR20150056244A (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 KR1020130138991A priority Critical patent/KR101549896B1/ko
Publication of KR20150056244A publication Critical patent/KR20150056244A/ko
Application granted granted Critical
Publication of KR101549896B1 publication Critical patent/KR101549896B1/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • 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

Abstract

본 발명의 일 실시 예에 따른 단말 장치의 소프트웨어 관리 방법은, 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 단계, 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 단계, 제1 화이트 리스트를 단말 장치에 저장하는 단계 및 단말 장치를 락킹(Locking)하여 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 설치 또는 실행되는 소프트웨어를 차단하는 단계를 포함한다.

Description

단말 장치 및 단말 장치의 소프트웨어 관리 방법{TERMINAL DEVICE AND SOFTWARE MANAGING METHOD THEREOF}
본 발명은 화이트리스트를 이용하여 단말 장치에 설치 또는 실행되는 소프트웨어를 관리하는 단말 장치 및 단말 장치의 소프트웨어 관리 방법에 관한 것이다.
기업에서 사용되는 컴퓨터에 대해 비인가 또는 불법 소프트웨어의 무단 설치가 문제되고 있다. 불법 소프트웨어의 사용은 불법 소프트웨어에 포함된 악성 코드 등으로 인한 보안 문제를 발생시킬 수 있으며 소프트웨어의 저작권 침해라는 문제가 발생할 수 있다.
소프트웨어 개발사에서는 소프트웨어의 라이센스를 이용해 불법 소프트웨어를 방지하고 있으나 해커들에 의해 라이센스가 무력화된 소프트웨어가 배포되어 소프트웨어의 불법 사용을 근본적으로 차단할 수는 없는 실정이다.
본 발명의 목적은 불법 소프트웨어의 설치 및 실행을 원천적으로 차단하고 업무 특성에 따라 필요한 소프트웨어를 효과적으로 관리할 수 있는 단말 장치 및 단말 장치의 소프트웨어 관리 방법을 제공함에 있다.
본 발명의 일 실시 예에 따른 단말 장치의 소프트웨어 관리 방법은 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 단계, 상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 단계, 상기 제1 화이트 리스트를 상기 단말 장치에 저장하는 단계 및 상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하는 단계를 포함한다.
여기서, 상기 소프트웨어 식별 정보는, 상기 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 포함할 수 있다.
그리고, 상기 소프트웨어 식별 정보는, 상기 소프트웨어의 설치 경로 및 상기 소프트웨어의 실행 파일의 해시값 중 적어도 하나를 더 포함할 수 있으며, 상기 제1 화이트리스트(Whitelist)를 생성하는 단계는, 상기 소프트웨어 식별 정보 중 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 상기 소프트웨어의 설치 경로 또는 상기 실행 파일의 해시값을 이용하여 상기 제1 화이트리스트를 생성할 수 있다.
그리고, 단말 장치의 소프트웨어 관리 방법은 상기 단말 장치의 장치 식별 정보를 수집하는 단계를 더 포함할 수 있으며, 상기 제1 화이트리스트를 생성하는 단계는, 상기 장치 식별 정보 및 상기 소프트웨어 식별 정보를 조합하여 상기 제1 화이트리스트를 생성할 수 있다.
그리고, 단말 장치의 소프트웨어 관리 방법은 서버로부터 제2 화이트리스트를 수신하여 저장하는 단계 및 상기 설치 또는 실행이 차단된 소프트웨어의 소프트웨어 식별 정보가 상기 제2 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하면 상기 소프트웨어의 설치 또는 실행을 허용하는 단계를 더 포함할 수 있다.
여기서, 상기 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 비교하여 넓은 범위의 버전을 포함할 수 있다.
그리고, 단말 장치의 소프트웨어 관리 방법은, 서버로부터 제3 화이트리스트를 수신하여 저장하는 단계 및 상기 설치 또는 실행이 차단된 소프트웨어의 소프트웨어 식별 정보가 상기 제3 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하면 상기 소프트웨어의 설치 또는 실행을 허용하는 단계를 더 포함할 수 있다.
여기서, 상기 제3 화이트리스트에 포함된 소프트웨어 식별 정보는 상기 단말 장치에 설치된 OS(Operating System)의 회사명, 제품명, 실행 파일명 및 설치 경로를 포함할 수 있다.
그리고, 단말 장치의 소프트웨어 관리 방법은, 소프트웨어의 설치 또는 실행을 서버로 요청하는 단계, 상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 단계, 상기 단말 장치의 락킹을 해제하고 상기 소프트웨어를 설치 또는 실행하는 단계 및 상기 소프트웨어의 설치 또는 실행이 종료되면 상기 단말 장치를 락킹하는 단계를 더 포함할 수 있다.
그리고, 상기 단말 장치의 락킹이 해제되면 상기 단말 장치의 CD(Compact Disk) 및 USB(Universal Serial Bus) 모듈 중 적어도 하나를 통한 데이터 송수신을 차단하는 단계를 더 포함할 수 있다.
또한, 상기 단말 장치의 락킹이 해제되면 상기 서버와의 통신을 제외한 네트워크 연결을 차단하는 단계를 더 포함할 수 있다.
그리고, 상기 단말 장치에 새로운 소프트웨어가 설치되면 상기 단말 장치의 제1 화이트리스트를 업데이트하는 단계를 더 포함할 수 있다.
한편, 본 발명의 일 실시 예에 따른 컴퓨터 판독 가능 기록 매체에는 제1항 내지 제12항 중 어느 한 항에 따른 방법을 수행하는 프로그램이 기록될 수 있다.
본 발명의 일 실시 예에 따른 단말 장치는, 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 정보 수집부, 상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 리스트 생성부, 상기 제1 화이트 리스트를 저장하는 저장부 및 상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하는 설치 제어부를 포함할 수 있다.
여기서, 상기 소프트웨어 식별 정보는, 상기 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 포함할 수 있다.
그리고, 소프트웨어 식별 정보는, 상기 소프트웨어의 설치 경로 및 상기 소프트웨어의 실행 파일의 해시값 중 적어도 하나를 더 포함할 수 있으며, 상기 리스트 생성부는, 상기 소프트웨어 식별 정보 중 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 상기 소프트웨어의 설치 경로 또는 상기 실행 파일의 해시값을 이용하여 상기 제1 화이트리스트를 생성할 수 있다.
그리고, 상기 단말 장치는, 소프트웨어의 설치 또는 실행 요청을 서버로 전송하고, 상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 통신부를 더 포함할 수 있으며, 상기 설치 제어부는, 상기 소프트웨어의 설치 또는 실행 허용 명령이 수신되면 상기 단말 장치의 락킹을 해제하고 상기 소프트웨어의 설치 또는 실행이 종료되면 상기 단말 장치를 다시 락킹할 수 있다.
그리고, 상기 단말 장치는, 상기 단말 장치의 락킹이 해제되면 상기 단말 장치의 CD(Compact Disk) 및 USB(Universal Serial Bus) 모듈 중 적어도 하나를 통한 데이터 송수신을 차단하는 매체 제어부를 더 포함할 수 있다.
또한, 상기 매체 제어부는 상기 단말 장치의 락킹이 해제되면 상기 서버와의 통신을 제외한 네트워크 연결을 차단할 수 있다.
본 발명의 다양한 실시 예에 따르면 불법 소프트웨어, 악성 코드 등에 의한 보안 문제 및 저작권 문제를 원천적으로 차단할 수 있다. 또한, 업무 특성에 따라 각 단말 장치를 효과적으로 관리할 수 있다.
그리고, 소프트웨어의 설치 또는 실행이 필요한 경우 관리자의 허가에 의해 소프트웨어의 설치 또는 실행을 허용함으로써 보안 위협을 최소화하며 효율적으로 소프트웨어를 관리할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 소프트웨어 관리 방법을 설명하기 위한 시퀀스도이다.
도 3은 본 발명의 일 실시 예에 따른 단말 장치의 구성을 나타내는 블럭도이다.
도 4는 본 발명의 일 실시 예에 따른 단말 장치의 소프트웨어 관리 방법을 설명하기 위한 도면이다.
이하에서 첨부한 도면을 참조하여 본 발명에 대해 구체적으로 설명한다.
도 1은 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 구성을 나타내는 도면이다.
도 1에 따르면 소프트웨어 관리 시스템은 복수의 단말 장치(100-1, 100-2, ..., 100-n) 및 서버(200)를 포함한다. 복수의 단말 장치(100-1, 100-2, ..., 100-n) 및 서버(200)는 네트워크를 통해 서로 연결될 수 있다.
복수의 단말 장치(100-1, 100-2, ..., 100-n)는 각 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하여 제1 화이트리스트(Whitelist)를 생성하고 저장할 수 있다. 그리고, 복수의 단말 장치(100-1, 100-2, ..., 100-n)는 각각의 제1 화이트리스트를 이용하여 단말 장치에 설치 또는 실행되는 소프트웨어를 관리할 수 있다. 구체적으로, 복수의 단말 장치(100-1, 100-2, ..., 100-n)는 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 화이트리스트에 존재하지 않으면 소프트웨어의 설치 또는 실행을 차단할 수 있다.
한편, 복수의 단말 장치(100-1, 100-2, ..., 100-n)는 서버(200)로부터 제2 화이트리스트 및 제3 화이트리스트를 수신하여 저장할 수 있다. 그리고, 제1 내지 제3 화이트리스트를 이용하여 각각의 단말 장치에 설치 또는 실행되는 소프트웨어를 관리할 수 있다. 구체적으로, 복수의 단말 장치(100-1, 100-2, ..., 100-n)는 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 내지 제3 화이트리스트에 존재하지 않으면 소프트웨어의 설치 또는 실행을 차단하고, 제1 내지 제3 화이트리스트 중 적어도 하나에 존재하면 소프트웨어의 설치 또는 실행을 허용할 수 있다.
제1 화이트리스트는 각각의 단말 장치별로 생성되는 단말 장치 고유의 화이트리스트로서 각 단말 장치에 의해 자동적으로 생성될 수 있다. 제2 화이트리스트는 백신, 회사 전용 소프트웨어 등 누구나 사용 가능하며 신뢰성이 담보된 소프트웨어에 대한 화이트리스트이다. 제2 화이트리스트에 포함되는 소프트웨어는 관리자가 선택할 수 있다. 제3 화이트리스트는 윈도우(Windows) 등 각 단말 장치에 설치된 OS(Operating System)와 관련된 화이트리스트로서 OS의 설치, 실행 및 업데이트가 가능하도록 해준다.
도 2는 본 발명의 일 실시 예에 따른 소프트웨어 관리 시스템의 소프트웨어 관리 방법을 설명하기 위한 시퀀스도이다.
도 2를 참조하면 설명의 편의를 위해 도 1에 도시된 복수의 단말 장치(100-1, 100-2, ..., 100-n) 중 하나만을 도시하으나, 도 2에 도시된 단말 장치(100)에 대한 설명은 도 1에 도시된 복수의 단말 장치(100-1, 100-2, ..., 100-n)에 동일하게 적용될 수 있다.
도 2를 참조하면 단말 장치(100)가 소프트웨어 식별 정보를 수집한다(S201). 구체적으로, 단말 장치(100)는 단말 장치(100)에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집할 수 있다. 그리고, 수집된 소프트웨어 식별 정보를 이용하여 제1 화이트리스트를 생성한다(S202). 그리고, 생성된 제1 화이트 리스트를 저장한다(S203).
화이트리스트가 저장되면 단말 장치(100)를 락킹(Locking)한다(S204). 락킹이란 화이트리스트에 존재하지 않는 소프트웨어의 설치 또는 실행을 모두 차단하는 것을 의미한다. 단말 장치(100)가 락킹된 후 소프트웨어가 설치 또는 실행되면(S205), 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하는지 판단한다(S206). 소프트웨어 식별 정보가 일치하면(S206-Y), 소프트웨어의 설치 또는 실행을 허용한다(S207). 소프트웨어 식별 정보가 일치하지 않으면(S206-N), 소프트웨어의 설치 또는 실행을 차단한다(S208).
소프트웨어 관리 시스템은 단말 장치(100)에 기 설치된 소프트웨어를 제외한 나머지 소프트웨어의 설치 및 실행을 차단함으로써, 불법 소프트웨어, 악성 코드 등에 의한 보안 문제 및 저작권 문제를 원천적으로 차단할 수 있다.
또한, 단말 장치별로 고유의 화이트리스트를 생성함으로써 동일한 소프트웨어에 대해 특정 단말 장치에서 설치 또는 실행이 허용되더라도 다른 단말 장치에서는 설치 또는 실행이 차단될 수 있다. 이에 따라, 업무 특성에 따라 각 단말 장치를 효과적으로 관리할 수 있다.
한편, 소프트웨어의 설치 또는 실행이 차단되면 단말 장치(100)의 사용자는 관리자에게 차단된 소프트웨어의 설치 또는 실행을 요청할 수 있다. 즉, 사용자로부터 소프트웨어의 설치 또는 실행 요청 명령이 입력되면(S209), 단말 장치(100)는 서버(200)로 차단된 소프트웨어의 설치 또는 실행을 요청한다(S210).
관리자는 소프트웨어의 설치 또는 실행이 요청되면 소프트웨어의 설치 또는 실행을 허용 또는 금지하는 관리자 명령을 입력할 수 있다. 서버(200)는 관리자로부터 관리자 명령을 입력받으면(S211), 입력된 관리자 명령을 단말 장치(100)로 전송한다(S212).
단말 장치(100)는 서버(200)로부터 관리자 명령이 수신되면, 관리자 명령이 허용 명령인지 판단한다(S213). 서버(200)로부터 수신된 관리자 명령이 금지 명령이면(S213-N), 소프트웨어 설치 또는 실행을 차단한다(S208). 즉, 단계 S208에서 차단된 소프트웨어의 설치 또는 실행을 계속 차단할 수 있다. 서버(200)로부터 수신된 관리자 명령이 허용 명령이면(S213-Y), 단말 장치(100)의 락킹을 해제한다(S214). 락킹을 해제한다는 것은 화이트리스트와 관계없이 단말 장치에 소프트웨어의 설치 또는 실행을 허용하는 것을 의미한다. 락킹이 해제되면 차단된 소프트웨어를 설치 또는 실행한다(S215). 이후, 소프트웨어의 설치 또는 실행이 종료되면 단말 장치(100)를 다시 락킹한다(S216).
이에 따라, 소프트웨어 관리 시스템은 화이트리스트에 포함되지 않은 소프트웨어의 설치 또는 실행이 필요한 경우 관리자의 허가에 의해 소프트웨어의 설치 또는 실행을 허용함으로써 보안 위협을 최소화하며 효율적으로 소프트웨어를 관리할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 단말 장치의 구성을 나타내는 블럭도이다.
도 3에 따르면 단말 장치(100)는 정보 수집부(110), 리스트 생성부(120), 저장부(130), 통신부(140), 설치 제어부(150), 매체 제어부(160), CD 모듈(170) 및 USB 모듈(180)을 포함한다.
정보 수집부(110)는 단말 장치(100)에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집한다. 구체적으로, 정보 수집부(110)는 단말 장치(100)에 존재하는 소프트웨어의 실행 파일에 대해 소프트웨어 식별 정보를 수집할 수 있다. 소프트웨어 설치 파일도 일종의 실행 파일이므로 정보 수집부(110)는 단말 장치에 존재하는 소프트웨어의 설치 파일 및 실행 파일에 대해 소프트웨어 식별 정보를 수집할 수 있다.
소프트웨어 식별 정보는 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 포함할 수 있다. 소프트웨어의 게시자는 소프트웨어를 제작한 회사명, 회사의 위치 정보를 포함할 수 있다. 소프트웨어의 게시자, 제품명 및 버전은 소프트웨어에 포함된 디지털 인증서 또는 소프트웨어 실행 파일에 게시된 파일 버전 정보로부터 수집할 수 있다.
정보 수집부(110)는 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 뿐만 아니라 소프트웨어의 설치 경로 및 소프트웨어의 실행 파일의 해시값을 소프트웨어 식별 정보로 수집할 수도 있다.
그리고, 정보 수집부(110)는 단말 장치(100)를 식별하는 장치 식별 정보를 수집할 수 있다. 장치 식별 정보는 단말 장치의 메인 보드 시리얼 번호, 하드디스크 시리얼 번호 및 MAC(Media Access Control) 주소를 포함할 수 있다.
리스트 생성부(120)는 정보 수집부(110)에서 수집된 소프트웨어 식별 정보를 이용하여 제1 화이트리스트를 생성한다. 리스트 생성부(120)는 정보 수집부(110)에서 수집된 소프트웨어 식별 정보의 전부 또는 일부를 이용하여 제1 화이트리스트를 생성할 수 있다. 예를 들어, 소프트웨어 식별 정보로서 소프트웨어의 게시자, 제품명, 실행 파일명, 버전, 소프트웨어 설치 경로 및 해시값이 수집된 경우 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 이용하여 제1 화이트리스트를 생성할 수 있다. 다른 예로, 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 소프트웨어 설치 경로 또는 해시값을 이용하여 제1 화이트리스트를 생성할 수 있다.
리스트 생성부(120)는 소프트웨어 식별 정보 자체를 제1 화이트리스트로 생성할 수 있다. 또는, 리스트 생성부(120)는 소프트웨어 식별 정보를 이용하여 암호화한 식별키를 생성하고, 생성된 식별키를 이용하여 제1 화이트리스트를 생성할 수 있다. 도 1을 참조하여 설명한 바와 같이 제1 화이트리스트는 소프트웨어 관리 시스템에 포함된 각각의 단말 장치별로 생성되는 단말 장치 고유의 화이트리스트를 의미한다.
리스트 생성부(120)는 정보 수집부(110)가 장치 식별 정보를 수집한 경우 소프트웨어 식별 정보 및 장치 식별 정보를 조합하여 제1 화이트리스트를 생성할 수 있다. 리스트 생성부(120)는 소프트웨어 식별 정보 및 장치 식별 정보 자체를 제1 화이트리스트로 생성할 수 있다. 또는, 리스트 생성부(120)는 소프트웨어 식별 정보 및 장치 식별 정보를 조합하여 암호화한 식별키를 생성하고, 생성된 식별키를 이용하여 제1 화이트리스트를 생성할 수 있다.
저장부(130)는 리스트 생성부(120)에서 생성된 제1 화이트리스트를 저장한다. 그리고, 저장부(130)는 서버(200)로부터 통신부(140)를 통해 제2 화이트리스트가 수신되면 수신된 제2 화이트리스트를 저장할 수 있다. 또한, 저장부(130)는 서버(200)로부터 통신부(140)를 통해 제3 화이트리스트가 수신되면 수신된 제3 화이트리스트를 저장할 수 있다.
통신부(140)는 서버(200) 및 소프트웨어 관리 시스템 내의 타 단말 장치와 연결되어 통신을 수행한다. 통신부(140)는 서버(200) 및 소프트웨어 관리 시스템 내의 타 단말 장치와 유/무선 네트워크를 통해 연결될 수 있다.
통신부(140)는 서버(200)로부터 제2 화이트리스트 및 제3 화이트리스트를 수신할 수 있다. 도 1을 참조하여 설명한 바와 같이 제2 화이트리스트는 백신, 회사 전용 소프트웨어 등 누구나 사용 가능하며 신뢰성이 담보된 소프트웨어에 대한 화이트리스트이다. 제2 화이트리스트는 관리자가 선택한 소프트웨어가 존재하는 단말 장치에 의해 미리 생성되어 서버(200)에 저장될 수 있다. 제2 화이트리스트는 제1 화이트리스트와 동일한 종류의 소프트웨어 식별 정보를 포함할 수 있으나, 소프트웨어 관리 시스템 내의 복수의 단말 장치(도 1의 100-1, 100-2, ..., 100-n)에 공통적으로 적용되어야 하므로 장치 식별 정보를 포함하지 않는다. 그리고, 소프트웨어의 업데이트를 가능하게 하기 위해 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 제1 화이트리스트에 포함된 소프트웨어 식별 정보보다 넓은 범위의 버전 정보를 포함할 수 있다. 예를 들어, 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 기 설정된 범위 또는 모든 범위의 버전 정보를 포함할 수 있다.
그리고, 제3 화이트리스트는 윈도우(Windows) 등 각 단말 장치에 설치된 OS(Operating System)와 관련된 화이트리스트로서 OS의 설치, 실행 및 업데이트가 가능하도록 해준다. 제3 화이트리스트는 OS가 설치된 단말 장치에 의해 미리 생성되어 서버(200)에 저장될 수 있다. 제3 화이트리스트에 포함된 소프트웨어 식별 정보는 OS의 회사명, 제품명, 실행 파일명 및 소프트웨어 설치 경로를 포함할 수 있다. 제3 화이트리스트도 제1 화이트리스트와 같이 소프트웨어 식별 정보를 암호화한 식별키를 이용하여 생성될 수 있다.
한편, 제3 화이트리스트는 OS 뿐만 아니라 제2 화이트리스트에 포함된 소프트웨어의 소프트웨어 식별 정보를 포함할 수 있다. 제2 화이트리스트에 포함된 소프트웨어가 업데이트되면 소프트웨어의 게시자 정보가 변경될 수 있으며, 이에 따라 업데이트된 소프트웨어의 실행이 차단될 수 있다. 이 때, 소프트웨어의 게시자 정보가 일부 변경되더라도 회사명이 동일하면 제3 화이트리스트에 의해 업데이트된 소프트웨어의 실행이 가능하게 된다.
제1 내지 제3 화이트리스트를 별도로 관리함으로써 소프트웨어를 보다 효율적으로 관리할 수 있다.
설치 제어부(150)는 단말 장치(100)를 락킹(Locking)하여 설치 또는 실행되는 소프트웨어를 관리한다. 락킹이란 화이트리스트에 존재하지 않는 소프트웨어의 설치 또는 실행을 모두 차단하는 것을 의미한다.
단말 장치(100)에서 소프트웨어의 설치 또는 실행이 시도되면, 정보 수집부(110)는 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보를 수집할 수 있다. 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보는, 단말 장치(100)에 존재하는 소프트웨어의 소프트웨어 식별 정보와 동일한 방식으로 수집할 수 있다. 그리고, 정보 수집부(110)는 수집된 소프트웨어 식별 정보를 설치 제어부(150)로 제공할 수 있다.
설치 제어부(150)는 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 저장부(130)에 저장된 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하는지 판단할 수 있다. 그리고, 설치 제어부(150)는 소프트웨어 식별 정보가 일치하면 소프트웨어의 설치 또는 실행을 허용하며, 일치하지 않으면 소프트웨어의 설치 또는 실행을 차단할 수 있다.
설치 제어부(150)는 소프트웨어 식별 정보가 암호화된 식별키를 이용하여 화이트리스트가 생성된 경우 암호화된 식별키를 복호화하여 소프트웨어 식별 정보를 생성할 수 있다. 그리고, 복호화된 소프트웨어 식별 정보를 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보와 비교할 수 있다.
여기서, 설치 제어부(150)는 저장부(130)에 제1 내지 제3 화이트리스트가 저장된 경우 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 내지 제3 화이트리스트 중 어느 하나에 포함된 소프트웨어 식별 정보와 일치하면 소프트웨어의 설치 또는 실행을 허용할 수 있다.
그리고, 설치 제어부(150)는 소프트웨어 식별 정보를 비교할 때 화이트리스트에 포함된 소프트웨어 식별 정보 중 일부만을 비교할 수 있다. 예를 들어, 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보를 제3 화이트리스트에 포함된 소프트웨어 식별 정보와 비교할 때, 실행 파일명을 제외한 회사명, 제품명 및 소프트웨어 설치 경로만을 비교할 수 있다.
제1 화이트리스트는 단말 장치에 현재 존재하는 소프트웨어에 대한 소프트웨어 식별 정보만을 포함하므로, 단말 장치(100)가 락킹된 경우 제2 화이트리스트에 포함된 소프트웨어 및 제3 화이트리스트에 포함된 OS를 제외한 새로운 소프트웨어 의 설치는 차단될 수 있다. 또한, 소프트웨어 식별 정보에 버전이 포함된 경우에는 동일한 소프트웨어라도 상이한 버전의 소프트웨어의 설치는 차단될 수 있다.
이에 따라, 불법 소프트웨어, 악성 코드 등에 의한 문제를 원천적으로 차단할 수 있다.
한편, 단말 장치(100)의 사용자는 소프트웨어의 설치 또는 실행이 차단되거나 차단이 예상되는 소프트웨어를 설치 또는 실행하고자 하는 경우 관리자에게 소프트웨어의 설치 또는 실행을 요청할 수 있다. 소프트웨어의 설치 요청은 신청자 정보 및 소프트웨어 설치 정보를 포함할 수 있다. 신청자 정보는 신청자의 성명, 사번, 부서명 등을 포함할 수 있다. 그리고, 소프트웨어 설치 정보는 소프트웨어 명칭, 버전, 설치 시작 시각, 소요 시간, 설치 방법 및 신청 사유 등을 포함할 수 있다. 여기서, 설치 방법은 CD(Compact Disk), USB(Universal Serial Bus), 서버를 통한 설치 및 단말 장치에 저장된 설치 파일을 이용한 설치 중 하나가 될 수 있다.
입력부(미도시)를 통해 소프트웨어의 설치 또는 실행 요청 명령이 입력되면, 통신부(140)는 소프트웨어의 설치 또는 실행 요청 명령을 서버(200)로 전송할 수 있다. 그리고, 통신부(140)는 서버(200)로부터 관리자 명령이 수신되면 관리자 명령을 설치 제어부(150)로 전달할 수 있다.
설치 제어부(150)는 관리자 명령이 허용 명령이면 단말 장치(100)의 락킹을 해제할 수 있다. 그리고, 소프트웨어의 설치 또는 실행이 종료되면 단말 장치(100)를 다시 락킹할 수 있다.
매체 제어부(160)는 단말 장치(100)의 락킹이 해제되면 CD(Compact Disk), USB(Universal Serial Bus) 등의 매체를 제어한다. 구체적으로, 매체 제어부(160)는 소프트웨어의 설치 방법에 따라 단말 장치(100)의 CD 모듈 및 USB 모듈 중 적어도 하나를 통한 데이터 송수신을 차단하도록 제어할 수 있다.
그리고, 매체 제어부(160)는 단말 장치(100)의 락킹이 해제되면 서버(200)와의 통신을 제외한 네트워크 연결을 차단하도록 통신부(140)를 제어할 수 있다.
이에 따라, 단말 장치의 락킹이 해제된 경우에도 보안 위협을 최소화하며 효율적으로 소프트웨어를 관리할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 단말 장치의 소프트웨어 관리 방법을 설명하기 위한 도면이다.
도 4를 참조하면 단말 장치(100)는 먼저 소프트웨어 식별 정보를 수집한다(S401). 구체적으로, 단말 장치(100)에 존재하는 소프트웨어의 실행 파일에 대해 소프트웨어 식별 정보를 수집할 수 있다.
소프트웨어 식별 정보는 소프트웨어의 게시자, 제품명, 실행 파일명, 버전, 소프트웨어의 설치 경로 및 소프트웨어의 실행 파일의 해시값을 포함할 수 있다. 소프트웨어의 게시자, 제품명 및 버전은 소프트웨어에 포함된 디지털 인증서 또는 소프트웨어 실행 파일에 게시된 파일 버전 정보로부터 수집할 수 있다.
이후, 수집된 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성한다(S402). 생성된 제1 화이트리스트를 저장한다(S403). 단말 장치(100)는 수집된 소프트웨어 식별 정보의 전부 또는 일부를 이용하여 제1 화이트리스트를 생성할 수 있다. 예를 들어, 소프트웨어 식별 정보로서 소프트웨어의 게시자, 제품명, 실행 파일명, 버전, 소프트웨어 설치 경로 및 해시값이 수집된 경우 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 이용하여 제1 화이트리스트를 생성할 수 있다. 다른 예로, 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 소프트웨어 설치 경로 또는 해시값을 이용하여 제1 화이트리스트를 생성할 수 있다.
여기서, 단말 장치(100)는 소프트웨어 식별 정보 자체를 제1 화이트리스트로 생성하거나 소프트웨어 식별 정보를 이용하여 암호화한 식별키를 생성하고, 생성된 식별키를 이용하여 제1 화이트리스트를 생성할 수 있다.
그리고, 단말 장치(100)는 서버(200)로부터 제2 및 제3 화이트리스트를 수신하여(S404), 저장한다(S405). 제2 화이트리스트는 백신, 회사 전용 소프트웨어 등 누구나 사용 가능하며 신뢰성이 담보된 소프트웨어에 대한 화이트리스트이다. 제2 화이트리스트는 관리자가 선택한 소프트웨어가 존재하는 단말 장치에 의해 미리 생성되어 서버(200)에 저장될 수 있다. 제2 화이트리스트는 제1 화이트리스트와 동일한 종류의 소프트웨어 식별 정보를 포함할 수 있으나, 소프트웨어 관리 시스템 내의 복수의 단말 장치(도 1의 100-1, 100-2, ..., 100-n)에 공통적으로 적용되어야 하므로 장치 식별 정보를 포함하지 않는다. 그리고, 소프트웨어의 업데이트를 가능하게 하기 위해 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 제1 화이트리스트에 포함된 소프트웨어 식별 정보보다 넓은 범위의 버전 정보를 포함할 수 있다. 예를 들어, 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 기 설정된 범위 또는 모든 범위의 버전 정보를 포함할 수 있다.
그리고, 제3 화이트리스트는 윈도우(Windows) 등 각 단말 장치에 설치된 OS(Operating System)와 관련된 화이트리스트로서 OS의 설치, 실행 및 업데이트가 가능하도록 해준다. 제3 화이트리스트는 OS가 설치된 단말 장치에 의해 미리 생성되어 서버(200)에 저장될 수 있다. 제3 화이트리스트에 포함된 소프트웨어 식별 정보는 OS의 회사명, 제품명, 실행 파일명 및 소프트웨어 설치 경로를 포함할 수 있다. 제3 화이트리스트도 제1 화이트리스트와 같이 소프트웨어 식별 정보를 암호화한 식별키를 이용하여 생성될 수 있다.
한편, 제3 화이트리스트는 OS 뿐만 아니라 제2 화이트리스트에 포함된 소프트웨어의 소프트웨어 식별 정보를 포함할 수 있다. 제2 화이트리스트에 포함된 소프트웨어가 업데이트에 의해 게시자 정보가 일부 변경되더라도 회사명이 동일하면 제3 화이트리스트에 의해 업데이트된 소프트웨어의 실행이 가능하게 된다.
한편, 단계 S404 및 S405는 단계 S401 내지 S403 이후에 수행되는 것으로 설명하였으나 제2 화이트리스트 및 제3 화이트리스트를 전송하고 저장하는 과정은 제1 화이트리스트를 생성하고 저장하는 과정과 시간적으로 병렬적인 관계로서 선후에 관계없이 수행될 수 있다. 또한, 단계 S404 및 S405는 실시예에 따라 생략될 수도 있다.
이후, 단말 장치를 락킹(Locking)한다(S406). 락킹이란 화이트리스트에 존재하지 않는 소프트웨어의 설치 또는 실행을 모두 차단하는 것을 의미한다. 단말 장치(100)가 락킹된 이후 단말 장치에 소프트웨어가 설치 또는 실행되면(S407), 소프트웨어 식별 정보가 일치하는지 판단한다(S408). 구체적으로, 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보를 수집하여 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하는지 판단할 수 있다. 여기서, 암호화된 식별키를 이용하여 화이트리스트가 생성된 경우 암호화된 식별키를 복호화하여 소프트웨어 식별 정보를 생성할 수 있다. 그리고, 복호화된 소프트웨어 식별 정보를 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보와 비교할 수 있다.
그리고, 소프트웨어 식별 정보를 비교할 때 화이트리스트에 포함된 소프트웨어 식별 정보 중 일부만을 비교할 수 있다. 예를 들어, 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보를 제3 화이트리스트에 포함된 소프트웨어 식별 정보와 비교할 때, 실행 파일명을 제외한 회사명, 제품명 및 소프트웨어 설치 경로만을 비교할 수 있다.
판단 결과 소프트웨어 식별 정보가 일치하면(S408-Y), 소프트웨어의 설치 또는 실행을 허용한다(S409). 여기서, 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 제1 내지 제3 화이트리스트 중 어느 하나에 포함된 소프트웨어 식별 정보와 일치하면 소프트웨어의 설치 또는 실행을 허용할 수 있다. 소프트웨어 식별 정보가 일치하지 않으면(S408-N), 소프트웨어의 설치 또는 실행을 차단한다(S410).
이에 따라, 불법 소프트웨어, 악성 코드 등에 의한 보안 문제를 원천적으로 차단할 수 있다.
한편, 단말 장치(100)의 사용자는 소프트웨어의 설치 또는 실행이 차단되거나 차단이 예상되는 소프트웨어를 설치 또는 실행하고자 하는 경우 관리자에게 소프트웨어의 설치 또는 실행을 요청할 수 있다. 소프트웨어의 설치 또는 실행 요청 명령이 입력되면, 단말 장치(100)는 소프트웨어의 설치 또는 실행을 서버로 요청할 수 있다(S411).
소프트웨어의 설치 요청은 신청자 정보 및 소프트웨어 설치 정보를 포함할 수 있다. 신청자 정보는 신청자의 성명, 사번, 부서명 등을 포함할 수 있다. 그리고, 소프트웨어 설치 정보는 소프트웨어 명칭, 버전, 설치 시작 시각, 소요 시간, 설치 방법 및 신청 사유 등을 포함할 수 있다. 여기서, 설치 방법은 CD(Compact Disk), USB(Universal Serial Bus), 서버를 통한 설치 및 단말 장치에 저장된 설치 파일을 이용한 설치 중 하나가 될 수 있다.
서버(200)로부터 관리자 명령이 수신되면(S412), 관리자 명령이 허용 명령인지 판단한다(S413). 관리자 명령이 허용 명령이 아니면(S413-N), 종료한다. 즉, 단말 장치(100)의 락킹을 해제하지 않는다. 관리자 명령이 허용 명령이면(S413-Y), 단말 장치(100)의 락킹을 해제한다(S414).
단말 장치의 락킹이 해제되면 매체 및 네트워크를 차단한다(S415). 구체적으로, 소프트웨어의 설치 방법에 따라 단말 장치(100)의 CD(Compact Disk) 모듈 및 USB(Universal Serial Bus) 모듈 중 적어도 하나를 통한 데이터 송수신을 차단할 수 있다. 그리고, 서버(200)와의 통신을 제외한 네트워크 연결을 차단할 수 있다.
이후, 소프트웨어를 설치 또는 실행한다(S416). 그리고, 소프트웨어의 설치또는 실행이 종료되면 단말 장치(100)를 다시 락킹한다(S417). 그리고, 매체 및 네트워크 차단을 해제한다(S418).
한편, 소프트웨어 설치 요청시 소프트웨어 설치 시작 시각 및 소요 시간이 포함되는 경우, 단말 장치(100)는 정해진 시간 동안 락킹을 해제할 수 있다.
그리고, 단말 장치(100)에 새로운 소프트웨어가 설치되면 제1 화이트리스트를 업데이트할 수 있다(S419). 제1 화이트리스트의 업데이트는 단계 S401 내지 S403과 동일하게 수행될 수 있다.
한편, 단말 장치(100)의 소프트웨어 관리 방법은 제1 화이트리스트를 생성하기 전 단말 장치(100)를 식별하는 장치 식별 정보를 수집할 수 있다. 장치 식별 정보는 단말 장치의 메인 보드 시리얼 번호, 하드디스크 시리얼 번호 및 MAC(Media Access Control) 주소를 포함할 수 있다.
그리고, 제1 화이트리스트를 생성하는 단계 S402는 소프트웨어 식별 정보 및 장치 식별 정보를 조합하여 제1 화이트리스트를 생성할 수 있다.
한편, 상술한 본 발명의 다양한 실시 예들에 따른 단말 장치의 소프트웨어 관리 방법은 단말 장치에서 실행 가능한 프로그램으로 구현될 수 있다. 그리고, 이러한 프로그램은 다양한 유형의 기록 매체에 저장되어 사용될 수 있다.
구체적으로는, 상술한 방법들을 수행하기 위한 프로그램 코드는, 플레시메모리, ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electronically Erasable and Programmable ROM), 하드디스크, 리무버블 디스크, 메모리 카드, USB 메모리, CD-ROM 등과 같이, 다양한 유형의 비휘발성 기록 매체에 저장되어 있을 수 있다.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 이해되어져서는 안 될 것이다.
100 : 단말 장치 110 : 정보 수집부
120 : 리스트 생성부 130 : 저장부
140 : 통신부 150 : 설치 제어부
160 : 매체 제어부 200 : 서버

Claims (19)

  1. 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 단계;
    상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 단계;
    상기 제1 화이트 리스트를 상기 단말 장치에 저장하는 단계;
    상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하는 단계;
    소프트웨어의 설치 또는 실행을 서버로 요청하는 단계;
    상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 단계;
    상기 단말 장치의 락킹을 해제하는 단계; 및
    상기 단말 장치의 락킹이 해제되면 상기 단말 장치의 CD(Compact Disk) 및 USB(Universal Serial Bus) 모듈 중 적어도 하나를 통한 데이터 송수신을 차단하는 단계;를 포함하는 단말 장치의 소프트웨어 관리 방법.
  2. 제1항에 있어서,
    상기 소프트웨어 식별 정보는,
    상기 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  3. 제2항에 있어서,
    상기 소프트웨어 식별 정보는,
    상기 소프트웨어의 설치 경로 및 상기 소프트웨어의 실행 파일의 해시값 중 적어도 하나를 더 포함하며,
    상기 제1 화이트리스트(Whitelist)를 생성하는 단계는,
    상기 소프트웨어 식별 정보 중 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 상기 소프트웨어의 설치 경로 또는 상기 실행 파일의 해시값을 이용하여 상기 제1 화이트리스트를 생성하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  4. 제1항에 있어서,
    상기 단말 장치의 장치 식별 정보를 수집하는 단계;를 더 포함하며,
    상기 제1 화이트리스트를 생성하는 단계는,
    상기 장치 식별 정보 및 상기 소프트웨어 식별 정보를 조합하여 상기 제1 화이트리스트를 생성하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  5. 제1항에 있어서,
    서버로부터 제2 화이트리스트를 수신하여 저장하는 단계; 및
    상기 설치 또는 실행이 차단된 소프트웨어의 소프트웨어 식별 정보가 상기 제2 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하면 상기 소프트웨어의 설치 또는 실행을 허용하는 단계;를 더 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  6. 제5항에 있어서,
    상기 제2 화이트리스트에 포함된 소프트웨어 식별 정보는 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 비교하여 넓은 범위의 버전을 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  7. 제1항에 있어서,
    서버로부터 제3 화이트리스트를 수신하여 저장하는 단계; 및
    상기 설치 또는 실행이 차단된 소프트웨어의 소프트웨어 식별 정보가 상기 제3 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하면 상기 소프트웨어의 설치 또는 실행을 허용하는 단계;를 더 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  8. 제7항에 있어서,
    상기 제3 화이트리스트에 포함된 소프트웨어 식별 정보는 상기 단말 장치에 설치된 OS(Operating System)의 회사명, 제품명, 실행 파일명 및 설치 경로를 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  9. 제1항에 있어서,
    상기 단말 장치의 락킹이 해제되면 상기 소프트웨어를 설치 또는 실행하는 단계; 및
    상기 소프트웨어의 설치 또는 실행이 종료되면 상기 단말 장치를 락킹하는 단계;를 더 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  10. 삭제
  11. 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 단계;
    상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 단계;
    상기 제1 화이트 리스트를 상기 단말 장치에 저장하는 단계;
    상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하는 단계;
    소프트웨어의 설치 또는 실행을 서버로 요청하는 단계;
    상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 단계;
    상기 단말 장치의 락킹을 해제하는 단계; 및
    상기 단말 장치의 락킹이 해제되면 상기 서버와의 통신을 제외한 네트워크 연결을 차단하는 단계;를 포함하는 단말 장치의 소프트웨어 관리 방법.
  12. 제9항에 있어서,
    상기 단말 장치에 새로운 소프트웨어가 설치되면 상기 단말 장치의 제1 화이트리스트를 업데이트하는 단계;를 더 포함하는 것을 특징으로 하는 단말 장치의 소프트웨어 관리 방법.
  13. 제1항 내지 제9항 및 제11항 내지 제12항 중 어느 한 항에 따른 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  14. 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 정보 수집부;
    상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 리스트 생성부;
    상기 제1 화이트 리스트를 저장하는 저장부;
    소프트웨어의 설치 또는 실행 요청을 서버로 전송하고, 상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 통신부;
    상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하며, 상기 소프트웨어의 설치 또는 실행 허용 명령이 수신되면 상기 단말 장치의 락킹을 해제하는 설치 제어부; 및
    상기 단말 장치의 락킹이 해제되면 상기 단말 장치의 CD(Compact Disk) 및 USB(Universal Serial Bus) 모듈 중 적어도 하나를 통한 데이터 송수신을 차단하는 매체 제어부;를 포함하는 단말 장치.
  15. 제14항에 있어서,
    상기 소프트웨어 식별 정보는,
    상기 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전을 포함하는 것을 특징으로 하는 단말 장치.
  16. 제14항에 있어서,
    상기 소프트웨어 식별 정보는,
    상기 소프트웨어의 설치 경로 및 상기 소프트웨어의 실행 파일의 해시값 중 적어도 하나를 더 포함하며,
    상기 리스트 생성부는,
    상기 소프트웨어 식별 정보 중 소프트웨어의 게시자, 제품명, 실행 파일명 및 버전 중 적어도 하나를 알 수 없는 경우 상기 소프트웨어의 설치 경로 또는 상기 실행 파일의 해시값을 이용하여 상기 제1 화이트리스트를 생성하는 것을 특징으로 하는 단말 장치.
  17. 제14항에 있어서,
    상기 설치 제어부는,
    상기 소프트웨어의 설치 또는 실행이 종료되면 상기 단말 장치를 다시 락킹하는 것을 특징으로 하는 단말 장치.
  18. 삭제
  19. 단말 장치에 존재하는 소프트웨어의 소프트웨어 식별 정보를 수집하는 정보 수집부;
    상기 소프트웨어 식별 정보를 이용하여 제1 화이트리스트(Whitelist)를 생성하는 리스트 생성부;
    상기 제1 화이트 리스트를 저장하는 저장부;
    소프트웨어의 설치 또는 실행 요청을 서버로 전송하고, 상기 서버로부터 상기 소프트웨어의 설치 또는 실행 허용 명령을 수신하는 통신부;
    상기 단말 장치를 락킹(Locking)하여 상기 단말 장치에 설치 또는 실행되는 소프트웨어의 소프트웨어 식별 정보가 상기 제1 화이트리스트에 포함된 소프트웨어 식별 정보와 일치하지 않으면 상기 설치 또는 실행되는 소프트웨어를 차단하며, 상기 소프트웨어의 설치 또는 실행 허용 명령이 수신되면 상기 단말 장치의 락킹을 해제하는 설치 제어부; 및
    상기 단말 장치의 락킹이 해제되면 상기 서버와의 통신을 제외한 네트워크 연결을 차단하도록 상기 통신부를 제어하는 매체 제어부;를 포함하는 단말 장치.
KR1020130138991A 2013-11-15 2013-11-15 단말 장치 및 단말 장치의 소프트웨어 관리 방법 KR101549896B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130138991A KR101549896B1 (ko) 2013-11-15 2013-11-15 단말 장치 및 단말 장치의 소프트웨어 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130138991A KR101549896B1 (ko) 2013-11-15 2013-11-15 단말 장치 및 단말 장치의 소프트웨어 관리 방법

Publications (2)

Publication Number Publication Date
KR20150056244A KR20150056244A (ko) 2015-05-26
KR101549896B1 true KR101549896B1 (ko) 2015-09-03

Family

ID=53391598

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130138991A KR101549896B1 (ko) 2013-11-15 2013-11-15 단말 장치 및 단말 장치의 소프트웨어 관리 방법

Country Status (1)

Country Link
KR (1) KR101549896B1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101616702B1 (ko) * 2014-09-16 2016-04-29 주식회사 엠엘소프트 코드사인을 이용한 소프트웨어 관리방법
KR101680608B1 (ko) * 2015-08-31 2016-12-12 주식회사 에이엠아이티랩 네트워크형 라이선스 유통구조를 기반으로 하는 불법 소프트웨어 감지시스템
KR101680605B1 (ko) * 2015-08-31 2016-12-12 주식회사 에이엠아이티랩 네트워크형 라이선스 유통구조를 기반으로 하는 불법 소프트웨어 감지시스템
CN105634745A (zh) * 2016-02-26 2016-06-01 深圳市金百锐通信科技有限公司 一种应用安装的安全认证方法及装置
KR101865351B1 (ko) * 2016-07-08 2018-07-09 (주)아이젝스 설치파일의 소프트웨어 정보 수집 시스템
KR101893518B1 (ko) * 2016-10-28 2018-10-04 한국전자통신연구원 제어 시스템의 업데이트 관리 장치, 업데이트 검증 장치 및 그 방법
KR101899589B1 (ko) * 2017-03-29 2018-09-17 최승환 안전 소프트웨어 인증 시스템 및 방법
KR102011725B1 (ko) * 2017-12-28 2019-08-19 숭실대학교산학협력단 악성코드 검출을 위한 화이트리스트 구축 방법 및 이를 수행하기 위한 기록매체 및 장치
KR102011363B1 (ko) * 2018-03-08 2019-08-16 최승환 블록체인 인증을 이용한 소프트웨어 인증 방법
KR102114542B1 (ko) * 2018-03-14 2020-05-25 (주)나무소프트 프로그램 구동 제어 방법
KR101899149B1 (ko) 2018-04-30 2018-09-14 에스엠테크놀러지(주) 비정상 프로세스 감시 및 통제 시스템 및 방법, 상기 방법을 수행하기 위한 기록 매체
KR102192909B1 (ko) * 2020-04-22 2020-12-18 홍윤환 화이트리스트 기반의 단말기 보안 방법 및 시스템
CN112099757A (zh) * 2020-09-21 2020-12-18 珠海格力电器股份有限公司 一种应用保活的方法以及装置
CN113553588A (zh) * 2021-07-28 2021-10-26 中国南方电网有限责任公司 终端软件管理方法
WO2023085599A1 (ko) * 2021-11-15 2023-05-19 삼성전자 주식회사 전자 장치 및 어플리케이션 패키지 관리 방법
CN116010905B (zh) * 2022-12-29 2023-11-03 昆仑数智科技有限责任公司 软件管理方法、系统和管理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100641884B1 (ko) 2005-07-14 2006-11-02 이재준 휴대용 저장장치의 고유번호를 이용한 사용자 구분 및어플리케이션 구동시스템 및 그 방법.

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100641884B1 (ko) 2005-07-14 2006-11-02 이재준 휴대용 저장장치의 고유번호를 이용한 사용자 구분 및어플리케이션 구동시스템 및 그 방법.

Also Published As

Publication number Publication date
KR20150056244A (ko) 2015-05-26

Similar Documents

Publication Publication Date Title
KR101549896B1 (ko) 단말 장치 및 단말 장치의 소프트웨어 관리 방법
US11093625B2 (en) Adaptive file access authorization using process access patterns
CN108628658B (zh) 一种容器的许可证管理方法及装置
US11126754B2 (en) Personalized and cryptographically secure access control in operating systems
CN103460195B (zh) 用于安全软件更新的系统和方法
CN110352413B (zh) 一种基于策略的实时数据文件访问控制方法与系统
US8196208B2 (en) Method and apparatus for creating and applying secure file identifier of rights object by using random numbers
KR101000191B1 (ko) 보안 소프트웨어 갱신
US9990511B1 (en) Using encrypted backup to protect files from encryption attacks
US20150121478A1 (en) Permission Management Method, Apparatus, and Terminal
US11368299B2 (en) Self-encryption drive (SED)
US20110099362A1 (en) Information processing device, encryption key management method, computer program and integrated circuit
US20130268753A1 (en) Anti-tamper device, system, method, and computer-readable medium
US9305146B2 (en) License management device, license management system, license management method, and program
US10013558B1 (en) Method and computer readable medium for secure software installation mechanism
US10158623B2 (en) Data theft deterrence
KR101761799B1 (ko) 단말의 보안 데이터 관리 장치 및 그 방법
CN107332840B (zh) 权限智能管理系统及其方法
US10505730B2 (en) Secure data management
KR20110080121A (ko) 컴퓨터 파일이 복사되었는지를 검출하는 방법 및 디바이스와, 이러한 검출을 가능하게 하는 방법 및 디바이스
Paul et al. Take control of your PC with UEFI secure boot
KR101672962B1 (ko) 적응형 단말기 소프트웨어 관리 시스템 및 이에 의한 단말기 소프트웨어 관리 방법
EP3168768B1 (en) Software protection
US9792417B2 (en) Methods for controlling software usage
JP2014096143A (ja) 情報処理装置、情報処理システムおよび情報処理方法

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
FPAY Annual fee payment

Payment date: 20180820

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190809

Year of fee payment: 5