KR20200122014A - Data security method based on program protection - Google Patents

Data security method based on program protection Download PDF

Info

Publication number
KR20200122014A
KR20200122014A KR1020190044717A KR20190044717A KR20200122014A KR 20200122014 A KR20200122014 A KR 20200122014A KR 1020190044717 A KR1020190044717 A KR 1020190044717A KR 20190044717 A KR20190044717 A KR 20190044717A KR 20200122014 A KR20200122014 A KR 20200122014A
Authority
KR
South Korea
Prior art keywords
program
security
storage area
disk
access
Prior art date
Application number
KR1020190044717A
Other languages
Korean (ko)
Other versions
KR102227558B1 (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 KR1020190044717A priority Critical patent/KR102227558B1/en
Publication of KR20200122014A publication Critical patent/KR20200122014A/en
Application granted granted Critical
Publication of KR102227558B1 publication Critical patent/KR102227558B1/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/55Detecting local intrusion or implementing counter-measures
    • 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
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

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

Abstract

According to an embodiment of the present invention, provided is a computer implemented method for data security of a program executed by a security client installed on a computing device. A provided data security method of a program comprises the steps of: obtaining a list of security programs permitted to access a pre-designated security storage area in accordance with a program security policy; and blocking a disk event so that a file having the same file name as an executable file of the program designated as the security program is not generated on a local disk by the computing device.

Description

프로그램 보호를 기반으로 한 데이터 보안 방법{DATA SECURITY METHOD BASED ON PROGRAM PROTECTION}Data security method based on program protection {DATA SECURITY METHOD BASED ON PROGRAM PROTECTION}

본 발명은 사용자 PC(personal computer), 서버(server) 등 각종 컴퓨팅 디바이스(computing device)에서 사전에 지정된 프로그램의 데이터를 보호하는데 있어서 해당 프로그램을 변경하지 못하게 보호하는 방법에 관한 것이다.
The present invention relates to a method of protecting data of a program designated in advance in various computing devices, such as a user PC (personal computer) and a server, from being changed.

바이러스, 악성코드, 랜섬웨어와 같이 정보 보안에 위협이 되는 다양한 소프트웨어가 신뢰할 수 있는 프로그램처럼 위장하거나 사용자 PC에서 사용자가 인지하지 못하게 교묘하게 구동되면서 많은 피해가 발생하고 있다. 보안이 중요한 컴퓨팅 장치의 관리를 위해 신뢰할 수 없는 프로그램은 차단하고 신뢰할 수 있는 프로그램은 보호하는 것이 필요하다.Various software threats to information security, such as viruses, malware, and ransomware, are disguised as trusted programs or are being operated in a way that prevents the user from recognizing them, causing a lot of damage. In order to manage security-critical computing devices, it is necessary to block untrusted programs and protect trusted programs.

이에 따라 프로그램 보안을 위한 종래 기술에는 다음과 같은 방법들이 존재하였다.Accordingly, the following methods exist in the prior art for program security.

첫째, 접근하는 프로그램의 해시값을 비교하는 방식이 있다. 이에 의할 때, 사전에 보안 프로그램을 지정할 때 프로그램의 바이너리 해시값(hash value)을 추출하여 등록해두고, 그 등록된 프로그램 해시값을 기준으로 프로그램의 진위 여부를 구분하는 방법으로 프로그램을 보호하였다. 그러나 이러한 방식은 해당 프로그램이 수시로 업데이트되면서 그 해시값이 바뀌게 되므로 해당 프로그램이 변경될 때마다 관리자가 매번 프로그램의 해시값을 갱신해주어야 하는 관리 부담이 큰 문제점이 있었다.First, there is a method of comparing the hash value of the accessing program. According to this, when designating a security program in advance, the program's binary hash value is extracted and registered, and the program is protected by classifying the authenticity of the program based on the registered program hash value. However, this method has a problem in that the hash value of the program is updated as the corresponding program is frequently updated, so that the administrator has to update the hash value of the program each time the program is changed.

둘째, 접근하는 프로그램의 PKI 사인값을 비교하는 방식이 있다. 그러나 이에 의할 때에도 해커가 해당 프로그램의 개발사의 프로그램 인증서(PKI 사인값)을 탈취하여 위장 프로그램을 배포시킨 후 구동시키는 경우까지를 막을 수는 없었다.Second, there is a method of comparing the PKI signature value of the accessing program. However, even according to this, it was not possible to prevent the hacker from stealing the program's program developer's program certificate (PKI signature value) and distributing the disguised program and then running it.

셋째, 접근하는 프로그램의 파일명을 비교하는 방식이 있다. 그러나 이와 같이 파일명을 비교하는 방법에 의하더라도, 종래 기술에 의하는 경우, 악성 프로그램이 동일한 파일명(즉, 이름과 확장자)로 변경하여 정상적인 프로그램인 것과 같이 위장하거나 정상 파일인척 파일을 덮여쓰는 경우까지를 막을 수는 없었다.
Third, there is a method of comparing the file name of the accessing program. However, even with the method of comparing file names in this way, in the case of conventional technology, until the malicious program changes to the same file name (i.e., name and extension) and disguises as a normal program or overwrites the file pretending to be a normal file. Couldn't be stopped.

본 발명은 상술한 바와 같은 문제점을 해결하기 위해 안출된 것으로서, 해시값 재설정과 같이 번잡한 프로그램 지정 및 등록 관리 절차가 필요하지 않으면서도, 악성 프로그램을 구동이 보호된 프로그램과 동일한 파일 이름과 확장자로 변경하거나 정상적인 프로그램을 변경하려는 시도를 차단할 수 있는 개선된 프로그램의 데이터 보안 방법을 제공하기 위한 것이다.
The present invention has been devised to solve the above-described problems, and does not require cumbersome program designation and registration management procedures such as resetting the hash value, and the malicious program is run with the same file name and extension as the protected program. It is intended to provide an improved program data security method capable of blocking attempts to change or alter normal programs.

본 발명의 일 측면에 따르면, 컴퓨팅 디바이스에 설치되는 보안 클라이언트에 의해 실행되는 프로그램의 데이터 보안에 관한 컴퓨터 구현 방법(computer implemented method)으로서, 프로그램 보안 정책에 따라 사전 지정된 보안 저장 영역으로의 접근이 허용된 보안 프로그램에 관한 목록을 획득하는 단계; 및 상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일이 상기 컴퓨팅 디바이스에 의한 로컬 디스크에 생성되지 않도록 디스크 이벤트를 차단하는 단계를 포함하는 프로그램의 데이터 보안 방법이 제공된다.
According to an aspect of the present invention, as a computer implemented method for data security of a program executed by a security client installed in a computing device, access to a predetermined security storage area is allowed according to a program security policy. Obtaining a list of the security programs that have been created; And blocking a disk event so that a file having the same file name as an executable file of a program designated as the security program is not generated on a local disk by the computing device.

일 실시예에 의할 때, 상기 보안 프로그램으로 지정된 프로그램의 변경에 관한 디스크 이벤트를 차단하는 단계를 포함하되,According to an embodiment, comprising the step of blocking a disk event related to a change of a program designated as the security program,

상기 프로그램의 변경에 관한 디스크 이벤트는, 해당 실행파일의 수정, 삭제, 덮어쓰기(overwrite), 해당 실행파일명으로의 파일명 변경(rename), 해당 프로그램의 프로그램 업데이트 중 적어도 하나에 관한 디스크 이벤트를 포함할 수 있다.
The disk event related to the change of the program may include a disk event related to at least one of modification, deletion, overwrite of the execution file, file name change to the execution file name, and program update of the corresponding program. I can.

일 실시예에 의할 때, 상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는지에 관한 판단은, 확장자를 포함한 파일명의 일치 여부에 따라 결정될 수 있다.
According to an embodiment, the determination as to whether or not the executable file of the program designated as the security program has the same file name may be determined according to whether the file name including the extension matches.

일 실시예에 의할 때, 디스크 이벤트를 모니터링하는 과정에서 상기 보안 저장 영역으로의 접근을 필요로 하는 디스크 이벤트가 발생한 경우, 해당 디스크 이벤트를 개시한 프로그램이 사전에 지정된 보안 프로그램에 의한 것이라면 상기 보안 저장 영역으로의 접근을 허용하고, 이외의 다른 프로그램에 의한 디스크 이벤트인 경우 상기 보안 저장 영역으로의 접근을 차단하는 단계를 포함할 수 있다.
According to an embodiment, in the case of a disk event requiring access to the secure storage area in the process of monitoring a disk event, if the program that initiated the disk event is by a pre-designated security program, the security It may include allowing access to the storage area and blocking access to the secure storage area in case of a disk event caused by another program.

일 실시예에 의할 때, 상기 보안 프로세스로 등록된 프로세스에 의해 발생된 디스크 이벤트인 경우, 상기 보안 저장 영역에만 자료가 생성되도록 하고, 상기 보안 저장 영역 이외의 저장 영역으로의 저장 시도는 차단할 수 있다.
According to an embodiment, in the case of a disk event generated by a process registered as the security process, data is generated only in the secure storage area, and attempts to save to a storage area other than the security storage area can be blocked. have.

일 실시예에 의할 때, 상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일이 이동식 디스크 또는 네트워크 드라이브 디스크에서 실행되어 상기 보안 저장 영역으로의 접근을 요청하는 디스크 이벤트를 발생시킨 경우, 상기 보안 저장 영역으로의 접근을 차단할 수 있다.
According to an embodiment, when a file having the same file name as the executable file of the program designated as the security program is executed on a removable disk or a network drive disk, a disk event requesting access to the secure storage area occurs, Access to the secure storage area may be blocked.

일 실시예에 의할 때, 상기 보안 프로그램에 관한 프로그램 업데이트가 요청됨에 따라, 프로그램 보안 모드의 전환에 관한 권한을 갖는 권한자에 의한 모드 전환 요청이 수신된 경우, 상기 보안 운영 모드를 프로그램 설치 모드로 전환하는 단계를 더 포함하되,According to an embodiment, when a program update request for the security program is requested and a mode change request is received by an authority having the authority to switch the program security mode, the security operation mode is changed to the program installation mode. Further comprising the step of switching to,

상기 프로그램 설치 모드에서, 상기 보안 프로그램의 파일에 대한 생성, 수정 및 삭제가 가능하며, 프로그램 업데이트 중인 보안 프로그램에 의한 상기 보안 저장 영역으로의 접근을 차단할 수 있다.
In the program installation mode, it is possible to create, modify, and delete files of the security program, and to block access to the security storage area by the security program being updated.

본 발명의 실시예에 따른 프로그램의 데이터 보안 방법에 의하면, 프로그램의 파일명(확장자 포함)만으로 사용자 PC 등의 컴퓨팅 디바이스에서 구동되는 사전 지정된 프로그램(예를 들어, 저작 소프트웨어 등)의 데이터를 보호할 수 있는 효과가 있다. 이를 통해 관리자는 현실적으로 관리가 어려운 프로그램 해시값 등이 아닌 관리가 용이한 프로그램의 파일 이름과 확장자만으로 프로그램 보안을 실행할 수 있다. 이에 따라 지정된 보안 프로그램과 동일한 파일명(이름과 확장자)를 가진 파일의 생성 및 변경을 차단할 수 있어, 보호가 필요한 보안 프로그램의 위변조를 차단할 수 있고, 해당 프로그램을 위장한 악성 프로그램의 실행도 차단할 수 있다.
According to the data security method of a program according to an embodiment of the present invention, data of a pre-designated program (eg, authoring software, etc.) running on a computing device such as a user PC can be protected only by the file name (including the extension) of the program. There is an effect. This allows the administrator to implement program security only with the file name and extension of a program that is easy to manage, rather than a hash value of a program that is difficult to manage in reality. Accordingly, it is possible to block the creation and modification of files with the same file name (name and extension) as the designated security program, thereby preventing forgery and alteration of the security program that needs to be protected, and the execution of malicious programs that disguise the program.

도 1은 컴퓨팅 장치에 설치되는 본 발명의 실시예에 따른 프로그램 보안을 수행하는 클라이언트 프로그램(즉, 보안 클라이언트)의 주요 구성부를 도식화한 도면.
도 2 및 도 3은 본 발명의 실시예에 따른 보안 클라이언트를 통한 프로그램의 데이터 보안 방법에 관한 일 실시예의 흐름도들.
도 4는 본 발명의 실시예에 따라 보안 프로그램의 실행파일과 동일한 파일명을 갖는 파일의 생성 및 변경을 시도하였을 때 해당 디스크 이벤트가 차단되는 화면 예시.
도 5는 보안 프로그램 목록을 파일 이름과 확장자로 관리하는 화면 예시.
1 is a diagram schematically illustrating main components of a client program (ie, a security client) that performs program security according to an embodiment of the present invention installed in a computing device.
2 and 3 are flowcharts of an embodiment of a data security method of a program through a secure client according to an embodiment of the present invention.
4 is an example of a screen in which a corresponding disk event is blocked when an attempt is made to create or change a file having the same file name as an executable file of a security program according to an embodiment of the present invention.
5 is a screen example of managing a list of security programs by file name and extension.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can apply various transformations and have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. However, this is not intended to limit the present invention to a specific embodiment, it is to be understood to include all conversions, equivalents, and substitutes included in the spirit and scope of the present invention.

본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the present invention, when it is determined that a detailed description of related known technologies may unnecessarily obscure the subject matter of the present invention, a detailed description thereof will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of the present specification are merely identification symbols for distinguishing one component from another component.

또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다. 또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하나 이상의 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있음을 의미한다.
In addition, throughout the specification, when one component is referred to as "connected" or "connected" to another component, the one component may be directly connected or directly connected to the other component, but specially It should be understood that as long as there is no opposing substrate, it may be connected or may be connected via another component in the middle. In addition, throughout the specification, when a certain part "includes" a certain component, it means that other components may be further included rather than excluding other components unless otherwise stated. In addition, terms such as "unit" and "module" described in the specification mean a unit that processes at least one function or operation, which means that it can be implemented as one or more hardware or software, or a combination of hardware and software. .

도 1은 컴퓨팅 장치에 설치되는 본 발명의 실시예에 따른 프로그램 보안을 수행하는 클라이언트 프로그램(즉, 보안 클라이언트)의 주요 구성부를 도식화한 도면이고, 도 2 및 도 3은 본 발명의 실시예에 따른 보안 클라이언트를 통한 프로그램의 데이터 보안 방법에 관한 일 실시예의 흐름도들이며, 도 4는 본 발명의 실시예에 따라 보안 프로그램의 실행파일과 동일한 파일명을 갖는 파일의 생성 및 변경을 시도하였을 때 해당 디스크 이벤트가 차단되는 화면 예시이고, 도 5는 보안 프로그램 목록을 파일 이름과 확장자로 관리하는 화면 예시이다. 이하, 도 1 ~ 도 3을 중심으로 도 4 및 도 5를 함께 참조하여 본 발명의 실시예를 설명하기로 한다. 여기서, 후술할 보안 클라이언트는 프로그램 보안이라는 특정 기능을 수행하기 위해 소정의 컴퓨팅 디바이스(본 예에서는 사용자의 업무용 PC를 가정함)에 설치되는 일종의 에이전트 프로그램을 의미한다.1 is a diagram showing the main components of a client program (ie, a security client) for performing program security according to an embodiment of the present invention installed in a computing device, and FIGS. 2 and 3 are Flow diagrams of an embodiment of a method for securing data of a program through a security client, and FIG. 4 is a corresponding disk event when an attempt is made to create or change a file having the same file name as an executable file of a security program according to an embodiment of the present invention An example of a screen to be blocked, and FIG. 5 is an example of a screen for managing a list of security programs by file name and extension. Hereinafter, an embodiment of the present invention will be described with reference to FIGS. 1 to 3 together with reference to FIGS. 4 and 5. Here, the security client, which will be described later, refers to a kind of agent program installed in a predetermined computing device (in this example, a user's work PC is assumed) to perform a specific function of program security.

도 1을 참조하면, 본 발명의 실시예에 따른 보안 클라이언트는, 보안 정책부, 디스크 보호부, 프로세스 접근 제어부, 프로세스 모니터 드라이버, 디스크 I/O 필터 드라이버를 포함하여 구현될 수 있다. 여기서, 보안 정책부, 디스크 보호부, 프로세스 접근 제어부는 User Mode로서 애플리케이션 계층(application layer)에, 프로세스 모니터 드라이버, 디스크 I/O 필터 드라이버는 Kernel Mode로서 커널 계층(Kernel layer)에 설치될 수 있다.Referring to FIG. 1, a security client according to an embodiment of the present invention may include a security policy unit, a disk protection unit, a process access control unit, a process monitor driver, and a disk I/O filter driver. Here, the security policy unit, the disk protection unit, and the process access control unit may be installed in the application layer as User Mode, and the process monitor driver and disk I/O filter driver may be installed in the kernel layer as Kernel Mode. .

본 발명의 각 실시예에 따른 보안 클라이언트에 의한 프로그램의 데이터 보안 방법의 전체적인 동작 흐름을 도 2 및 도 3을 참조하여 설명하면 다음과 같다.The overall operation flow of a data security method of a program by a security client according to each embodiment of the present invention will be described with reference to FIGS. 2 and 3 as follows.

먼저, 도 2를 참조하면, 보안 클라이언트가 사용자의 업무용 PC 등의 컴퓨팅 디바이스에 설치된 상태에서, 사용자 인증이 정상적으로 완료되면, 보안 클라이언트가 구동된다[S100 참조]. 이때, 보안 클라이언트에 의한 보안 모드는 보안 운영 모드와 프로그램 설치 모드로 구분될 수 있는데, 관리자 등의 사전 지정된 권한자에 의해 특별히 프로그램 설치 모드가 설정(선택)되는 경우를 제외하면 기본적으로 보안 운영 모드가 디폴트(default)로 실행되게 된다[S105 참조]. 보안 운영 모드가 구동중인 상황에서는 모든 파일 이벤트를 감지하는 과정에서 보안 프로그램으로 지정된 프로그램의 실행파일명으로 된 파일의 생성, 수정, 삭제 등이 불가능하다. First, referring to FIG. 2, when the security client is installed in a computing device such as a user's work PC, when user authentication is normally completed, the security client is driven [see S100]. At this time, the security mode by the security client can be divided into a security operation mode and a program installation mode. The security operation mode is basically a security operation mode unless the program installation mode is specifically set (selected) by a pre-designated authority such as an administrator. Is executed by default [see S105]. When the security operation mode is running, it is impossible to create, modify, or delete files with the executable file name of the program designated as the security program in the process of detecting all file events.

이러한 보안 운영 모드에서, 보안 클라이언트는 프로그램 보안 정책에 따라 사전 지정된 보안 저장 영역으로의 접근이 허용된 보안 프로그램에 관한 목록을 획득한다[S110 참조]. 이때, 프로그램 보안 정책 또는 해당 정책에 따른 보안 프로그램 목록은 네트워크 연결된 원격의 파일 관리 서버(예를 들어, 사내의 업무 파일의 관리를 위해 사전 지정된 별도의 중앙 서버)로부터 수신하거나 또는 해당 컴퓨팅 장치의 로컬에 존재하는 보안 정책부로부터 해당 정책 파일을 로딩하는 방식으로 획득할 수 있다. 파일 관리 서버에 의해 업무 파일들이 중앙 집중적으로 관리되는 경우, 상기 보안 저장 영역은 해당 파일 관리 서버 내의 소정의 저장 공간으로 설정될 수 있으며, 또한 암호화되어 관리될 수 있다.In this security operation mode, the security client acquires a list of security programs that are permitted to access a pre-designated security storage area according to the program security policy [see S110]. At this time, the program security policy or the list of security programs according to the policy is received from a network-connected remote file management server (for example, a separate central server pre-designated for management of internal business files) or local It can be obtained by loading the corresponding policy file from the security policy unit existing in the. When business files are centrally managed by the file management server, the secure storage area may be set as a predetermined storage space in the file management server, and may be encrypted and managed.

또한 여기서, 보안 프로그램 목록은 도 5에 도시된 바와 같이, 보안 프로그램으로 지정된 해당 프로그램의 실행파일의 파일명(즉, 이름 및 확장자를 포함함, 예를 들어, WORD.EXE 등)으로 관리될 수 있다. 이러한 보안 프로그램 목록은 데이터베이스에서 직접 관리될 수도 있고 일반적인 관리 웹사이트 등의 사용자 인터페이스를 통해서 관리자 등이 적접 프로그램의 파일명(즉, 이름 및 확장자), 설명 등을 등록하여 목록 및 이력 관리할 수도 있다.In addition, as shown in FIG. 5, the security program list may be managed by the file name (ie, including the name and extension, for example, WORD.EXE) of the execution file of the corresponding program designated as the security program. . Such a list of security programs may be managed directly from a database, or an administrator or the like may register the file name (ie, name and extension) and description of the appropriate program through a user interface such as a general management website to manage the list and history.

본 발명의 일 실시예에 의할 때, 보안 운영 모드에서, 보안 클라이언트는, 발생되는 모든 디스크 이벤트를 감시하고[S115 참조], 파일 생성 또는 변경에 관한 이벤트가 확인되는 경우[S120 참조], 도 2의 S125, S130, S135에 따른 보안 동작을 실행한다.According to an embodiment of the present invention, in the secure operation mode, the security client monitors all disk events that occur [see S115], and when an event related to file creation or change is confirmed [see S120], FIG. The security operation according to S125, S130, and S135 of 2 is executed.

실시예에 의할 때, 해당 디스크 이벤트가 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일의 생성을 요청하는 이벤트인 경우, 보안 클라이언트는 보안 프로그램과 동일한 실행파일명의 파일이 해당 컴퓨팅 디바이스에 의한 로컬 디스크에 생성되지 않도록 해당 디스크 이벤트를 차단한다.According to the embodiment, when the corresponding disk event is an event that requests the creation of a file with the same file name as the executable file of the program designated as the security program, the security client sends a file with the same executable file name as the security program to the computing device. The disk event is blocked so that it is not created on the local disk by the user.

또한, 해당 디스크 이벤트가 보안 프로그램으로 지정된 프로그램의 변경에 관한 디스크 이벤트인 경우에도, 보안 클라이언트는 해당 디스크 이벤트를 차단한다. 여기서, 상기 프로그램의 변경에 관한 디스크 이벤트는, 해당 실행파일의 수정(modify), 삭제(delete), 덮어쓰기(overwrite), 해당 실행파일명으로의 파일명 변경(rename), 해당 프로그램의 프로그램 업데이트(update) 중 적어도 하나에 관한 디스크 이벤트를 포함할 수 있다.Also, even if the corresponding disk event is a disk event related to a change of a program designated as a security program, the security client blocks the corresponding disk event. Here, the disk event related to the change of the program includes modifying, deleting, overwriting, renaming of the executable file, and updating the program of the corresponding program. ) May include a disk event for at least one of.

이때, 상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는지에 관한 판단은, 확장자를 포함한 파일명의 일치 여부에 따라 결정할 수 있다. 또한 상술한 바와 같은 디스크 이벤트의 차단은 운영체제(OS)에서 제공하는 일반적인 알림이나 콜백 파일 시스템(Call-Back File System) 등을 이용한 보안 클라이언트에서의 알림 등을 통해서 사용자에게 해당 이벤트가 차단됨을 즉시 인지시킬 수 있다(도 4 참조). 또한 상술한 바와 같은 디스크 이벤트의 차단은 보안 클라이언트의 디스크 보호부에 의해 수행될 수 있다.In this case, the determination as to whether or not the executable file of the program designated as the security program has the same file name may be determined according to whether the file name including the extension matches. In addition, the blocking of the disk event as described above immediately recognizes that the event is blocked to the user through a general notification provided by the operating system (OS) or a notification from a security client using a call-back file system. Can be made (see Fig. 4). In addition, the blocking of the disk event as described above may be performed by the disk protection unit of the security client.

또한 본 발명의 다른 실시예에 의할 때, 보안 프로그램으로 지정된 프로그램만이 보안 저장 영역에 접근할 수 있으며, 보안 프로그램의 실행에 따라 생성되는 자료들도 해당 보안 저장 영역에만 저장되도록 시스템 구현함으로써 프로그램 보안을 강화시킬 수 있다. 이하 이에 관하여 도 3을 참조하여 설명한다.In addition, according to another embodiment of the present invention, only the program designated as the security program can access the security storage area, and the data generated by the execution of the security program is also stored in the corresponding security storage area. Security can be enhanced. Hereinafter, this will be described with reference to FIG. 3.

도 3을 참조하면, 보안 운영 모드에서, 보안 클라이언트는, 발생되는 모든 디스크 이벤트를 감시하고[S115 참조], 발생된 디스크 이벤트가 사전 지정된 보안 저장 영역으로의 접근을 요청하는 이벤트인 것으로 확인되는 경우[S140 참조], 도 3의 S145, S150, S155, S160에 따른 보안 동작을 실행한다. 이때의 보안 동작이란 보안 저장 영역으로의 접근 또는/및 저장을 허용하거나 불허하는 제어 동작을 의미하며, 이는 보안 클라이언트의 프로세스 접근 제어부에 의해서 수행될 수 있다.Referring to FIG. 3, in the security operation mode, when it is determined that the security client monitors all disk events that occur [see S115], and that the generated disk event is an event requesting access to a predetermined security storage area [See S140], security operations according to S145, S150, S155, and S160 of FIG. 3 are executed. The security operation at this time means a control operation that allows or disallows access to or/and storage of the security storage area, which may be performed by the process access control unit of the security client.

즉, 보안 클라이언트는, 디스크 이벤트를 모니터링하는 과정에서 상기 보안 저장 영역으로의 접근을 필요로 하는 디스크 이벤트가 발생한 경우, 해당 디스크 이벤트를 개시한 프로그램이 사전에 지정된 보안 프로그램에 의한 것이라면 상기 보안 저장 영역으로의 접근(예를 들어, 생성, 읽기, 쓰기, 삭제 등)을 허용하고, 이외의 다른 프로그램에 의한 디스크 이벤트인 경우 상기 보안 저장 영역으로의 접근을 차단할 수 있다[S145 및 S160 참조].That is, when a disk event requiring access to the security storage area occurs during the process of monitoring a disk event, the security client is the security storage area if the program that initiated the disk event is a pre-designated security program. Access to (for example, creation, reading, writing, deletion, etc.) is allowed, and in case of a disk event caused by another program, access to the secure storage area may be blocked [see S145 and S160].

위와 달리, 보안 클라이언트는, 보안 운영 모드에서, 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일이 보안 저장 영역으로의 접근을 요청하는 디스크 이벤트를 발생시킨 경우라도, 해당 실행파일이 로컬이 아닌 이동식 디스크(ex. USB 등) 또는 네트워크 드라이브 디스크에서 실행됨에 따라 발생된 디스크 이벤트라면, 상기 보안 저장 영역으로의 접근을 차단할 수 있다[S150 및 S155 참조].Unlike the above, in the secure operation mode, even if a file with the same file name as the executable file of the program designated as the security program triggers a disk event requesting access to the secure storage area, the executable file is not local. If it is a disk event that is generated by execution from a removable disk (ex. USB, etc.) or a network drive disk, access to the secure storage area may be blocked [see S150 and S155].

이상에서는 보안 운영 모드를 중심으로 설명하였다. 이하 프로그램 설치 모드에서의 보안 클라이언트에 의한 보안 동작을 설명하면 다음과 같다. 상기 보안 프로그램에 관한 프로그램 업데이트가 요청됨에 따라, 프로그램 보안 모드의 전환에 관한 권한을 갖는 권한자에 의한 모드 전환 요청이 수신된 경우, 보안 클라이언트는 기존의 보안 운영 모드를 프로그램 설치 모드로 전환할 수 있다. 이러한 프로그램 설치 모드에 의할 때, 보안 클라이언트는, 보안 프로그램의 파일에 대한 생성, 수정, 삭제가 가능하도록 하되, 프로그램 업데이트 중인 보안 프로그램에 의한 상기 보안 저장 영역으로의 접근이 차단되도록 차단 제어를 할 수 있다. 이는 프로그램 업데이트 과정에서 악성 코드 등이 함께 설치되어 보안 저장 영역 내의 자료들을 위변조시킬 가능성을 차단하기 위함이다.
In the above, the security operation mode was mainly described. Hereinafter, the security operation by the security client in the program installation mode will be described. As a program update for the security program is requested, when a mode change request is received by an authority having authority to switch the program security mode, the security client may switch the existing security operation mode to the program installation mode. have. When using such a program installation mode, the security client enables the creation, modification, and deletion of files of the security program, but controls blocking so that access to the security storage area by the security program being updated is blocked. I can. This is to prevent the possibility of forgery and alteration of data in the secure storage area by installing malicious codes during the program update process.

상술한 본 발명의 실시예에 따른 프로그램의 데이터 보안 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다. The data security method of a program according to the embodiment of the present invention described above may be implemented as a computer-readable code in a computer-readable recording medium. Computer-readable recording media include all types of recording media in which data that can be decoded by a computer system are stored. For example, there may be read only memory (ROM), random access memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, and the like. In addition, the computer-readable recording medium can be distributed to a computer system connected through a computer communication network, and stored and executed as code that can be read in a distributed manner.

이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.The above has been described with reference to the embodiments of the present invention, but those of ordinary skill in the relevant technical field variously modify the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. And it will be easily understood that it can be changed.

Claims (7)

컴퓨팅 디바이스에 설치되는 보안 클라이언트에 의해 실행되는 프로그램의 데이터 보안에 관한 컴퓨터 구현 방법(computer implemented method)으로서,
프로그램 보안 정책에 따라 사전 지정된 보안 저장 영역으로의 접근이 허용된 보안 프로그램에 관한 목록을 획득하는 단계; 및
상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일이 상기 컴퓨팅 디바이스에 의한 로컬 디스크에 생성되지 않도록 디스크 이벤트를 차단하는 단계
를 포함하는 프로그램의 데이터 보안 방법.
As a computer implemented method for data security of a program executed by a security client installed on a computing device,
Obtaining a list of security programs permitted to access a pre-designated security storage area according to a program security policy; And
Blocking a disk event so that a file having the same file name as the executable file of the program designated as the security program is not created on the local disk by the computing device
Data security method of a program comprising a.
제1항에 있어서,
상기 보안 프로그램으로 지정된 프로그램의 변경에 관한 디스크 이벤트를 차단하는 단계를 포함하되,
상기 프로그램의 변경에 관한 디스크 이벤트는, 해당 실행파일의 수정, 삭제, 덮어쓰기(overwrite), 해당 실행파일명으로의 파일명 변경(rename), 해당 프로그램의 프로그램 업데이트 중 적어도 하나에 관한 디스크 이벤트를 포함하는, 프로그램의 데이터 보안 방법.
The method of claim 1,
Including the step of blocking a disk event related to the change of the program designated as the security program,
The disk event related to the change of the program includes a disk event related to at least one of a modification, deletion, overwrite of a corresponding executable file, a file name change to a corresponding executable file name, and a program update of the corresponding program. , The program's data security method.
제1항에 있어서,
상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는지에 관한 판단은, 확장자를 포함한 파일명의 일치 여부에 따라 결정되는 것을 특징으로 하는, 프로그램의 데이터 보안 방법.
The method of claim 1,
The determination as to whether or not the security program has the same file name as the executable file of the program designated as the security program is determined according to whether the file name including the extension matches.
제1항에 있어서,
디스크 이벤트를 모니터링하는 과정에서 상기 보안 저장 영역으로의 접근을 필요로 하는 디스크 이벤트가 발생한 경우, 해당 디스크 이벤트를 개시한 프로그램이 사전에 지정된 보안 프로그램에 의한 것이라면 상기 보안 저장 영역으로의 접근을 허용하고, 이외의 다른 프로그램에 의한 디스크 이벤트인 경우 상기 보안 저장 영역으로의 접근을 차단하는 단계를 포함하는, 프로그램의 데이터 보안 방법.
The method of claim 1,
In the process of monitoring a disk event, if a disk event requiring access to the secure storage area occurs, access to the secure storage area is allowed if the program that initiated the disk event is a pre-designated security program. , Blocking access to the secure storage area in case of a disk event caused by a program other than that of the program.
제4항에 있어서,
상기 보안 프로세스로 등록된 프로세스에 의해 발생된 디스크 이벤트인 경우, 상기 보안 저장 영역에만 자료가 생성되도록 하고, 상기 보안 저장 영역 이외의 저장 영역으로의 저장 시도는 차단하는 것을 특징으로 하는, 프로그램의 데이터 보안 방법.
The method of claim 4,
In the case of a disk event generated by a process registered as the security process, data is generated only in the secure storage area, and attempts to save to a storage area other than the security storage area are blocked. Security method.
제1항에 있어서,
상기 보안 프로그램으로 지정된 프로그램의 실행파일과 동일한 파일명을 갖는 파일이 이동식 디스크 또는 네트워크 드라이브 디스크에서 실행되어 상기 보안 저장 영역으로의 접근을 요청하는 디스크 이벤트를 발생시킨 경우, 상기 보안 저장 영역으로의 접근을 차단하는 것을 특징으로 하는, 프로그램의 데이터 보안 방법.
The method of claim 1,
When a file having the same file name as the executable file of the program designated as the security program is executed on a removable disk or a network drive disk and a disk event requesting access to the secure storage area occurs, access to the security storage area Blocking, the data security method of the program.
제1항에 있어서,
상기 보안 프로그램에 관한 프로그램 업데이트가 요청됨에 따라, 프로그램 보안 모드의 전환에 관한 권한을 갖는 권한자에 의한 모드 전환 요청이 수신된 경우, 상기 보안 운영 모드를 프로그램 설치 모드로 전환하는 단계를 더 포함하되,
상기 프로그램 설치 모드에서, 상기 보안 프로그램의 파일에 대한 생성, 수정 및 삭제가 가능하며, 프로그램 업데이트 중인 보안 프로그램에 의한 상기 보안 저장 영역으로의 접근을 차단하는 것을 특징으로 하는, 프로그램의 데이터 보안 방법.
The method of claim 1,
As a program update for the security program is requested, when a mode change request is received by an authority having authority for switching the program security mode, switching the security operation mode to a program installation mode, ,
In the program installation mode, it is possible to create, modify and delete files of the security program, and block access to the security storage area by a security program being updated.
KR1020190044717A 2019-04-17 2019-04-17 Data security method based on program protection KR102227558B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190044717A KR102227558B1 (en) 2019-04-17 2019-04-17 Data security method based on program protection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190044717A KR102227558B1 (en) 2019-04-17 2019-04-17 Data security method based on program protection

Publications (2)

Publication Number Publication Date
KR20200122014A true KR20200122014A (en) 2020-10-27
KR102227558B1 KR102227558B1 (en) 2021-03-12

Family

ID=73136276

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190044717A KR102227558B1 (en) 2019-04-17 2019-04-17 Data security method based on program protection

Country Status (1)

Country Link
KR (1) KR102227558B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220097109A (en) * 2020-12-31 2022-07-07 (주)나무소프트 Method for controlling storing a document file

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060005530A (en) * 2004-07-13 2006-01-18 엘지엔시스(주) Program executing contorol device and method for controlling program execution
KR20150144312A (en) * 2014-04-15 2015-12-24 (주)나무소프트 Method and software product for controlling application program which access secure saving area
KR101651392B1 (en) * 2016-03-08 2016-08-25 주식회사 시큐브 Additional authentication execution system through execution specialized module and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060005530A (en) * 2004-07-13 2006-01-18 엘지엔시스(주) Program executing contorol device and method for controlling program execution
KR20150144312A (en) * 2014-04-15 2015-12-24 (주)나무소프트 Method and software product for controlling application program which access secure saving area
KR101651392B1 (en) * 2016-03-08 2016-08-25 주식회사 시큐브 Additional authentication execution system through execution specialized module and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220097109A (en) * 2020-12-31 2022-07-07 (주)나무소프트 Method for controlling storing a document file
WO2022145580A1 (en) * 2020-12-31 2022-07-07 (주)나무소프트 Method for controlling saving of document

Also Published As

Publication number Publication date
KR102227558B1 (en) 2021-03-12

Similar Documents

Publication Publication Date Title
US9881013B2 (en) Method and system for providing restricted access to a storage medium
US9390262B2 (en) Method for protecting computer programs and data from hostile code
US8234477B2 (en) Method and system for providing restricted access to a storage medium
JP4854000B2 (en) Confidential file protection method
US20070180257A1 (en) Application-based access control system and method using virtual disk
US7533413B2 (en) Method and system for processing events
KR20010109271A (en) System And Method For Providing Data Security
US20030221115A1 (en) Data protection system
CN115329389B (en) File protection system and method based on data sandbox
KR20220085786A (en) Ransomware Protection
KR100704721B1 (en) method for computer protection with real-time monitoring and thereby computer and thereby system
KR102227558B1 (en) Data security method based on program protection
EP2341459A1 (en) Method and device for detecting if a computer file has been copied and method and device for enabling such detection
KR20080111888A (en) Method and apparatus for contents security
KR102623168B1 (en) Data protection system
US20220374534A1 (en) File system protection apparatus and method in auxiliary storage device
KR102114542B1 (en) Program execution control method
Davida et al. Hardening windows systems.
CA2446144A1 (en) System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages
CA2431681A1 (en) System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant