KR101153969B1 - Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor - Google Patents

Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor Download PDF

Info

Publication number
KR101153969B1
KR101153969B1 KR1020100068596A KR20100068596A KR101153969B1 KR 101153969 B1 KR101153969 B1 KR 101153969B1 KR 1020100068596 A KR1020100068596 A KR 1020100068596A KR 20100068596 A KR20100068596 A KR 20100068596A KR 101153969 B1 KR101153969 B1 KR 101153969B1
Authority
KR
South Korea
Prior art keywords
query
user
event
command
result
Prior art date
Application number
KR1020100068596A
Other languages
Korean (ko)
Other versions
KR20120007842A (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 KR1020100068596A priority Critical patent/KR101153969B1/en
Publication of KR20120007842A publication Critical patent/KR20120007842A/en
Application granted granted Critical
Publication of KR101153969B1 publication Critical patent/KR101153969B1/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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls

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 Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명의 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법은 데이터베이스(이하, DB) 방화벽 모듈로부터 배포된 에이전트가 사용자의 클라이언트 시스템에 설치되어, 상기 사용자에 의해 오직 쿼리 툴에서만 수행되는 특정 이벤트를 후킹하여 분석하는 단계와, 상기 필터링된 특정 이벤트가 쿼리의 결과값이 출력되는 결과창에서 발생하는지를 판단하는 단계 및 상기 판단 결과에 따라 상기 사용자가 시도하고 있는 상기 특정 이벤트에 대응하는 오퍼레이션을 통제하는 단계를 포함한다. Query tool control method for preventing the leakage of personal information of the present invention, the agent distributed from the database (hereinafter, DB) firewall module is installed on the client system of the user, by hooking a specific event performed only by the query tool by the user Determining whether the filtered specific event occurs in a result window in which a result value of a query is output, and controlling an operation corresponding to the specific event that the user attempts according to the determination result. Include.

Description

내부 사용자에 의해 개인 정보가 유출되는 것을 방지하기 위한 쿼리 툴 통제 방법 및 그 시스템{QUERY TOOL CONTROL METHOD FOR PREVENTING INNER USERS FROM LEAKING THE PERSONAL INFORMATION AND QUERY TOOL CONTROL SYSTEM THEREFOR}QUERY TOOL CONTROL METHOD FOR PREVENTING INNER USERS FROM LEAKING THE PERSONAL INFORMATION AND QUERY TOOL CONTROL SYSTEM THEREFOR}

본 발명은 내부 사용자에 의해 개인 정보 유출 방지가 유출되는 것을 방지하기 위한 쿼리 툴 통제 방법 및 그 시스템에 관한 것이다.
The present invention relates to a method and system for controlling a query tool for preventing leakage of personal information leakage by an internal user.

데이터베이스(Database: DB) 방화벽은 개인 정보를 보호하는 대표적인 DB 보안 솔루션으로서, 사용자 인증, 접근 통제, 모니터링 감사기능을 수행한다. Database (DB) Firewall is a representative DB security solution that protects personal information. It performs user authentication, access control, and monitoring auditing.

기존의 DB 보안 솔루션이 가진 기능을 활용하면 권한이 없는 사용자의 접근 통제는 가능하여, 권한이 없는 사용자에 의해 발생하는 보안 사고를 미연에 예방할 수 있다. 그런데, 70% 이상의 보안사고가 내부자에 의해 발생하고 있는 조사 결과가 보고된 바 있다. 따라서 실제로는 내부자에 의한 오용에 대해 더 집중적 관리가 필요하다. 실제로 GS칼텍스의 경우에도 내부의 권한을 가진 사람이 개인정보 조회의 결과값을 EXCEL로 COPY한 후에 유출한 것으로 나타나있다.By utilizing the functions of the existing DB security solution, it is possible to control the access of unauthorized users, thus preventing security incidents caused by unauthorized users. However, more than 70% of security incidents have been reported by insiders. In practice, therefore, more intensive management of misuse by insiders is required. In fact, GS Caltex also appears to have leaked after a person with internal authority copies the result value of personal information inquiry to EXCEL.

특히 개발단계에서 개인 정보가 유출되기가 쉽다. 그 이유는 데이터베이스에 저장되어 관리되고 있는 고객의 개인 정보에 대해 접근 권한을 가지고 있는 개발자 및 운영자는 어느 누구라도 개인정보에 대한 조회작업을 하루에도 수백 내지 수천 번씩 수행하기 때문이다.Especially during the development stage, personal information is easy to leak. The reason for this is that any developer and operator who has access to the personal information of a customer stored and managed in a database performs the inquiry on the personal information hundreds to thousands of times a day.

내부사용자인 개발자 또는 운영자가가 DB에 접속할 때는 일반적으로 query tool이라는 솔루션을 사용한다. TOAD, SQL PLUS, Golden등과 같은 것을 예로 들 수 있다.  When an internal user, a developer or operator accesses a DB, a solution called a query tool is generally used. For example, TOAD, SQL PLUS, Golden, etc.

DB와 관련된 어플리케이션 개발 또는 운영 시에, 개발자 또는 운영자인 엔지니어가 DB에 대해서 쿼리(query)를 사용하는 것은 막을 수는 없다. 왜냐하면, 업무 자체가 진행되지 않기 때문이다. When developing or operating an application related to a database, it is impossible to prevent an engineer, a developer or an operator, from using a query against the database. Because the work itself does not proceed.

그러나 DB와 관련된 어플리케이션 개발 또는 운영 시, 엔지니어가 DB에 대해서 쿼리를 사용하는 경우, 그 쿼리의 결과값을 오용하는 것은 통제의 대상이 된다. 개발 조직 또는 운영 조직 내에서는 쿼리의 결과값을 활용할 수 있는 권한을 가진 사람과 query 결과값에 대해서 활용권한이 없는 사람이 있다.However, if an engineer uses a query against a DB when developing or operating an application related to the DB, misuse of the result of the query is under control. Within a development or operating organization, there are people who have access to the results of a query and who do not have access to query results.

쿼리의 결과값을 활용한다는 것은 쿼리의 결과값을 출력하거나, 쿼리의 결과값을 파일(file)로 만든 후 재가공하거나, 쿼리의 결과값에 포함된 내용을 복사(COPY)하여 다른 어플리케이션(예를 들면 excel)예 붙이는 기능을 사용하는 것을 의미한다. Leveraging the results of a query means outputting the results of the query, reprocessing the results of the query into a file, reprocessing it, or copying the contents of the query to other applications (for example, For example, excel) means to use the paste function.

또한 화면 자체를 캡춰 하는 경우도 있다. 화면 자체를 캡춰(capture)하는 경우는 이미지이기 때문에 한번에 가져갈 수 있는 데이터의 양이 소량이므로, 위의 방식보다는 그 빈도 수가 적다. 즉, 화면 자체를 캡춰 하는 경우, 한 화면 내에 있는 정보만을 이미지화할 수 있고, 화면의 해상도와 기타 컴퓨팅 여건에 따라서 달라지겠지만, 대략 50-100여건 정도의 자료만이 하나의 화면에 표시되므로, 추후에 다시 내용을 재구성해야 하는 번거로움이 있을 수 있으므로, 위의 방식에 비해 그 사용 빈도가 적다. It may also capture the screen itself. When capturing the screen itself, since it is an image, the amount of data that can be taken at a time is small, so it is less frequent than the above method. In other words, when capturing the screen itself, only information within one screen can be imaged, and depending on the screen resolution and other computing conditions, only about 50-100 pieces of data are displayed on one screen. This can be a hassle to reconstruct, so it's less frequently used.

쿼리 결과값에 대해 활용권한이 없는 사람은, 예를 들면 외주 개발자, 단순한 DB엔지니어, 시스템 운영자 등을 들 수 있다. 업무 자체가 DB내의 내용을 활용해야할 경우가 아니면 쿼리 결과값의 활용권한이 없는 사람이 된다. Those who do not have access to query results include, for example, outsource developers, simple DB engineers, and system administrators. Unless the task itself requires the use of the contents of the DB, it becomes a person who does not have the authority to use the query results.

따라서, 쿼리 결과값에 대해서 활용권한이 없는 사람들에 대해서는 쿼리 툴(QUERY TOOL)에서 활용을 통제하는 기술적인 보호대책이 적용되고 있다. Therefore, technical protection measures are applied to those who do not have the right to use the query result value to control the use in the query tool.

기존 쿼리 툴에 대한 통제 기법 중에서, 특정 쿼리 툴을 사용하는 경우, 쿼리 결과값에 대해서 "COPY AND PAST" 하는 기능, 파일로 EXPORT 하는 기능, 출력 기능을 통제하도록 구현하는 것이 있다.Among the control mechanisms for the existing query tools, when using a specific query tool, one can implement a function to "COPY AND PAST" the query result value, to export to a file, and to control the output function.

그러나 회사 내에서 하나의 특정 쿼리 툴 만을 사용되는 경우에는 의미가 있으나, 복수 개의 다양한 쿼리 툴을 사용하는 경우에는 적용할 수 없는 한계점이 있다.
However, it is meaningful when only one specific query tool is used in a company, but there are limitations that cannot be applied when using a plurality of various query tools.

따라서, 본 발명의 목적은 개인 정보 유출 방지를 위하여 특정 쿼리 툴에 한정하지 않고, 범용적인 쿼리 툴에 적용할 수 있는 쿼리 툴 통제 방법을 제공하는 것이다.
Accordingly, an object of the present invention is to provide a query tool control method that can be applied to a general query tool, not limited to a specific query tool for preventing personal information leakage.

상기와 같은 목적을 달성하기 위한 본 발명의 일면에 따른 개인 정보가 유출되는 것을 방지하기 위한 쿼리 툴 통제 방법은, 데이터베이스(이하, DB) 방화벽 모듈로부터 배포된 에이전트가 사용자의 클라이언트 시스템에 설치되어, 상기 사용자에 의해 오직 쿼리 툴에서만 수행되는 특정 이벤트를 후킹하여 분석하는 단계와, 상기 필터링된 특정 이벤트가 쿼리의 결과값이 출력되는 결과창에서 발생하는지를 판단하는 단계 및 상기 판단 결과에 따라 상기 사용자가 시도하고 있는 상기 특정 이벤트에 대응하는 오퍼레이션을 통제하는 단계를 포함한다.Query tool control method for preventing the leakage of personal information according to an aspect of the present invention for achieving the above object, the agent distributed from the database (hereinafter, DB) firewall module is installed on the client system of the user, Hooking and analyzing a specific event performed only by a query tool by the user; determining whether the filtered specific event occurs in a result window in which a result value of a query is output; and according to the determination result, Controlling an operation corresponding to the particular event being attempted.

본 발명의 일면에 따른 쿼리 툴 통제 시스템은 고객의 개인정보가 저장된 데이터베이스와, 쿼리를 통해 권한 없는 사용자가 상기 데이터베이스에 접근하는 것을 차단하는 DB 방화벽 모듈 및 상기 DB 방화벽 모듈로부터 배포되고, 상기 사용자에 의해 쿼리 툴에서 수행되는 특정 이벤트만을 후킹하고, 후킹된 상기 특정 이벤트를 지시하는 상기 사용자가 상기 쿼리의 결과값에 대한 권한이 없는 경우, 상기 사용자에 의해 시도되는 상기 특정 이벤트에 대응하는 사용자 오퍼레이션을 통제하는 에이전트가 설치된 클라이언트 시스템을 포함한다.
According to an aspect of the present invention, a query tool control system is distributed from a database in which a customer's personal information is stored, and from a DB firewall module and the DB firewall module which block unauthorized users from accessing the database through a query. Hooking only a specific event performed in the query tool, and if the user indicating the hooked specific event is not authorized for the result value of the query, perform a user operation corresponding to the specific event attempted by the user. This includes the client system on which the controlling agent is installed.

본 발명에 의하면, 클라이언트 시스템에서 복사, 출력 파일로 export를 하는 모든 행위가 운영체제(예컨대, windows 시스템)의 커널에서 수행하기 때문에 이는 쿼리 툴의 종류와 상관없이 엔트 포인트 시큐리티(End Point Security)이 기능을 수행할 수 있다. 따라서, 특정 쿼리 툴에 한정하지 않고, 범용적인 쿼리 툴에 적용되어, 권한이 없는 사용자가 쿼리 툴을 이용하여 쿼리의 결과값을 오용하는 것을 방지할 수 있다.
According to the present invention, since all actions of copying and exporting to the output file from the client system are performed by the kernel of the operating system (for example, the windows system), this means that end point security functions regardless of the type of query tool. Can be performed. Therefore, the present invention is not limited to a specific query tool, but may be applied to a general query tool, thereby preventing unauthorized users from using a query tool to misuse a query result.

도 1은 본 발명의 일실시예에 따른 개인 정보 유출 방지를 위한 DB 보안 시스템의 전체 구성을 개략적으로 보여주는 블록도이다.
도 2는 본 발명의 일실시예에 따른 보안 정책에 따라 쿼리 툴에서 수행하는 이벤트가 발생한 경우, 상기 보안 정책에 의해 차단된 결과 화면을 보여주는 도면이다.
도 3은 본 발명의 일실시예에 따른 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법을 설명하기 위한 순서도이다.
1 is a block diagram schematically showing the overall configuration of a DB security system for preventing personal information leakage according to an embodiment of the present invention.
2 is a view showing a result screen blocked by the security policy when an event performed by the query tool according to the security policy according to an embodiment of the present invention.
3 is a flowchart illustrating a query tool control method for preventing personal information leakage according to an embodiment of the present invention.

본 발명에서 제안하는 기술은 특정 쿼리 툴(QUERY TOOL0에 종속적인 것이 아니라, 상용으로 널리 사용하고 있는 범용적인 쿼리 툴에 대해서 모두 적용할 수 있다. 이점이 본 발명에서 최초로 제시하는 기능이다. The technique proposed in the present invention is not dependent on a specific query tool (QUERY TOOL0, but can be applied to all general-purpose query tools that are widely used commercially. This is the first function of the present invention.

본 발명에서 제시하는 기능들은 하나의 패키지 형태인 독립적인 솔루션으로 제공될 수도 있으나, 바람직하게는 DB 방화벽이라고 불리는 소프트웨어 제품의 하나의 기능으로서 통합하는 것이 바람직하다. The functions suggested by the present invention may be provided as an independent solution in a package form, but are preferably integrated as a function of a software product called a DB firewall.

본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시 예에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 실시 예를 예시하는 첨부도면 및 첨부도면에 기재된 내용을 참조하여야만 한다.In order to fully understand the present invention, the operational advantages of the present invention, and the objects achieved by the embodiments of the present invention, reference should be made to the accompanying drawings that illustrate embodiments of the present invention.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 개인 정보 유출 방지를 위한 DB 보안 시스템의 전체 구성을 개략적으로 보여주는 블록도이다.1 is a block diagram schematically showing the overall configuration of a DB security system for preventing personal information leakage according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 개인 정보 유출 방지를 위한 DB 보안 시스템은 고객정보 데이터베이스(100), DB 방화벽(200) 및 클라이언트(300)를 포함한다. Referring to FIG. 1, a DB security system for preventing personal information leakage according to an embodiment of the present invention includes a customer information database 100, a DB firewall 200, and a client 300.

고객정보 데이터베이스(100)에는 고객들의 각종 개인정보가 데이터베이스 형태로 저장된다.The customer information database 100 stores various personal information of customers in the form of a database.

사용자의 클라이언트 시스템(300, 이하, '클라이언트'라 한다)은 DB 방화벽(200)을 거쳐 데이터베이스 형태로 저장된 고객들의 개인 정보(데이터)를 원하는 만큼 원하는 구조와 형식으로 불러올 수 있는 쿼리(일종의 명령어)를 작성한다. 이러한 쿼리는 클라이언트(300) 내부에 설치된 쿼리 툴(320), 예를 들면, 'toad', 'orange', 'sql plus' 등을 이용하여 작성되고 DB에 질의를 하게 된다. 고객정보 데이터베이스(100)는 상기 쿼리 툴(320)에 의해 작성된 쿼리에 따라 원하는 만큼 원하는 구조와 형식으로 이루어진 고객 정보를 쿼리의 결과값으로서 제공받는데, 이때, 클라이언트(300)에는 상기 쿼리 툴(310)과 연동되는 보안 에이전트 모듈(310, 이하, '에이전트'라 한다.)이 설치되어, 상기 쿼리 툴(310)에서 상기 쿼리의 결과값에 대해서 "COPY AND PAST" 기능, "파일 EXPORT" 기능, 출력 기능 등이 통제(제한)된다. 따라서, 상기 클라이언트(300)의 사용자가 외주 개발자, 단순한 DB 엔지니어, 시스템 운영자 등 쿼리의 결과값에 대해 활용권한이 없는 사용자인 경우, 이러한 사용자들에 대해서는 쿼리 툴(QUERY TOOL)에서 활용을 통제할 수 있다.The user's client system 300 (hereinafter referred to as a 'client') is a query (a kind of command) that can retrieve the personal information (data) of customers stored in a database form through the DB firewall 200 in a desired structure and format. Write. Such a query is made using a query tool 320 installed in the client 300, for example, 'toad', 'orange', 'sql plus', and the like, and queries the DB. The customer information database 100 is provided with the customer information having a desired structure and format as desired as a result of the query according to the query made by the query tool 320. At this time, the client 300 to the query tool 310 Security agent module 310, hereinafter referred to as "agent" is installed, the query tool 310 in the "COPY AND PAST" function, the "File EXPORT" function, Output functions, etc. are controlled. Therefore, when the user of the client 300 is a user who does not have a right to use the query result value, such as an outsourced developer, a simple DB engineer, or a system administrator, the use of a query tool may be controlled for these users. Can be.

DB 방화벽 모듈(200, DB 방화벽이라 한다)은 상기 클라이언트의 에이전트(310)와 연동하며, 에이전트(310)에게 보안 정책을 배포(또는 다운로딩)하며, 또한 클라이언트(300)로부터의 사용자 로그를 취합하여 관리하는 역할을 수행한다. 클라이언트(300)에는 DB 방화벽(200)으로부터 제공되는 에이전트(310)가 설치되며, 상기 에이전트(310)에서는 인증과 IP ROUTING 등이 수행된다. 특히, 상기 에이전트(310)에는 본 발명에서 제안하는 쿼리 툴 통제 기능이 추가된다. The DB firewall module 200 (referred to as DB firewall) interworks with the agent 310 of the client, distributes (or downloads) the security policy to the agent 310, and also collects user logs from the client 300. To manage. An agent 310 provided from the DB firewall 200 is installed in the client 300, and the agent 310 performs authentication and IP ROUTING. In particular, the agent 310 is added to the query tool control function proposed in the present invention.

이와 같이, DB방화벽(200)에서는 권한 없는 사람의 DB 접근을 차단하는 역할을 수행하고, 클라이언트(300)에서는 내부에 설치된 에이전트에 의해 쿼리 툴에서는 권한 있는 사용자가 쿼리의 결과값을 오용하는 것을 방지한다. 즉, 권한자 내에서도 등급이 존재할 수 있다. 이로 인해, 고객의 개인정보를 활용할 수 있는 사용자와 시스템 운영을 위해서 불가피하게 쿼리를 던질 수 있는(질의할 수 있는) 권한은 있으나, 자료 자체를 가공하거나 활용할 수 없는 사용자가 있게 된다.As such, the DB firewall 200 serves to block unauthorized persons from accessing the DB, and the client 300 prevents an authorized user from misusing a query result value in a query tool by an agent installed therein. do. That is, a rating may exist within the authority. As a result, there are users who can utilize the customer's personal information and users who can inevitably query (queries) for the operation of the system, but who can not process or utilize the data itself.

한편, 쿼리 툴(300)에서 "COPY AND PASTE", "파일 EXPORT", "화면 출력" 등과 같은 명령 수행이 발생한 경우, 본 발명에서는 에이전트(310)와 연동하는 DB 방화벽(200)을 통해 이를 통제하거나 모니터링 모드로 운영할 수 있다. 여기서, 모니터링 모드는 "COPY AND PASTE", "파일 EXPORT", "화면 출력" 등과 같은 보안 이벤트가 발생했을 때의 PC의 화면을 캡춰하고,캡춰된 화면을 에이전트(310)와 DB 방화벽(200)을 거쳐 DB 보안서버(도시되지 않음)로 전송하여 향후에 활용할 수 있도록 하게 된다.  On the other hand, when a command execution such as "COPY AND PASTE", "File EXPORT", "Screen Output", etc. occurs in the query tool 300, in the present invention, it is controlled through the DB firewall 200 in conjunction with the agent 310 Can be operated in monitoring mode. Here, the monitoring mode captures the screen of the PC when a security event such as "COPY AND PASTE", "File EXPORT", "Screen output" occurs, and captures the captured screen with the agent 310 and the DB firewall 200. It will be sent to the DB security server (not shown) to be used in the future.

도 2는 본 발명의 일실시예에 따른 보안 정책에 따라 쿼리 툴에서 수행하는 이벤트가 발생한 경우, 상기 보안 정책에 의해 차단된 결과 화면을 보여주는 도면이다. 설명의 이해를 돕기 위하여 도 1을 함께 참조한다.2 is a view showing a result screen blocked by the security policy when an event performed by the query tool according to the security policy according to an embodiment of the present invention. Reference is made together to FIG. 1 to help understand the description.

도 1 및 도 2를 참조하면, 에이전트(310)가 사용자의 PC(300)에서 발생한 이벤트(event) 중 쿼리 툴(query tool)에 해당하는(수행하는) 이벤트 등을 운영체제(예컨대, 마이크로소프트사의 윈도우 운영체제)의 커널부분에서 후킹하도록 한다. 1 and 2, an agent 310 may perform an event corresponding to a query tool (executed) among an event occurring at a user's PC 300, or the like. In the kernel section of the Windows operating system).

쿼리 툴(320)에서 발생한 이벤트 중에 쿼리의 결과값을 보여주는 결과 창에 대해서 COPY 시도가 발생한 경우, 해당 사용자가 쿼리의 결과값을 활용할 수 있는 권한을 가진지 DB 보안서버가 DB 방화벽을 통해 사용자 로그를 확인한 후, 해당 권한이 없으면 차단하며, 경보를 내리도록 한다.If a COPY attempt is made to the result pane showing the result of the query during the event generated by the query tool 320, the DB security server logs the user through the DB firewall whether the user has the authority to use the result of the query. After checking, block if there is no authority and give an alarm.

또한 DB 보안서버는 해당 내용을 DB 방화벽(200)에 전송하여 해당 사용자가 보안규정에 위반되는 시도를 했다는 것을 기록하게 한다. 마찬가지로 파일 EXPORT, 출력(예컨대, print)에 대해서도 통제와 경보, 로그관리를 진행하게 된다. In addition, the DB security server sends the contents to the DB firewall 200 to record that the user attempted to violate the security regulations. Likewise, control, alarm, and log management are performed for file export and output (eg print).

화면 캡춰 통제는 한번 캡춰에서 대용량의 고객데이터를 가져갈 수는 없으므로, 보안에 위협적이지는 않고, 사용자에게 거부감을 줄 수 있다. 즉, 개인 정보 보호와 관련이 없는 화면 캡춰도 차단되는 경우가 발생할 수 있다. 따라서, 보안 정책에 따라 융통성있게 적용할 수 있다. Screen capture control can't take large amounts of customer data from a single capture, so it's not a threat to security and can be a rejection to users. That is, screen capture that is not related to privacy may be blocked. Therefore, it can be flexibly applied according to the security policy.

도 3은 본 발명의 일실시예에 따른 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법을 설명하기 위한 순서도이다. 설명의 이해를 돕기 위하여, 도 1이 함께 참조된다.3 is a flowchart illustrating a query tool control method for preventing personal information leakage according to an embodiment of the present invention. For better understanding of the description, reference is made to FIG. 1 together.

도 1 및 도 3을 참조하면, 클라이언트(300)에 설치된 에이전트(310)가 쿼리 툴(320)에서 수행되는 이벤트를 분석 대상으로서 필터링 한다(S310). 1 and 3, the agent 310 installed in the client 300 filters an event performed by the query tool 320 as an analysis target (S310).

이어, 에이전트(310)가 필터링한 결과를 분석하여, 쿼리 툴(320)에서 사용자에 의한 쿼리 출력값에 대한 COPY 이벤트의 발생 여부를 판단한다(S320).Subsequently, the agent 310 analyzes the filtered result, and the query tool 320 determines whether a COPY event occurs for the query output value by the user (S320).

만일, COPY 이벤트가 발생한 것으로 판단된 경우, COPY 이벤트가 쿼리 창이 아니라 결과창에서 발생하는 것인지를 판단한다(S360). 여기서, 쿼리 창이란 SQL 문과 같은 쿼리 작성을 위한 쿼리 문을 적는 편집 창으로 정의한다. 그리고, 결과창은 상기 쿼리 문에 대한 결과 즉, 쿼리의 결과값이 출력되는(보여지는) 공간으로 정의된다. If it is determined that the COPY event has occurred, it is determined whether the COPY event occurs in the result window instead of the query window (S360). Here, the query window is defined as an edit window that writes query statements for creating a query such as an SQL statement. The result window is defined as a space in which the result of the query statement, that is, the result value of the query is displayed (shown).

COPY 이벤트가 쿼리 창에서 발생한 것으로 판단되면(S360), 이후 모든 과정은 종료된다.If it is determined that the COPY event has occurred in the query window (S360), then all processes are terminated.

COPY 이벤트가 결과 창에서 발생한 것으로 판단되면(S360), DB 보안 서버(도 1에서는 미도시)가 DB 방화벽 또는 직접 전달받은 사용자 로그를 분석하여 사용자가 쿼리의 결과값을 활용할 수 있는 권한 유무를 판단한다(S370). If it is determined that the COPY event has occurred in the result window (S360), the DB security server (not shown in FIG. 1) analyzes the DB firewall or the user log received directly to determine whether the user has permission to utilize the result of the query. (S370).

권한이 있는 것으로 확인되면, 이후 모든 과정은 종료된다.If the authority is confirmed, then all processes are terminated.

권한이 없는 것으로 확인되면, DB 보안 서버가 사용자가 시도하고 있는 오퍼레이션이 통제한다(S380). 이러한 통제가 수행되는 일례는 도 2에 도시된 바와 같다.If it is determined that there is no authority, the operation is attempted by the DB security server is controlled (S380). One example where such control is performed is as shown in FIG. 2.

이후, DB 보안 서버는 DB 방화벽(200)에게 해당 이벤트 발송을 보고하고 기록하게 한다. Then, the DB security server to report and record the event sent to the DB firewall 200.

한편, 상기 단계(S320)에서, COPY 이벤트가 발생하지 않은 것으로 판단된 경우(S320), 에이전트(310)가 클라이언트(300)에 의한 EXPORT 명령의 지시 여부를 판단한다. EXPORT 명령의 지시가 있는 경우, 이후, 단계들(S370, S380, S390)이 수행된다.On the other hand, if it is determined in step S320 that the COPY event has not occurred (S320), the agent 310 determines whether the command of the EXPORT command by the client 300. If there is an instruction of the EXPORT command, then steps S370, S380, and S390 are performed.

EXPORT 명령의 지시가 아닌 것으로 판단되면, 이후, 출력 명령의 지시 여부를 판단한다(S340). 출력 명령의 지시가 있는 경우, 이후, 단계들(S370, S380, S390)이 수행된다.If it is determined that the instruction does not indicate the EXPORT command, it is then determined whether the output command is indicated (S340). If there is an instruction of an output command, steps S370, S380, and S390 are then performed.

출력 명령의 지시가 아닌 것으로 판단되면, 이후, 화면 캡쳐 명령 지시 여부를 판단한다(S350). 화면 캡쳐 명령 지시가 있는 것으로 판단되면, 이후, 단계들(S370, S380, S390)이 수행된다.If it is determined that the output command is not instructed, it is then determined whether a screen capture command is instructed (S350). If it is determined that there is a screen capture command instruction, steps S370, S380, and S390 are then performed.

화면 캡쳐 명령 지시가 아닌 것으로 판단되면, 최종적으로 사용자가 상기 쿼리 툴에서 상기 쿼리의 결과값을 오용하는 것으로 판단하지 않고, 모든 과정을 종료한다.If it is determined that the screen capture command is not instructed, the process is finally terminated without determining that the user misuses the result value of the query in the query tool.

이상 설명한 바와 같이, 본 발명에서는 다양한 쿼리 툴에서 이루어지고 있는 공통적인 이벤트만을 후킹하여 이를 분석함으로써, 쿼리 툴의 종류와 관계없이 범용의 쿼리 툴에서
As described above, in the present invention, by hooking and analyzing only common events occurring in various query tools, the general-purpose query tool is used regardless of the type of query tool.

본 발명의 내용은 도면에 도시된 일 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the contents of the present invention have been described with reference to one embodiment shown in the drawings, this is merely exemplary, and it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible therefrom. will be. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

Claims (10)

데이터베이스(이하, DB) 방화벽 모듈로부터 배포된 에이전트가 사용자의 클라이언트 시스템에 설치되어, 운영 체제의 커널(kernel) 상에서 수행되는 "카피(COPY)" 명령을 지시하는 특정 이벤트를 후킹하여 분석하는 단계;
상기 필터링된 특정 이벤트가 쿼리의 결과값이 출력되는 결과창에서 발생하는지를 판단하는 단계; 및
상기 판단 결과에 따라 상기 사용자가 시도하고 있는 상기 특정 이벤트에 대응하는 오퍼레이션을 통제하는 단계
를 포함하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법.
An agent distributed from a database firewall module, installed on a user's client system, hooking and analyzing a specific event instructing a " COPY " command executed on a kernel of an operating system;
Determining whether the filtered specific event occurs in a result window in which a result value of a query is output; And
Controlling an operation corresponding to the specific event that the user is attempting according to the determination result
Query tool control method for preventing personal information leakage, comprising the.
삭제delete 제1항에 있어서, 상기 카피 이벤트가 상기 결과창에서 발생하는 경우,
데이터베이스(이하, DB) 보안 서버가 상기 사용자가 상기 쿼리의 결과값을 활용할 수 있는 권한이 있는지를 판단하는 단계를 더 포함하고,
상기 사용자가 권한이 없는 경우, 상기 카피 이벤트에 대응하는 상기 오퍼레이션을 통제하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법.
The method of claim 1, wherein when the copy event occurs in the result pane,
A database (hereinafter, referred to as DB) security server further comprising determining whether the user is authorized to utilize the result of the query;
If the user is not authorized, the query tool control method for preventing the leakage of personal information, characterized in that for controlling the operation corresponding to the copy event.
제1항에 있어서, 상기 특정 이벤트가 상기 결과창에서 발생하는 경우,
DB 보안 서버가 상기 특정 이벤트를 상기 DB 방화벽 모듈 발송하여, 상기 사용자가 보안 규정에 위반되는 시도를 상기 DB 방화벽 모듈에 기록하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법.
The method of claim 1, wherein when the specific event occurs in the result window,
And a DB security server sends the specific event to the DB firewall module to record an attempt by the user to violate a security rule in the DB firewall module.
데이터베이스(이하, DB) 방화벽 모듈로부터 배포된 에이전트가 사용자의 클라이언트 시스템에 설치되어, 운영 체제의 커널 상에서 수행되는 특정 이벤트를 후킹하여 분석하는 단계;
DB 보안 서버가 사용자 로그 정보를 이용하여 상기 분석된 특정 이벤트를 수행하는 상기 클라이언트 시스템의 사용자가 쿼리의 결과값을 활용할 수 있는 권한이 있는지를 판단하는 단계; 및
상기 판단 결과에 따라 상기 사용자가 시도하고 있는 상기 특정 이벤트에 대응하는 오퍼레이션을 통제하는 단계를 포함하되,
상기 특정 이벤트는
"파일 EXPORT" 명령을 지시하는 이벤트, 출력 명령을 지시하는 이벤트 및 화면 캡쳐 명령을 지시하는 이벤트를 포함하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법.
An agent distributed from a database (hereinafter, referred to as DB) firewall module is installed in a user's client system, and hooks and analyzes a specific event performed on a kernel of an operating system;
Determining, by the DB security server, whether a user of the client system performing the analyzed specific event is authorized to use the result of the query by using user log information; And
Controlling an operation corresponding to the specific event that the user is attempting according to the determination result,
The specific event
A method for controlling a query tool for preventing personal information leakage, comprising an event indicating an "file EXPORT" command, an event indicating an output command, and an event indicating a screen capture command.
삭제delete 제5항에 있어서, "파일 EXPORT" 명령을 지시하는 이벤트, 출력 명령을 지시하는 이벤트 및 화면 캡쳐 명령을 지시하는 이벤트를 수행하는 상기 클라이언트 시스템의 사용자가 상기 쿼리의 결과값을 활용할 수 있는 권한이 없는 경우,
DB 보안 서버가 상기 이벤트들을 상기 DB 방화벽 모듈에 전송하여 기록하는 단계를 더 포함하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 방법.
The method of claim 5, wherein a user of the client system that performs an event indicating a "file EXPORT" command, an event indicating an output command, and an event indicating a screen capture command is authorized to use the result value of the query. If not,
And transmitting, by the DB security server, the events to the DB firewall module to record the personal information.
고객의 개인정보가 저장된 데이터베이스;
쿼리를 통해 권한 없는 사용자가 상기 데이터베이스에 접근하는 것을 차단하는 DB 방화벽 모듈;
상기 DB 방화벽 모듈로부터 배포되고, 상기 사용자에 의해 쿼리 툴에서 수행되는 특정 이벤트만을 후킹하고, 후킹된 상기 특정 이벤트를 지시하는 상기 사용자가 상기 쿼리의 결과값에 대한 권한이 없는 경우, 상기 사용자에 의해 시도되는 상기 특정 이벤트에 대응하는 사용자 오퍼레이션을 통제하는 에이전트가 설치된 클라이언트 시스템를 포함하되,
상기 특정 이벤트는 "카피(COPY)" 명령을 지시하는 이벤트, "파일 EXPORT" 명령을 지시하는 이벤트, 출력 명령을 지시하는 이벤트 및 화면 캡쳐 명령을 지시하는 이벤트를 포함하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 시스템.
A database storing customer personal information;
A DB firewall module that blocks unauthorized users from accessing the database through a query;
If the user that is distributed from the DB firewall module and hooks only a specific event performed by the user in a query tool and indicates the hooked specific event does not have the right to the result value of the query, by the user A client system having an agent installed that controls user operations corresponding to the specific event attempted,
The specific event may include an event indicating a "COPY" command, an event indicating a "file EXPORT" command, an event indicating an output command, and an event indicating a screen capture command. Query tool control system for prevention.
삭제delete 제8항에 있어서, 상기 에이전트는,
상기 사용자에 의해 상기 쿼리 툴에서 "카피(COPY)" 명령을 지시하는 이벤트가 수행되는 경우, "카피(COPY)" 명령을 지시하는 이벤트가 쿼리문이 작성되는 쿼리 창에서 발생하는 것인지 상기 쿼리의 결과값을 보여주는 결과 창에서 발생하는 것인지를 판단하고,
판단 결과, 결과 창에서 발생하는 것으로 판단하는 경우, "카피(COPY)" 명령을 지시하는 상기 사용자가 상기 쿼리의 결과값을 활용할 수 있는 권한이 있는지를 판단하는 것을 특징으로 하는 개인 정보 유출 방지를 위한 쿼리 툴 통제 시스템.


The method of claim 8, wherein the agent,
When an event indicating a "COPY" command is performed in the query tool by the user, whether an event indicating a "COPY" command occurs in a query window in which a query statement is written. In the result window showing the result value,
As a result of the determination, if it is determined to occur in the result window, it is determined whether the user instructing the "copy" command is authorized to use the result value of the query. Query Tool Control System.


KR1020100068596A 2010-07-15 2010-07-15 Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor KR101153969B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100068596A KR101153969B1 (en) 2010-07-15 2010-07-15 Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100068596A KR101153969B1 (en) 2010-07-15 2010-07-15 Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor

Publications (2)

Publication Number Publication Date
KR20120007842A KR20120007842A (en) 2012-01-25
KR101153969B1 true KR101153969B1 (en) 2012-06-08

Family

ID=45613038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100068596A KR101153969B1 (en) 2010-07-15 2010-07-15 Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor

Country Status (1)

Country Link
KR (1) KR101153969B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101400403B1 (en) * 2012-12-28 2014-05-27 주식회사 웨어밸리 Database security apparatus
KR101942576B1 (en) * 2016-12-26 2019-01-28 주식회사 삼오씨엔에스 System for integrally analyzing and auditing heterogeneous personal information protection products
CN116738485B (en) * 2023-06-21 2023-12-05 江苏克胜集团股份有限公司 Security management system based on digital information transmission

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070156668A1 (en) * 2006-01-05 2007-07-05 International Business Machines Corporation Dynamic authorization based on focus data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070156668A1 (en) * 2006-01-05 2007-07-05 International Business Machines Corporation Dynamic authorization based on focus data

Also Published As

Publication number Publication date
KR20120007842A (en) 2012-01-25

Similar Documents

Publication Publication Date Title
US7496575B2 (en) Application instrumentation and monitoring
US7962616B2 (en) Real-time activity monitoring and reporting
CN102034052B (en) Operation system architecture based on separation of permissions and implementation method thereof
US20150302198A1 (en) Detection of Malicious Code Insertion in Trusted Environments
CN106295355B (en) A kind of active safety support method towards Linux server
JP2005526311A (en) Method and apparatus for monitoring a database system
CN112417391B (en) Information data security processing method, device, equipment and storage medium
CN113516337A (en) Method and device for monitoring data security operation
CN109450893A (en) A kind of network protection software approach and system based on linux kernel
KR101153969B1 (en) Query tool control method for preventing inner users from leaking the personal information and query tool control system therefor
Wüchner et al. Davast: Data-centric system level activity visualization
CN109684863A (en) Data leakage prevention method, device, equipment and storage medium
US10089463B1 (en) Managing security of source code
KR102338998B1 (en) System and method for checking log integrity and proving forgery and alteration activity of log through the same
KR101040765B1 (en) System for tracing process and file using extended security level
KR101973728B1 (en) Integration security anomaly symptom monitoring system
CN100568812C (en) The Registry Protection method
CN114462038A (en) Security protection method, device, equipment and computer readable storage medium
US9779237B2 (en) Detection of non-volatile changes to a resource
CN112711772A (en) Auditing system, method and storage medium for function execution in service
KR20050093196A (en) Method and system for calculating an risk index in real-time of information assets
Portillo-Dominguez et al. Towards an efficient log data protection in software systems through data minimization and anonymization
Basin et al. Logging and log analysis
Cornelius et al. Recommended practice: Creating cyber forensics plans for control systems
KR102644495B1 (en) System and Method for integrated business management of SaaS Application

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: 20150526

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190430

Year of fee payment: 8