KR100913190B1 - Method for database preservation web-based 3 tier environment and apparatus thereof - Google Patents

Method for database preservation web-based 3 tier environment and apparatus thereof Download PDF

Info

Publication number
KR100913190B1
KR100913190B1 KR1020070093110A KR20070093110A KR100913190B1 KR 100913190 B1 KR100913190 B1 KR 100913190B1 KR 1020070093110 A KR1020070093110 A KR 1020070093110A KR 20070093110 A KR20070093110 A KR 20070093110A KR 100913190 B1 KR100913190 B1 KR 100913190B1
Authority
KR
South Korea
Prior art keywords
server
web
database
access
query
Prior art date
Application number
KR1020070093110A
Other languages
Korean (ko)
Other versions
KR20090027917A (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 KR1020070093110A priority Critical patent/KR100913190B1/en
Publication of KR20090027917A publication Critical patent/KR20090027917A/en
Application granted granted Critical
Publication of KR100913190B1 publication Critical patent/KR100913190B1/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/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)

Abstract

개시된 내용은 웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치에 관한 것으로서, 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출한 후 웹 페이지별 SQL 문자 리스트를 저장하고, 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면 웹 접속 정보수집 모듈에서 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속자료를 추출하여 데이터베이스 보안서버로 전송하고, 웹서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하며, 데이터베이스 보안서버에서 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하여 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행한다.Disclosed are a method and a device for database security in a web-based three-tier environment. After extracting SQL statements from a web source in a database security server that performs a database security service in a web-based three-tier environment, the SQL for each web page is extracted. The user who stores the character list and performs the HTTP connection for accessing the database server via the web server in the web access information collection module when the HTTP connection for accessing the database server via the web server of the user computer or the internal user computer is performed. Data from the user computer or internal user computer that accesses the database server via the web server from the database security gateway installed between the web server and the database server after extracting the connection data of the computer or internal user computer. It extracts the base server connection data and performs data matching between the web server connection data extracted from the web access information collection module and the database server connection data extracted from the database security gateway from the database security server to the database server of the user computer or the internal user computer. Perform access control.

웹기반, 3-티어(tier, 계층), 데이터베이스, 보안, 감사, 통제 Web-Based, 3-Tier, Database, Security, Audit, Control

Description

웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치{Method for database preservation web-based 3 tier environment and apparatus thereof}Method for database preservation web-based 3 tier environment and apparatus according to web-based 3-tier environment

본 발명은 데이터베이스 보안방법 및 그 장치에 관한 것이다.The present invention relates to a database security method and apparatus thereof.

보다 상세하게는 웹서버, 웹 어플리케이션 서버(Web Application Server, WAS) 등을 사용하는 3-티어 환경에서의 각 티어에 대한 접근 정보를 통합 수집, 관리함으로써, 웹 기반 서비스를 사용하는 환경에서의 데이터베이스 보안을 수행할 수 있도록 하는 웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치에 관한 것이다.More specifically, by collecting and managing access information for each tier in a three-tier environment using a web server, a web application server (WAS), and the like, a database in an environment using a web-based service A method and apparatus for securing a database in a web-based three-tier environment that can perform security.

일반적으로 공공기관, 기업을 포함하는 거의 모든 조직에 있어서 데이터베이스는 가치 창출을 위한 소중한 자산으로 인식되고 있으며, 정보기술(Information Technology, IT)의 중심에서 그 중요성이 강조되고 있다.In general, in almost all organizations including public institutions and corporations, databases are recognized as valuable assets for value creation, and their importance is emphasized at the center of information technology (IT).

이에 따라 데이터의 관리를 위한 많은 개념들과 이를 수용하기 위한 각종 솔루션이 활발하게 개발되어 왔으며, 특히 데이터의 유출 또는 악의적인 목적에 의한 훼손, 변형 등을 방지하기 위한 데이터베이스 보안 제품의 경우 그 중요도가 더욱 커지고 있다.Accordingly, many concepts for managing data and various solutions for accommodating data have been actively developed, and in particular, the importance of database security products to prevent data leakage or damage or modification due to malicious purposes is important. It's getting bigger.

인터넷의 발달로 인한 개인 정보의 가치가 급속하게 증가함에 따라 최근 들어 자주 발생되는 웹 서비스를 통한 개인 정보 유출 사고의 경우, 기업의 이미지 하락, 정보 유출에 대한 보상 요구 등의 직접적인 피해와 유출된 개인정보의 무단사용으로 인한 추가적인 피해로 인한 사회적, 경제적 손실이 발생되었으며, 이처럼 급증하는 개인정보 유출사고에 대비하여 각 국가별로 관계 법령의 정비가 속속 제정되고 있다.With the rapid increase in the value of personal information due to the development of the Internet, in the case of personal information leakage accidents through web services, which have occurred frequently in recent years, direct damages such as the loss of corporate image and the demand for compensation for information leakage, etc. Social and economic losses have been caused by additional damages caused by unauthorized use of information, and in order to prepare for such a surge of personal information leakage, relevant laws are being enacted in each country.

이와 같이 개인정보 보호를 위한 각국 정부의 법안 제정 등으로 인하여 공공기관, 기업 등에서는 데이터베이스 보안 제품을 필수적으로 적용하여야 하는 제품으로 인식하고 있으며, 향후 데이터베이스 보안 제품의 시장 역시 그 영역을 넓혀가고 있다.Due to the legislation of governments for the protection of personal information, public institutions and corporations recognize that database security products should be applied as essential products, and the market for database security products is expanding in the future.

데이터베이스 보안을 제공하기 위하여 현재 시장에 출시되어 있는 데이터베이스 보안 제품은 데이터를 암호화하여 데이터베이스에 저장하는 제품과, 데이터베이스에 접근하는 사용자를 통제하고 접근 이력을 감사하는 제품 등 크게 2가지 종류로 나눌 수 있다.Database security products currently on the market to provide database security can be divided into two categories: products that encrypt data and store it in the database, and products that control the users who access the database and audit the access history. .

이 중에서 접근 통제 및 감사를 주기능으로 하는 보안 제품의 경우 데이터베이스에 접속하는 최종 사용자에 대한 접근 및 감사 기능을 제공하고 있다.Among them, security products whose main functions are access control and auditing, provide access and auditing functions for end users accessing the database.

즉, 도 1에 도시된 바와 같이 사용자 PC(1)에서 데이터베이스 서버(3)로 직접 접근을 시도하는 2-티어 방식의 경우에는, 데이터베이스 보안서버(2)에서 데이 터베이스 서버(3)에 접근하는 사용자 PC(1)의 접근 통제와 접근에 대한 감사가 가능하다.That is, in the case of the two-tier system in which the user PC 1 directly attempts to access the database server 3 as shown in FIG. 1, the database security server 2 accesses the database server 3. It is possible to audit the access control and access of the user PC (1).

하지만, 도 2에 도시된 바와 같이 사용자 PC(10)에서 웹서버 또는 웹 어플리케이션 서버(20)를 경유하여 데이터베이스 서버(40)로 접근하는 3-티어 방식의 경우에는, 데이터베이스 보안서버(30)에서 웹서버 또는 웹 어플리케이션 서버(20)의 정보가 사용자 정보로 나타나기 때문에 데이터베이스 서버(40)에 접근하는 실제 사용자 PC(10)에 대한 통제 및 감사 기능을 제공할 수 없는 문제점이 발생하였다.However, in the case of the three-tier method of accessing the database server 40 via the web server or the web application server 20 from the user PC 10 as shown in Figure 2, the database security server 30 in the Since the information of the web server or the web application server 20 appears as user information, there is a problem that cannot provide the control and audit function for the actual user PC 10 accessing the database server 40.

즉, 현재 웹서버 또는 웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접근은 최종 사용자 정보를 취득할 수 없기 때문에 웹서버 또는 웹 어플리케이션 서버에서 인증된 사용자의 경우 아무런 제약을 받지 않고 데이터베이스 서버에 접근할 수 있으며, 특히 웹서버 또는 웹 어플리케이션 서버의 경우에는 실행 소스 자체가 오픈되어 있는 상태이므로 악의적인 의도를 가진 사용자에 의해 해킹되거나 또는 내부 사용자에 의해 데이터베이스의 내용이 유출되는 사고가 발생될 수 있는 것이다. 이 경우 데이터베이스 보안 제품이 설치되어 있다고 하더라도 데이터베이스의 내용을 유출한 사용자를 확인할 방법이 없게 된다.In other words, access to the database server via the current web server or web application server cannot obtain end user information. Therefore, the authenticated user in the web server or web application server can access the database server without any restrictions. In particular, in the case of a web server or a web application server, since the execution source itself is open, an accident in which the contents of the database may be hacked by a malicious user or leaked by an internal user may occur. In this case, even if a database security product is installed, there is no way to identify the user who has leaked the contents of the database.

이처럼 IT 환경이 3-티어 기반의 환경으로 변화되어 가면서 기존의 2-티어 환경을 위한 데이터베이스 보안 제품으로는 이러한 IT 환경에서의 데이터베이스 보안을 지원하지 못하는 기술적인 한계에 부딪치게 되었으며, 데이터베이스 서버를 사용하는 고객들의 보안강화 요구가 지속적으로 증가되고 있는 추세에 있다.As the IT environment changes to a three-tier environment, database security products for existing two-tier environments face technical limitations that cannot support database security in these IT environments. The demand for enhanced security of customers is on the rise.

본 발명의 목적은 전술한 문제점을 해결할 수 있도록, 웹서버, 웹 어플리케이션 서버 등을 사용하는 3-티어 환경에서의 데이터베이스 보안 기능을 제공하기 위하여 중간에 위치하는 웹서버, 웹 어플리케이션 서버에 대한 접속 정보와 데이터베이스 보안의 연계를 통해 3-티어 환경의 데이터베이스 보안을 제공할 수 있도록 하는 웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치를 제공하는 데 있다.An object of the present invention to solve the above problems, access information for a web server, a web application server located in the middle to provide a database security function in a three-tier environment using a web server, a web application server, etc. The present invention provides a method and apparatus for securing a database in a web-based three-tier environment that can provide database security in a three-tier environment by linking the database and database security.

본 발명의 다른 목적은, 서비스를 제공하는 웹서버, 웹 어플리케이션 서버에 대한 접속 정보와 웹서버, 웹 어플리케이션 서버로부터 발생하는 데이터베이스 접근 정보를 통합 저장, 관리하고, 데이터베이스와 웹서버/웹 어플리케이션 서버를 연계하는 접근 제어 및 감사 자료를 수집하고, 비인가 웹페이지 또는 모듈로부터의 데이터베이스 접근을 통제하며, 3-티어 환경에서의 접속 내용에 대한 보고서 작성 기능을 제공하도록 하는 웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치를 제공하는 데 있다.It is another object of the present invention to integrate and store a web server providing a service, access information for a web application server and database access information generated from a web server and a web application server, and to manage a database and a web server / web application server. Database security in a web-based three-tier environment that collects associated access control and audit data, controls database access from unauthorized web pages or modules, and provides reporting capabilities for access in three-tier environments. A method and apparatus are provided.

이러한 목적을 달성하기 위한 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (1-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지 별 SQL 문자 리스트를 저장하는 단계와, (1-2) 웹서버 내에 설치되어 있는 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (1-3) 웹 접속 정보수집 모듈에서 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와, (1-4) 웹서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (1-5) 데이터베이스 보안서버에서 (1-3) 단계를 통해 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 (1-4) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계, 및 (1-6) 데이터베이스 보안서버에서 (1-3) 단계 및 (1-4) 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, (1-5) 단계에서 수행하는 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 한다.Database security method of a web-based three-tier environment according to the present invention for achieving this purpose, (1-1) SQL statements in a web source in a database security server that performs a database security service of a web-based three-tier environment Extracting and storing a list of SQL characters for each web page, and (1-2) for accessing a database server via a web server of a user computer or an internal user computer in a web access information collection module installed in a web server. Checking whether the HTTP connection is established, and (1-3) extracting the web server access data of the user computer or the internal user computer that performs the HTTP connection for accessing the database server via the web server in the web access information collection module. Transmitting the extracted web server access data to a database security server, and (1-4) the web server and the database server. Extracting database server connection data of user computer or internal user computer accessing the database server through the web server at the database security gateway installed in between, and (1-5) step (1-3) at the database security server. Data matching between the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway through steps (1-4), and based on the data matching result, Performing access control to the database server, and (1-6) web server access data and database server access data extracted in steps (1-3) and (1-4) from the database security server, (1 -5) Access control to database server via web server executed in step 5) Persistently storing, managing, and characterized in that it comprises the step of generating a report.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (2-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저 장하는 단계와, (2-2) 웹서버 내에 설치되어 있는 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (2-3) 웹 접속 정보수집 모듈에서 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와, (2-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버로 전송하는 단계와, (2-5) 웹서버/웹 어플리케이션 서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (2-6) 데이터베이스 보안서버에서 (2-3) 단계를 통해 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, (2-4) 단계를 통해 쿼리 스니핑 모듈에서 추출한 쿼리 정보, (2-5) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계와, (2-7) 데이터베이스 보안서버에서 (2-3) 단계 및 (2-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, (2-6) 단계에서 수행하는 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지 속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 다른 특징으로 한다.In addition, the database security method of the web-based three-tier environment according to the present invention, (2-1) extracts SQL statements from a web source in a database security server that performs a database security service of a web-based three-tier environment, (2-2) Web access information collection module installed in web server to access database server via web server / web application server of user computer or internal user computer. A step of checking whether an HTTP connection is made, and (2-3) a web server of a user computer or an internal user computer that performs an HTTP connection for accessing a database server via a web server / web application server in a web access information collection module. Extracting the access data and transmitting the extracted web server access data to the database security server; (2-4) Extracting query information of a user computer or an internal user computer for accessing a database server from a query sniffing module installed in an application server, and transmitting the extracted query information to a database security server; (2-5) a web server / web application; Extracting database server connection data of a user computer or an internal user computer accessing the database server through a web server / web application server at a database security gateway installed between the server and the database server, and (2-6) a database security server. In (2-3), the web server access data extracted from the web access information collection module, the query information extracted from the query sniffing module through (2-4), and the database security gateway extracted through (2-5). Data Matching of Database Server Connection Data And controlling access to the database server of the user computer or the internal user computer based on the result of data matching, (2-7) steps (2-3) and (2-4) at the database security server. Continuously store and manage the web server access data and query information extracted in the step, and the access control result to the database server via the web server / web application server performed in step (2-6) and generate a report It is another feature that comprises the step of.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (3-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계와, (3-2) 웹서버 전단에 설치된 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (3-3) 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와; (3-4) 웹서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (3-5) 데이터베이스 보안서버에서 (3-3) 단계를 통해 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 (3-4) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계, 및 (3-6) 데이터베이스 보안서버에서 (3-3) 단계 및 (3-4) 단계에서 추출되 는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, (3-5) 단계에서 수행하는 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security method of the web-based three-tier environment according to the present invention, (3-1) extracts SQL statements in the web source from a database security server that performs a database security service of the web-based three-tier environment, Storing the SQL character list for each page, and (3-2) accessing the database server via the web server of the user computer or the internal user computer in the web access information collection module provided in the web access monitoring gateway installed at the front of the web server. (3-3) a user computer or an internal user performing an HTTP connection for accessing a database server via a web server in the web access information collection module provided in the web access monitoring gateway; Extract web server access data of computer and transfer extracted web server access data to database security server And the step of; (3-4) extracting the database server connection data of the user computer or the internal user computer accessing the database server via the web server at the database security gateway installed between the web server and the database server, and (3-5) the database. Data matching of web server access data extracted from web access information collection module provided in web access monitoring gateway through step (3-3) and database server access data extracted from database security gateway through step (3-4) Performing access control to the database server of the user computer or the internal user computer based on the result of data matching, and (3-6) steps (3-3) and (3-4) at the database security server. Web server connection data and database server connection data extracted in step (3-5) Another feature is the step of continuously storing, managing, and generating a report of access control results to a database server via a web server running in the system.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (4-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계와, (4-2) 웹서버 전단에 설치된 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (4-3) 웹 접속 정보수집 모듈에서 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와, (4-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버로 전송하는 단계와, (4-5) 웹서버/웹 어플리케이션 서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (4-6) 데이터베이스 보안서버에서 (4-3) 단계를 통해 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, (4-4) 단계를 통해 쿼리 스니핑 모듈에서 추출한 쿼리 정보, (4-5) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계, 및 (4-7) 데이터베이스 보안서버에서 (4-3) 단계 및 (4-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, (4-6) 단계에서 수행하는 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security method of the web-based three-tier environment according to the present invention, (4-1) extracts SQL statements in a web source from a database security server that performs a database security service of a web-based three-tier environment, Storing the SQL character list for each page, and (4-2) accessing the database server via the web server of the user computer or the internal user computer in the web access information collection module provided in the web access monitoring gateway installed at the front of the web server. (4-3) the web of the user computer or the internal user computer that performs the HTTP connection for accessing the database server via the web server / web application server in the web access information collection module (4-3). Extracting the server access data and transmitting the extracted web server access data to the database security server; Extracting the query information of the user computer or the internal user computer for accessing the database server from the query sniffing module installed in the web application server, and transmitting the extracted query information to the database security server (4-5) Extracting database server connection data of a user computer or an internal user computer accessing the database server via the web server / web application server at a database security gateway installed between the server / web application server and the database server, (4-6 ) Web server access data extracted from web access information collection module through step (4-3) of database security server, query information extracted from query sniffing module through step (4-4), database through (4-5) step Of database server connection data extracted from security gateway. Performing data matching, and controlling access of the user computer or the internal user computer to the database server based on the data matching result, and (4-7) steps (4-3) and (4- in the database security server. Continuously store and manage web server access data and query information extracted in step 4) and access control results to database server via web server / web application server performed in step (4-6). It is another feature to include the step of generating.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (5-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계와, (5-2) 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치된 패킷 스니핑 장치에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (5-3) 패킷 스니핑 장치 내에 구비된 웹 접속 정보수집 모듈에서 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와, (5-4) 웹서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (5-5) 데이터베이스 보안서버에서 (5-3) 단계를 통해 패킷 스니핑 장치 내에 구비된 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 (5-4) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계, 및 (5-6) 데이터베이스 보안서버에서 (5-3) 단계 및 (5-4) 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, (5-5) 단계에서 수행하는 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security method of the web-based three-tier environment according to the present invention, (5-1) to extract the SQL statements in the web source from the database security server that performs the database security service of the web-based three-tier environment, Storing a list of SQL characters for each page, and (5-2) connecting a tap device to a network switch that performs switching of a user computer or an internal user computer that requests HTTP access to a web server. Checking whether an HTTP connection for accessing a database server via a web server of a computer or an internal user computer is performed; and (5-3) a database via a web server in the web access information collection module provided in the packet sniffing device. Web server access data of user computer or internal user computer that performs HTTP connection for server access. Extracting and transmitting the extracted web server access data to the database security server, and (5-4) a user computer or internal user accessing the database server via the web server at the database security gateway installed between the web server and the database server. Extracting the database server connection data of the user computer; and (5-5) the web server connection data extracted from the web access information collection module provided in the packet sniffing device through the step (5-3) of the database security server; Performing data matching of the database server connection data extracted from the database security gateway through step -4), and controlling access to the database server of the user computer or the internal user computer based on the data matching result; and (5- 6) Steps (5-3) and (5-4) at the database security server. Web server access data and database server access data extracted from, and continuously storing and managing the results of access control to the database server via the web server performed in step (5-5), and generating a report It is another feature to do.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법은, (6-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계와, (6-2) 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치된 패킷 스니핑 장치에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계와, (6-3) 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈에서 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출 된 웹서버 접속자료를 데이터베이스 보안서버로 전송하는 단계와, (6-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버로 전송하는 단계와, (6-5) 웹서버/웹 어플리케이션 서버와 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계와, (6-6) 데이터베이스 보안서버에서 (6-3) 단계를 통해 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, (6-4) 단계를 통해 쿼리 스니핑 모듈에서 추출한 쿼리 정보, (6-5) 단계를 통해 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 수행하는 단계, 및 (6-7) 데이터베이스 보안서버에서 (6-3) 단계 및 (6-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, (6-6) 단계에서 수행하는 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security method of the web-based three-tier environment according to the present invention, (6-1) extracts SQL statements in a web source from a database security server that performs a database security service of a web-based three-tier environment, Storing a list of SQL characters per page, and (6-2) connecting to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server. Checking whether an HTTP connection for accessing a database server via a web server / web application server of a computer or an internal user computer is performed; and (6-3) a web server / web in a web access information collection module in a packet sniffing device. User computer or HTTP server making HTTP connection for connecting to database server through application server Extracting the web server access data of the user computer, and transmitting the extracted web server access data to the database security server, and (6-4) user computer or internal access to the database server in the query sniffing module installed in the web application server Extracting the query information of the user computer and transmitting the extracted query information to the database security server, and (6-5) the web server / web application server at the database security gateway installed between the web server / web application server and the database server. Extracting the database server connection data of the user computer or internal user computer accessing the database server via (6-6) and the web extracted from the web access information collection module in step (6-3) of the database security server. Server sniffing, query sniffing through steps (6-4) Through the query information extracted from the module, and (6-5), data matching of the database server connection data extracted from the database security gateway is performed, and access control of the user computer or the internal user computer to the database server is performed based on the data matching result. And (6-7) web server access data and query information extracted in steps (6-3) and (6-4) of the database security server, and the web server performed in step (6-6) Another feature includes the continuous storage and management of access control results to the database server via the web application server and the generation of reports.

또한, 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴 퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹서버와; 웹서버와 데이터베이스 사이에 설치되며, 웹서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버, 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 웹서버 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료와, 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안 서버를 포함하는 것을 특징으로 한다.In addition, the database security device of the web-based three-tier environment according to the present invention, when the HTTP connection for accessing the database server via a web server from a user computer or an internal user computer connected through a network communication network, the user com A web server provided with a web access information collecting module for extracting web server access data including access time, access IP address, calling web page, query execution process ID, and query of a computer or an internal user computer; Installed between web server and database, database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of user computer or internal user computer accessing database through web server. A database security gateway for extracting; It stores various digital contents, provides a database server which provides predetermined data requested from a user computer or an internal user computer connected via a web server, and extracts SQL statements from a web source, and lists SQL characters for each web page. The access time received from the web access information collection module in the web server, the access IP address, the calling web page, the query execution process ID, the web server access data including the query, the access time received from the database security gateway, and the access server. Stores and manages database server connection data including IP address, user ID, application name, query execution process ID, and query, and checks for consistency using query execution process ID and query among web server connection data and database server connection data. Perform data matching, and Based on the matching result, it controls the access control from the database security gateway to the database server of the user computer or the internal user computer, and the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway It characterized in that it comprises a database security server for generating a report based on the access control results to the database server via the server.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 웹서버 내에 설치되어 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈과, 웹 어플리케이션 서버 내에 설치되어 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버와; 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버, 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 웹서버 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이로부 터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 다른 특징으로 한다.In addition, the database security device of the web-based three-tier environment according to the present invention, HTTP for accessing a database server via a web server / web application server from a user computer or an internal user computer installed in a web server and connected through a network communication network When the connection is established, the web access information collection module extracts web server access data including access time, access IP address, calling web page, and query of the user computer or internal user computer, and is installed in the web application server to access the database server. A web server / web application server equipped with a query sniffing module for extracting query information including a connection time and a query of a user computer or an internal user computer; Installed between the web server / web application server and the database, the access time, access server IP address, user ID, application name, query execution process of the user computer or internal user computer accessing the database via the web server / web application server. A database security gateway for extracting database connection data including IDs and queries; It stores various digital contents, provides a database server which provides predetermined data requested from a user computer or an internal user computer connected via a web server / web application server, and extracts SQL statements from a web source. It stores a list of SQL characters for each character, and accesses web server connection data including access time, connection IP address, calling web page, and query received from web access information collection module in web server, and query received from query sniffing module in web application server. Stores and manages query information including time and query, access time received from database security gateway, access server IP address, user ID, application name, query execution process ID, and database server connection data including query Server connection data, query information, database Perform data matching to check whether the server access data is matched by using the access time and query, and control access control from the database security gateway to the database server of the user computer or the internal user computer based on the data matching result. Web server connection data extracted from the connection information collection module, query information extracted from the query sniffing module, database server connection data extracted from the database security gateway, and access control to the database server via the web server / web application server. Another feature is that it includes a database security server that generates reports based on the results.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 웹서버 전단에 설치되고, 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹 접속 감시 게이트웨이와; 웹서버와 데이터베이스 사이에 설치되며, 웹서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 웹 접속 감시 게이트웨이 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료와, 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security apparatus of the web-based three-tier environment according to the present invention is installed in front of the web server, HTTP connection for accessing the database server via a web server from a user computer or an internal user computer connected through a network communication network A web access monitoring gateway equipped with a web access information collection module which extracts web server access data including access time, access IP address, calling web page, query execution process ID, and query of the corresponding user computer or internal user computer; ; Installed between web server and database, database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of user computer or internal user computer accessing database through web server. A database security gateway for extracting; A database server which stores various digital contents and provides predetermined data requested by a user computer or an internal user computer connected via a web server; And extracting SQL statements from the web source, storing a list of SQL characters per web page, access time received from the web access information collection module in the web access monitoring gateway, access IP address, calling web page, query execution process ID, Web server connection data including query, access time received from database security gateway, access server IP address, user ID, application name, query execution process ID, database server connection data including query are stored and managed. Data matching is performed to confirm the match using the query execution process ID and the query among the database server and the database server access data, and access control from the database security gateway to the database server of the user computer or the internal user computer is performed based on the data matching result. Control, And another database security server that generates a report based on the results of access control to the database server via the web server and the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway. It features.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 웹서버/웹 어플리케이션 서버 전단에 설치되고, 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프 로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹 접속 감시 게이트웨이와; 웹 어플리케이션 서버 내에 설치되어 웹 접속 감시 게이트웨이를 통해 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버와; 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 웹 접속 감시 게이트웨이 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security apparatus of a web-based three-tier environment according to the present invention is installed in front of a web server / web application server and connected to a user computer or an internal user computer via a network communication network via a web server / web application server. When an HTTP connection is established to access a database server, web access information is collected to extract web server access data including access time, access IP address, calling web page, query execution process ID, and query. A web access monitoring gateway equipped with a module; A web server / web application server installed in the web application server and including a query sniffing module configured to extract query information including a connection time and a query of a user computer or an internal user computer for accessing a database server through a web access monitoring gateway; Installed between the web server / web application server and the database, the access time, access server IP address, user ID, application name, query execution process of the user computer or internal user computer accessing the database via the web server / web application server. A database security gateway for extracting database connection data including IDs and queries; A database server storing various digital contents and providing predetermined data requested by a user computer or an internal user computer connected via a web server / web application server; And a web server that extracts an SQL statement from a web source, stores a list of SQL characters for each web page, and includes a connection time, an access IP address, a calling web page, and a query received from a web access information collection module in a web access monitoring gateway. Access data, query information including query time sent from query sniffing module in web application server, query information including query, access time received from database security gateway, access server IP address, user ID, application name, query execution process ID, query Stores and manages database server connection data, including the database server, performs data matching to check whether the web server connection data, query information, and database server connection data are matched using the connection time and query, and performs the data matching result. Users at the database security gateway It controls access control to the database server of the computer or internal user computer, and web server access data extracted from the web access information collection module, query information extracted from the query sniffing module, and database server access data extracted from the database security gateway. And a database security server that generates a report based on a result of access control to the database server via the web server / web application server.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치되고, 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 네트워크 스위치로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 패킷 스니핑 장치와; 웹서버와 데이터베이스 사이에 설치되며, 웹서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리 스트를 저장하고, 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료와, 웹서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security device of a web-based three-tier environment according to the present invention is connected and installed by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server, and the user computer. Alternatively, when an HTTP connection is made to access a database server from an internal user computer via a web server, the access time, access IP address, calling web page, query, etc. of the user computer or internal user computer are executed through the packet mirrored from the network switch. A packet sniffing device equipped with a web access information collecting module for extracting web server access data including a process ID and a query; Installed between web server and database, database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of user computer or internal user computer accessing database through web server. A database security gateway for extracting; A database server which stores various digital contents and provides predetermined data requested by a user computer or an internal user computer connected via a web server; Extract the SQL statement from the web source, store the list of SQL characters for each web page, access time received from the web access information collection module in the packet sniffing device, access IP address, calling web page, query execution process ID, Web server connection data including query, access time received from database security gateway, access server IP address, user ID, application name, query execution process ID, database server connection data including query are stored and managed. Data matching is performed to confirm the match using the query execution process ID and the query among the database server and the database server access data, and access control from the database security gateway to the database server of the user computer or the internal user computer is performed based on the data matching result. Control, web contact Another feature is that it includes Web server access data extracted from the information collection module and database server access data extracted from the database security gateway, and a database security server that generates a report based on the results of access control to the database server via the web server. do.

그리고 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치는, 웹서버/웹 어플리케이션 서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치되고, 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 네트워크 스위치로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 패킷 스니핑 장치와; 웹 어플리케이션 서버 내에 설치되어 네트워크 스위치를 통해 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버와; 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이와; 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버를 경유하여 접속된 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버로의 접속 통제를 제어하며, 웹 접속 정보수집 모듈에 서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 또 다른 특징으로 한다.In addition, the database security apparatus of the web-based three-tier environment according to the present invention is connected and installed by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting HTTP access to a web server / web application server. When the HTTP connection for accessing the database server from the user computer or the internal user computer via the web server / web application server is performed, the access time and the access IP of the user computer or the internal user computer through the packet mirrored from the network switch. A packet sniffing device equipped with a web access information collecting module for extracting web server access data including an address, a calling web page, a query execution process ID, and a query; A web server / web application server installed in the web application server and having a query sniffing module configured to extract query information including a query time and a connection time of a user computer or an internal user computer for accessing a database server through a network switch; Installed between the web server / web application server and the database, the access time, access server IP address, user ID, application name, query execution process of the user computer or internal user computer accessing the database via the web server / web application server. A database security gateway for extracting database connection data including IDs and queries; A database server storing various digital contents and providing predetermined data requested by a user computer or an internal user computer connected via a web server / web application server; And extracting SQL statements from a web source, storing a list of SQL characters for each web page, and accessing a web server including access time, access IP address, calling web page, and query received from a web access information collection module in a packet sniffing device. Data, the query information including the connection time received from the query sniffing module in the web application server, the query information including the query, the connection time received from the database security gateway, the access server IP address, the user ID, the application name, the query execution process ID, and the query. Stores and manages database server access data, including web server access data, query information, and data matching to check whether the database server access data is matched using the access time and query, and based on the data matching result. User computer or database security gateway Controls access control of internal user computer to database server. Web server access data extracted from web access information collection module, query information extracted from query sniffing module, and database server access data extracted from database security gateway. And a database security server that generates a report based on a result of access control to the database server via the web server / web application server.

이상에서와 같이 본 발명의 웹기반 3-티어 환경의 데이터베이스 보안방법 및 그 장치에 따르면, 웹에 접근하는 사용자의 정보와 사용자가 호출한 쿼리 정보, 그리고 이 쿼리가 실행되어 데이터베이스에 접근하는 일련의 정보를 통합적으로 관리할 수 있고, 데이터베이스의 접근 내용에 대하여 최종 사용자의 정보와 접속한 웹 페이지 정보 등의 감사자료를 수집할 수 있고, 지정되지 않은 사용자의 웹을 경유한 데이터베이스 접속 및 등록되지 않은 웹페이지, 쿼리를 통한 데이터베이스 접속을 차단할 수 있으며, 수집된 정보를 활용한 보고서 작성 기능을 제공함으로써, 악의적인 의도를 가진 사용자에 의해 해킹되거나 또는 내부 사용자에 의해 데이터베이스의 내용이 유출되는 사고를 미연에 방지하여 3-티어 환경의 데이터베이스 보안을 원활하게 수행할 수 있는 효과가 있다.As described above, according to the database security method and apparatus of the web-based three-tier environment of the present invention, the information of the user accessing the web, the query information called by the user, and the query is executed to access the database. Information can be integratedly managed, audit data such as the information of end users and web pages connected to the contents of database access can be collected, and database access and unregistered via the web of unspecified users. Access to the database through web pages and queries can be blocked, and the report creation function using the collected information can be prevented, so that the contents of the database can be hacked by malicious users or leaked by the internal users. To secure databases in 3-tier environments It can work.

이하, 첨부된 도면을 참조하여 본 발명의 웹기반 3-티어 환경의 데이터베이 스 보안방법 및 그 장치를 상세하게 설명한다.Hereinafter, a method and apparatus for securing a database in a web-based three-tier environment according to the present invention will be described in detail with reference to the accompanying drawings.

우선, 본 발명의 상세한 설명에 앞서 현재 국내 및 해외에 출시되어 있는 데이터베이스 보안 제품은, 보안 시스템의 설치 위치 및 동작 방식에 따라 에이전트(agent) 방식, 스니핑(sniffing) 방식, 게이트웨이(gateway) 방식의 세 가지로 나눌 수 있다.First, prior to the detailed description of the present invention, a database security product currently released in Korea and overseas is based on an installation method and an operation method of a security system, such as an agent method, a sniffing method, and a gateway method. It can be divided into three.

에이전트 방식은, 데이터베이스에 보안을 위한 에이전트를 설치하여 데이터베이스에 접근하는 사용자를 통제하거나 또는 접근 내용에 대한 감사 정보를 저장한다. 데이터베이스에 접근하는 모든 접속에 대하여 보안을 적용할 수 있어서 가장 강한 보안 정책을 수립하고, 운영할 수 있다. 그러나 에이전트가 데이터베이스 서버에 설치되기 때문에 데이터베이스에 추가적인 부하를 주며, 에이전트가 오류가 생긴 경우에 데이터베이스에 대한 접근에 제한이 생길 수 있다.In the agent method, an agent for security is installed in a database to control a user accessing a database or to store audit information about the access contents. Security can be applied to all accesses to the database so that the strongest security policy can be established and operated. However, because the agent is installed on the database server, it puts an additional load on the database. If the agent fails, access to the database may be restricted.

스니핑 방식은, 데이터베이스 서버가 연결되어 있는 네트워크 스위치에 탭 장비를 사용하여 연결, 설치하는 것으로서, 네트워크의 중간에서 데이터베이스 서버에 접근하는 내용을 감시하는 방식이어서 데이터베이스 서버와 네트워크에 부하를 주지 않는다. 그러나 접근에 대하여 통제를 할 수 없는 한계가 있으며, 감사 자료 수집에 주로 사용된다.The sniffing method is a tap device connected to and installed on a network switch to which a database server is connected. The sniffing method monitors access to a database server in the middle of the network, and does not put a load on the database server and the network. However, there are limitations on the access control and it is mainly used for collecting audit data.

게이트웨이 방식은, 네트워크 스위치와 데이터베이스 서버 사이에 설치되는 것으로서, 사용자는 데이터베이스 서버에 보안 장비를 거쳐서 접속하게 된다. 일반적으로 게이트웨이 방식이라고 불리는 제품들은 인라인 형태, 프록시 형태, IP-Forwarding 형태 등으로 서비스를 제공한다. 사용자의 접속에 대한 통제, 감사 자 료 수집 등이 가능하며 접근 통제 및 감사 제품의 주류를 형성하고 있다. 데이터베이스 서버에는 부하를 주지 않지만 네트워크의 중간에 위치하게 되므로 데이터베이스 트랜잭션이 많은 경우 분산된 환경을 구성하여야 한다.The gateway system is installed between the network switch and the database server, and the user connects to the database server via security equipment. Products commonly called gateways provide services in the form of inline, proxy, and IP-forwarding. It is possible to control the access of users, collect audit data, and form the mainstream of access control and audit products. Although it does not put a load on the database server, it is located in the middle of the network, so if there are many database transactions, a distributed environment should be configured.

본 발명은 상술한 방식들을 이용한 HTTP(Hyper Text Transfer Protocol) 정보 수집 에이전트 방식(제 1, 2 실시예), HTTP 정보 수집 게이트웨이 방식(제 3, 4 실시예), HTTP 정보 수집 스니핑 방식(제 5, 6 실시예) 등으로서, 이하에서 상세하게 설명한다.The present invention provides a Hyper Text Transfer Protocol (HTTP) information collection agent method (first and second embodiments), an HTTP information collection gateway method (third and fourth embodiments), and an HTTP information collection sniffing method (fifth). , Example 6) and the like will be described in detail below.

제 1 First 실시예Example

도 3은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 1 실시예의 구성을 개략적으로 나타낸 도면이고, 도 4는 도 3의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 1 실시예는 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)가 웹서버(150)를 경유하여 데이터베이스 서버(170)에 접근할 때 HTTP 정보 수집 에이전트 방식에 따른 데이터베이스 보안을 설명하기 위한 것이다.FIG. 3 is a diagram schematically showing a configuration of a first embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 4 is a view for explaining an example of data matching performed by the database security server of FIG. As a diagram, the first embodiment of the present invention is a database security based on the HTTP information collection agent method when the user computer 120 or the internal user computer 130 accesses the database server 170 via the web server 150. To illustrate.

도 3에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(110), 복수의 사용자 컴퓨터(120), 복수의 내부 사용자 컴퓨터(130), 네트워크 스위치(140), 웹서버(150), 데이터베이스 보안 게이트웨이(160), 데이터베이스 서버(170), 데이터베이스 보안서버(180) 등으로 구성된다.As shown in FIG. 3, the database security device includes a network communication network 110, a plurality of user computers 120, a plurality of internal user computers 130, a network switch 140, a web server 150, a database security gateway. 160, a database server 170, a database security server 180, and the like.

웹서버(150)는 네트워크 통신망(110)을 통한 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 HTTP 접속을 처리하는 웹서버(152)와, 네트워크 통신망(110)을 통해 접속한 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)로부터 웹서버(150)를 경유한 데이터베이스 서버(170) 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(180)로 전송하는 웹 접속 정보수집 모듈(154)과, JSP, ASP, ASP.Net, PHP, Perl, CGI 등의 웹 개발 언어(156)와, 자바프로그램 안에서 SQL(Structured Query Language, 구조화 질의어)을 실행하기 위하여 데이터베이스를 연결해주는 응용프로그램 인터페이스인 JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(158) 등으로 구성된다.The web server 150 may include a web server 152 that processes an HTTP connection of the user computer 120 or the internal user computer 130 through the network communication network 110, and a user computer connected through the network communication network 110. 120 or when the HTTP connection for accessing the database server 170 via the web server 150 from the internal user computer 130 is performed, the access time and connection of the corresponding user computer 120 or the internal user computer 130 Web access information collection module 154 which extracts web server connection data including IP address, calling web page, query execution process ID, query, and sends them to database security server 180, JSP, ASP, ASP.Net, PHP Web development languages (156) such as, Perl, CGI, and JDBC, ADO, ADO.Net, ODBC, etc., which are application program interfaces that connect databases to execute SQL (Structured Query Language) in Java programs. Emitter is composed of a base connected to the client 158.

데이터베이스 보안 게이트웨이(160)는 웹서버(150)와 데이터베이스 서버(170) 사이에 설치되어 TNS(Transaction Network Service) 패킷의 송수신을 처리하며, 웹서버(150)를 경유하여 데이터베이스 서버(170)에 접근하는 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(180)로 전송한다.The database security gateway 160 is installed between the web server 150 and the database server 170 to process transmission and reception of TNS (Transaction Network Service) packets, and accesses the database server 170 via the web server 150. Extract the database access data including the access time, access server IP address, user ID, application name, query execution process ID, and query of the user computer 120 or the internal user computer 130 to the database security server 180. do.

데이터베이스 서버(170)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버(150)를 경유하여 접속된 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)에서 요청하는 소정의 데이터를 제공한다.The database server 170 stores various digital contents and provides predetermined data requested by the user computer 120 or the internal user computer 130 connected through the web server 150.

데이터베이스 보안서버(180)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 웹 접속 정보수집 모듈(154)로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로(160)부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(160)에서 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 데이터베이스 서버(170)로의 접속 통제를 제어한다.The database security server 180 performs a preprocessing process of extracting SQL statements from a web source, storing a list of SQL characters for each web page, and accessing time, access IP address, and the like received from the web access information collection module 154. Web server access data and database including calling web page, query execution process ID, query, access time received from the security gateway 160, access server IP address, user ID, application name, query execution process ID, database including query Stores and manages server access data, performs data matching to check whether the web server access data and database server access data are matched using a query execution process ID and a query, and based on the data matching result, the database security gateway (160). ) From your computer 120 or from your internal user computer 130 Emitter controls the access control to the database server 170.

이때, 데이터베이스 보안서버(180)는, 웹 접속 정보수집 모듈(154)에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이(160)에서 추출한 데이터베이스 서버 접속자료와, 웹서버(150)를 경유한 데이터베이스 서버(170)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 180, the web server connection data extracted from the web access information collection module 154 and the database server connection data extracted from the database security gateway 160, and the database server via the web server 150 ( 170, the function of generating a report based on the access control result can be further performed.

또한, 데이터베이스 보안서버(180)에서 수행하는 웹서버(150)를 경유한 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 데이터베이스 서버(170)로의 접속 통제는, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 또는 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, 또는 SQL 변형 공격에 대하여 수행한다.In addition, the access control of the user computer 120 or the internal user computer 130 to the database server 170 via the web server 150 performed by the database security server 180 is controlled by the same user within a certain time. Alternatively, the user can access a specific column more than the specified number of times, access an unregistered query or web page, a table or column that does not have access authority, or execute an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 1 실시예를 도 5를 참조하여 상세하게 설명한다.A first embodiment of a database security method for a web-based three-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(180)에서 웹 소스 내에서 SQL 문장을 추출하고(S110), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S120).A database security server 180 that performs a database security service of a web-based 3-tier environment extracts an SQL statement from a web source (S110), and performs a preprocessing process of storing a list of SQL characters for each web page (S120). .

이후, 웹서버(150) 내에 설치되어 있는 웹 접속 정보수집 모듈(154)에서 네트워크 통신망(110)을 통해 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 웹서버(150)를 경유한 데이터베이스 서버(170) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S130).Subsequently, the database server via the web server 150 of the user computer 120 or the internal user computer 130 through the network communication network 110 in the web access information collection module 154 installed in the web server 150. (170) Check whether the HTTP connection for the connection is performed (S130).

사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 HTTP 접속이 수행되면, 웹 접속 정보수집 모듈(154)에서 웹서버(150)를 경유한 데이터베이스 서버(170) 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(180)로 전송한다(S140).When the HTTP connection of the user computer 120 or the internal user computer 130 is performed, the user who performs the HTTP connection for accessing the database server 170 via the web server 150 in the web access information collection module 154. Extract the web server access data of the computer 120 or the internal user computer 130, and transmits the extracted web server access data to the database security server 180 (S140).

이때 S140 단계를 통해 웹 접속 정보수집 모듈(154)에서 추출하는 웹서버 접속자료는 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료이다.At this time, the web server access data extracted from the web access information collection module 154 through step S140 are audit data such as access time, access IP address, calling web page, query execution process ID, and query.

사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 웹서버(150)를 경유한 데이터베이스 서버(170) 접속이 수행되면, 웹서버(150)와 데이터베이스 서버(170) 사이에 설치된 데이터베이스 보안 게이트웨이(160)에서 데이터베이스 서버(170)에 접근하는 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(180)로 전송한다(S150).When the connection of the database server 170 via the web server 150 of the user computer 120 or the internal user computer 130 is performed, the database security gateway 160 installed between the web server 150 and the database server 170. Extract the database server access data of the user computer 120 or the internal user computer 130 accessing the database server 170, and transmits the extracted database server access data to the database security server 180 (S150). .

이때 S150 단계를 통해 데이터베이스 보안 게이트웨이(160)에서 추출하는 데이터베이스 서버 접속자료는 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료이다.At this time, the database server access data extracted from the database security gateway 160 through the step S150 is audit data such as access time, access server IP address, user ID, application name, query execution process ID, query, and the like.

이후 데이터베이스 보안서버(180)에서는 S140 단계를 통해 웹 접속 정보수집 모듈(154)에서 추출한 웹서버 접속자료와 S150 단계를 통해 데이터베이스 보안 게이트웨이(160)에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행한다(S160).Thereafter, the database security server 180 performs data matching between the web server access data extracted from the web access information collection module 154 and the database server access data extracted from the database security gateway 160 through step S150 (step S140). S160).

이때 데이터베이스 보안서버(180)는 웹 접속 정보수집 모듈(154)에서 추출하는 웹서버 접속자료와 데이터베이스 보안 게이트웨이(160)에서 추출하는 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다.At this time, the database security server 180 checks whether or not the web server access data extracted from the web access information collection module 154 matches with the query execution process ID and the query among the database server access data extracted from the database security gateway 160. Perform data matching to check.

그리고 데이터 매칭 수행 결과를 토대로 웹서버(150)를 경유한 사용자 컴퓨터(120) 또는 내부 사용자 컴퓨터(130)의 데이터베이스 서버(170)로의 접속 통제를 수행한다(S170).Then, the access control to the database server 170 of the user computer 120 or the internal user computer 130 via the web server 150 is performed based on the data matching result (S170).

이때 데이터베이스 서버(170)로의 접속 통제는, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거 나, 또는 S110, S120 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대하여 통제하여 데이터베이스 보안을 수행한다.In this case, access control to the database server 170 is controlled when the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time, or a query or web page or access right that is not registered in S110 and S120. Perform database security by controlling for missing tables or columns, or controlling for SQL transformation attacks.

한편, 데이터베이스 보안서버(180)에서는 S140 및 S150 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, S160 단계에서 수행하는 웹서버(150)를 경유한 데이터베이스 서버(170)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S180). 이때, 지속적으로 저장, 관리하는 웹서버 접속자료 및 데이터베이스 서버 접속자료의 감사 자료는 추후 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있다.On the other hand, in the database security server 180, the web server access data and database server access data extracted in the step S140 and S150, and access control results to the database server 170 via the web server 150 performed in step S160 It continuously stores and manages and performs a function of generating a related report as necessary (S180). At this time, the audit data of the web server access data and database server access data that are continuously stored and managed can be used later for abnormal database access information alerts, tracking of malicious HTTP access users, and tracking access to database data of malicious internal users. .

제 2 2nd 실시예Example

도 6은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 2 실시예의 구성을 개략적으로 나타낸 도면이고, 도 7은 도 6의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 2 실시예는 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)가 웹서버/웹 어플리케이션 서버(250)( 즉, 웹서버 + 웹 어플리케이션 서버(WAS)의 구조 )를 경유하여 데이터베이스 서버(270)에 접근할 때 HTTP 정보 수집 에이전트 방식에 따른 데이터베 이스 보안을 설명하기 위한 것이다.FIG. 6 is a diagram schematically showing a configuration of a second embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 7 is a view for explaining an example of data matching performed by the database security server of FIG. As a diagram, a second embodiment of the present invention is provided in which the user computer 220 or the internal user computer 230 passes through a web server / web application server 250 (ie, a structure of a web server + web application server (WAS)). This is to describe the database security according to the HTTP information collection agent method when accessing the database server 270.

도 6에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(210), 복수의 사용자 컴퓨터(220), 복수의 내부 사용자 컴퓨터(230), 네트워크 스위치(240), 웹서버/웹 어플리케이션 서버(250), 데이터베이스 보안 게이트웨이(260), 데이터베이스 서버(270), 데이터베이스 보안서버(280) 등으로 구성된다.As shown in FIG. 6, the database security device includes a network communication network 210, a plurality of user computers 220, a plurality of internal user computers 230, a network switch 240, a web server / web application server 250. , A database security gateway 260, a database server 270, and a database security server 280.

웹서버/웹 어플리케이션 서버(250)는 네트워크 통신망(210)을 통한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 HTTP 접속을 처리하는 웹서버(252a), 네트워크 통신망(210)을 통해 접속한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)로부터 웹서버/웹 어플리케이션 서버(250)를 경유한 데이터베이스 서버(270) 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(280)로 전송하는 웹 접속 정보수집 모듈(252b)이 구비된 웹서버(252)와, WAS(254a), JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(254b), 데이터베이스 서버(270) 접속을 위한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하여 데이터베이스 보안서버(280)로 전송하는 쿼리 스니핑 모듈(254c)이 구비된 웹 어플리케이션 서버(254)로 구성된다.The web server / web application server 250 is connected via a web server 252a or a network communication network 210 that processes the HTTP connection of the user computer 220 or the internal user computer 230 through the network communication network 210. When the HTTP connection for accessing the database server 270 via the web server / web application server 250 is performed from the user computer 220 or the internal user computer 230, the corresponding user computer 220 or the internal user computer ( A web server 252 provided with a web access information collection module 252b for extracting web server access data including a connection time, an access IP address, a calling web page, and a query of the web server 230, and transmitting it to a database security server 280; Connection time, query of user computer 220 or internal user computer 230 for database connection client 254b, database server 270, etc., WAS 254a, JDBC, ADO, ADO.Net, ODBCExtracting hamhan query information comprises a database, the security server 280, a query module sniffing web application server 254, the (254c) is provided for transmitting to.

데이터베이스 보안 게이트웨이(270)는 웹서버/웹 어플리케이션 서버(250)와 데이터베이스 서버(270) 사이에 설치되어 TNS 패킷의 송수신을 처리하며, 웹서버/웹 어플리케이션 서버(250)를 경유하여 데이터베이스 서버(270)에 접근하는 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(280)로 전송한다.The database security gateway 270 is installed between the web server / web application server 250 and the database server 270 to handle transmission and reception of TNS packets, and the database server 270 via the web server / web application server 250. Database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of the user computer 220 or internal user computer 230 to access the database security server 280 To send).

데이터베이스 서버(270)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버(250)를 경유하여 접속된 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)에서 요청하는 소정의 데이터를 제공한다.The database server 270 stores various digital contents and provides predetermined data requested by the user computer 220 or the internal user computer 230 connected through the web server / web application server 250.

데이터베이스 보안서버(280)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 웹 접속 정보수집 모듈(252b)로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 쿼리 스니핑 모듈(254c)로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이(260)로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(260)에서 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 데이터베이스 서버(270)로의 접속 통제를 제어한다.The database security server 280 extracts an SQL statement from a web source, performs a preprocessing process for storing a list of SQL characters for each web page, and access time, access IP address, and the like received from the web access information collection module 252b. Calling web page, web server access data including query, access time received from query sniffing module 254c, query information including query, access time received from database security gateway 260, access server IP address, user Stores and manages database server connection data including ID, application name, query execution process ID, and query, and checks whether the server server data, query information, and database server connection data match the connection time and query. Performing data matching, and based on the data matching result, the database security gateway 260. Up controls the user computer 220 or the access control to the database server 270, internal user computer 230.

이때, 데이터베이스 보안서버(280)는, 웹 접속 정보수집 모듈(252b)에서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈(254c)에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이(260)에서 추출하는 데이터베이스 서버 접속자료와, 웹 서버/웹 어플리케이션 서버(250)를 경유한 데이터베이스 서버(270)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 280, the web server connection data extracted by the web access information collection module 252b, the query information extracted by the query sniffing module 254c, and the database extracted by the database security gateway 260 A report may be further generated based on server access data and a result of access control to the database server 270 via the web server / web application server 250.

또한, 데이터베이스 보안서버(280)에서 수행하는 웹서버/웹 어플리케이션 서버(250)를 경유한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 데이터베이스 서버(270)로의 접속 통제는, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 수행한다.In addition, the access control of the user computer 220 or the internal user computer 230 to the database server 270 via the web server / web application server 250 performed by the database security server 280 is the same user. Executes a specific number of times for a certain table or column within a certain time, accesses an unregistered query or web page, a table or column that does not have access authority, or executes an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 2 실시예를 도 8을 참조하여 상세하게 설명한다.A second embodiment of a database security method for a web-based three-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(280)에서 웹 소스 내에서 SQL 문장을 추출하고(S210), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S220).The database security server 280 performing the database security service extracts an SQL statement from the web source (S210), and performs a preprocessing process of storing the SQL character list for each web page (S220).

이후, 웹서버/웹 어플리케이션 서버(250) 내의 웹서버(252)에 설치된 웹 접속 정보수집 모듈(252b)에서 네트워크 통신망(210)을 통해 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 웹서버/웹 어플리케이션 서버(250)를 경유한 데이터베이스 서버(270) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S230).Then, the web server of the user computer 220 or the internal user computer 230 through the network communication network 210 in the web access information collection module 252b installed in the web server 252 in the web server / web application server 250. / Check whether the HTTP connection for connecting to the database server 270 via the web application server 250 is performed (S230).

사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 HTTP 접속이 수행되면, 웹 접속 정보수집 모듈(252b)에서 웹서버/웹 어플리케이션 서버(250)를 경유한 데 이터베이스 서버(270) 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(280)로 전송한다(S240).When the HTTP connection of the user computer 220 or the internal user computer 230 is performed, the web connection information collection module 252b may be used to access the database server 270 via the web server / web application server 250. The web server access data of the user computer 220 or the internal user computer 230 performing HTTP access is extracted, and the extracted web server access data is transmitted to the database security server 280 (S240).

이때 S240 단계를 통해 웹 접속 정보수집 모듈(252b)에서 추출하는 웹서버 접속자료는 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 등의 감사 자료이다.At this time, the web server access data extracted by the web access information collection module 252b through step S240 are audit data such as access time, access IP address, calling web page, and query.

이후 웹 어플리케이션 서버(254)에 설치된 쿼리 스니핑 모듈(254c)에서 데이터베이스 서버(270) 접속을 위한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버(280)로 전송한다(S250).Thereafter, the query sniffing module 254c installed in the web application server 254 extracts the query information of the user computer 220 or the internal user computer 230 for accessing the database server 270, and extracts the extracted query information from the database security. The server 280 transmits the data to the server 280 (S250).

이때 S250 단계를 통해 쿼리 스니핑 모듈(254c)에서 추출하는 쿼리 정보는 접속시간, 쿼리 등의 감사 자료이다.At this time, the query information extracted by the query sniffing module 254c through step S250 is audit data such as access time and query.

그리고 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 웹서버/웹 어플리케이션 서버(250)를 경유한 데이터베이스 서버(270) 접속이 수행되면, 웹서버/웹 어플리케이션 서버(250)와 데이터베이스 서버(270) 사이에 설치된 데이터베이스 보안 게이트웨이(260)에서 데이터베이스 서버(270)에 접근하는 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(280)로 전송한다(S260).When the connection of the database server 270 via the web server / web application server 250 of the user computer 220 or the internal user computer 230 is performed, the web server / web application server 250 and the database server 270 are connected. Extracts the database server connection data of the user computer 220 or the internal user computer 230 that accesses the database server 270 from the database security gateway 260 installed therebetween, and extracts the extracted database server connection data from the database security server. In step 280, and transmits to (280).

이때 S260 단계를 통해 데이터베이스 보안 게이트웨이(260)에서 추출하는 데이터베이스 서버 접속자료는 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리 케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료이다.At this time, the database server access data extracted from the database security gateway 260 through step S260 are audit data such as access time, access server IP address, user ID, application name, query execution process ID, and query.

이후 데이터베이스 보안서버(280)에서는 S240 단계를 통해 웹 접속 정보수집 모듈(252b)에서 추출한 웹서버 접속자료, S250 단계를 통해 쿼리 스니핑 모듈(254c)에서 추출한 쿼리 정보, S260 단계를 통해 데이터베이스 보안 게이트웨이(260)에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행한다(S270).Thereafter, the database security server 280 uses the web server access data extracted from the web access information collection module 252b through step S240, the query information extracted from the query sniffing module 254c through step S250, and the database security gateway through step S260. Data matching of the database server access data extracted in step 260 is performed (S270).

이때 데이터베이스 보안서버(280)는 웹 접속 정보수집 모듈(252b)에서 추출한 웹서버 접속자료, 쿼리 스니핑 모듈(254c)에서 추출한 쿼리 정보, 데이터베이스 보안 게이트웨이(260)에서 추출하는 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다.At this time, the database security server 280 is connected to the web server access data extracted from the web access information collection module 252b, the query information extracted from the query sniffing module 254c, the database server access data extracted from the database security gateway 260 Perform data matching to check for matches using and queries.

그리고 데이터 매칭 수행 결과를 토대로 웹서버/웹 어플리케이션 서버(250)를 경유한 사용자 컴퓨터(220) 또는 내부 사용자 컴퓨터(230)의 데이터베이스 서버(270)로의 접속 통제를 수행한다(S280).Then, the access control is performed to the database server 270 of the user computer 220 or the internal user computer 230 via the web server / web application server 250 based on the data matching result (S280).

이때 데이터베이스 서버(270)로의 접속 통제는, 상술한 실시예와 마찬가지로 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 또는 S210, S220 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대하여 통제하여 데이터베이스 보안을 수행한다.In this case, the access control to the database server 270 is controlled when the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time as in the above-described embodiment, or a query or web that is not registered in S210 and S220. Perform database security by controlling pages, tables or columns that you do not have access to, or by controlling against SQL transformation attacks.

마지막으로, 데이터베이스 보안서버(280)에서는 S240, S250 및 S260 단계에서 추출되는 웹서버 접속자료, 쿼리 정보 및 데이터베이스 서버 접속자료와, S280 단계에서 수행하는 웹서버/웹 어플리케이션 서버(250)를 경유한 데이터베이스 서 버(270)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S290). 이때, 지속적으로 저장, 관리하는 웹서버 접속자료, 쿼리 정보 및 데이터베이스 서버 접속자료의 감사 자료는 추후 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있다.Finally, the database security server 280 passes through the web server access data, query information, and database server access data extracted in steps S240, S250, and S260, and the web server / web application server 250 performed in step S280. It continuously stores and manages the access control result to the database server 270, and performs a function of generating a related report as necessary (S290). At this time, the audit data of the web server access data, query information and database server access data that are continuously stored and managed can be checked for abnormal database access information alerts, tracking of malicious HTTP access users, and tracking access to database data of malicious internal users. It can be utilized.

제 3 3rd 실시예Example

도 9는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 3 실시예의 구성을 개략적으로 나타낸 도면이고, 도 10은 도 9의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 3 실시예는 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)가 웹서버(360)를 경유하여 데이터베이스 서버(380)에 접근할 때 HTTP 정보 수집 게이트웨이 방식에 따른 데이터베이스 보안을 설명하기 위한 것이다.FIG. 9 is a diagram schematically showing a configuration of a third embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 10 is a view for explaining an example of data matching performed by the database security server of FIG. As a diagram, a third embodiment of the present invention is a database security based on the HTTP information collection gateway method when the user computer 320 or the internal user computer 330 accesses the database server 380 via the web server 360. To illustrate.

도 9에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(310), 복수의 사용자 컴퓨터(320), 복수의 내부 사용자 컴퓨터(330), 네트워크 스위치(340), 웹 접속 감시 게이트웨이(350), 웹서버(360), 데이터베이스 보안 게이트웨이(370), 데이터베이스 서버(380), 데이터베이스 보안서버(390) 등으로 구성된다.As shown in FIG. 9, the database security device includes a network communication network 310, a plurality of user computers 320, a plurality of internal user computers 330, a network switch 340, a web access monitoring gateway 350, and a web. A server 360, a database security gateway 370, a database server 380, a database security server 390, and the like.

웹 접속 감시 게이트웨이(350)는 네트워크 스위치(340)와 웹서버(360) 사이 에 설치되며, 네트워크 통신망(310)을 통해 웹서버(360)를 경유한 데이터베이스 서버(380) 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(390)로 전송하는 웹 접속 정보수집 모듈(352)이 구비된다.The web access monitoring gateway 350 is installed between the network switch 340 and the web server 360, and performs an HTTP connection for accessing the database server 380 via the web server 360 through the network communication network 310. Extracting web server access data including access time, access IP address, calling web page, query execution process ID, and query of the executing user computer 320 or internal user computer 330 and transmitting to the database security server 390 The web connection information collection module 352 is provided.

웹서버(360)는 웹 접속 감시 게이트웨이(350)를 통한 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 HTTP 접속을 처리하는 웹서버(362)와, JSP, ASP, ASP.Net, PHP, Perl, CGI 등의 웹 개발 언어(364)와, 데이터베이스를 연결해주는 응용프로그램 인터페이스인 JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(366) 등으로 구성된다.The web server 360 may include a web server 362 which processes an HTTP connection of the user computer 320 or the internal user computer 330 through the web access monitoring gateway 350, JSP, ASP, ASP.Net, PHP, Web development languages 364 such as Perl and CGI, and database connection clients 366 such as JDBC, ADO, ADO.Net, and ODBC, which are application program interfaces that connect databases.

데이터베이스 보안 게이트웨이(370)는 웹서버(360)와 데이터베이스 서버(380) 사이에 설치되어 TNS 패킷의 송수신을 처리하며, 웹 접속 감시 게이트웨이(350), 웹서버(360)를 경유하여 데이터베이스 서버(380)에 접근하는 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(390)로 전송한다.The database security gateway 370 is installed between the web server 360 and the database server 380 to handle transmission and reception of TNS packets, and the database server 380 via the web access monitoring gateway 350 and the web server 360. Database security server 390 by extracting the database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of the user computer 320 or internal user computer 330 accessing To send).

데이터베이스 서버(380)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹 접속 감시 게이트웨이(350), 웹서버(360)를 경유하여 접속된 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)에서 요청하는 소정의 데이터를 제공한다.The database server 380 stores various digital contents, and predetermined data requested by the user computer 320 or the internal user computer 330 connected via the web access monitoring gateway 350 and the web server 360. To provide.

데이터베이스 보안서버(390)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페 이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 웹 접속 감시 게이트웨이(350) 내의 웹 접속 정보수집 모듈(352)로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로(370)부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(370)에서 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 데이터베이스 서버(380)로의 접속 통제를 제어한다.The database security server 390 performs a preprocessing process of extracting SQL statements from a web source, storing a list of SQL characters for each web page, and from the web access information collection module 352 in the web access monitoring gateway 350. Access time, access IP address, calling web page, query execution process ID, web server access data including query, access time received from database security gateway 370, access server IP address, user ID, application name, Stores and manages database server connection data including query execution process ID and query, performs data matching to check whether the query execution process ID and query are matched among web server connection data and database server connection data, and data matching Based on the result of the execution, the database security gateway (370) in the user computer (320) Alternatively, the access control to the database server 380 of the internal user computer 330 is controlled.

이때, 데이터베이스 보안서버(390)는, 웹 접속 정보수집 모듈(352)에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이(370)에서 추출한 데이터베이스 서버 접속자료와, 웹 접속 감시 게이트웨이(350), 웹서버(360)를 경유한 데이터베이스 서버(380)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 390, the web server access data extracted from the web access information collection module 352 and the database server access data extracted from the database security gateway 370, the web access monitoring gateway 350, the web server ( A function of generating a report may be further performed based on a result of access control to the database server 380 via 360.

또한, 데이터베이스 보안서버(390)에서 수행하는 웹서버(360)를 경유한 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 데이터베이스 서버(380)로의 접속 통제는, 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 또는 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, 또는 SQL 변형 공격에 대하여 수행한다.In addition, the access control of the user computer 320 or the internal user computer 330 to the database server 380 via the web server 360 performed by the database security server 390 is controlled by the user within a certain time period. Executes more than the specified number of times for a specific column, accesses an unregistered query or web page, a table or column that does not have access authority, or executes an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 3 실시예를 도 11을 참조하여 상세하게 설명한다.A third embodiment of a database security method for a web-based 3-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(390)에서 웹 소스 내에서 SQL 문장을 추출하고(S310), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S320).The database security server 390, which performs a database security service of a web-based 3-tier environment, extracts an SQL statement from a web source (S310), and performs a preprocessing process of storing a list of SQL characters for each web page (S320). .

이후, 웹 접속 감시 게이트웨이(350) 내에 구비된 웹 접속 정보수집 모듈(352)에서 네트워크 통신망(310)을 통해 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 웹서버(360)를 경유한 데이터베이스 서버(380) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S330).Subsequently, in the web access information collection module 352 provided in the web access monitoring gateway 350, the database via the web server 360 of the user computer 320 or the internal user computer 330 through the network communication network 310. It is checked whether the HTTP connection for accessing the server 380 is performed (S330).

사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 HTTP 접속이 수행되면, 웹 접속 정보수집 모듈(352)에서 HTTP 접속을 수행하는 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(390)로 전송한다(S340).When the HTTP connection of the user computer 320 or the internal user computer 330 is performed, the connection time and connection of the user computer 320 or the internal user computer 330 which performs the HTTP connection in the web access information collection module 352. The web server access data, which is audit data such as an IP address, a calling web page, a query execution process ID, and a query, is extracted, and the extracted web server access data is transmitted to the database security server 390 (S340).

사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 웹서버(360)를 경유한 데이터베이스 서버(380) 접속이 수행되면, 웹서버(360)와 데이터베이스 서버(380) 사이에 설치된 데이터베이스 보안 게이트웨이(370)에서 데이터베이스 서버(380)에 접근하는 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(390)로 전송한다(S350).When the connection of the database server 380 via the web server 360 of the user computer 320 or the internal user computer 330 is performed, the database security gateway 370 installed between the web server 360 and the database server 380. Database server which is audit data such as access time, access server IP address, user ID, application name, query execution process ID, query, etc. of user computer 320 or internal user computer 330 accessing database server 380 Extracting the access data, and transmits the extracted database server access data to the database security server (390) (S350).

이후 데이터베이스 보안서버(390)에서는 S340 단계를 통해 웹 접속 정보수집 모듈(352)에서 추출한 웹서버 접속자료와 S350 단계를 통해 데이터베이스 보안 게이트웨이(370)에서 추출한 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다(S360).The database security server 390 then executes the query execution process ID and query among the web server access data extracted from the web access information collection module 352 through step S340 and the database server access data extracted from the database security gateway 370 through step S350. In operation S360, data matching for checking a match is performed.

그리고 데이터 매칭 수행 결과를 토대로 웹서버(360)를 경유한 사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 데이터베이스 서버(380)로의 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 또는 S310, S320 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대한 접속 통제를 수행한다(S370).Based on the data matching result, the same user to the database server 380 of the user computer 320 or the internal user computer 330 via the web server 360 accesses a predetermined number of times or more within a predetermined time to a specific table or a specific column. In this case, the control is performed, or the control is performed on the non-registered query or web page, the table or column to which the user does not have the access right, or the access control against the SQL transformation attack (S370).

한편, 데이터베이스 보안서버(390)에서는 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있도록 상술한 340 및 S350 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, S360 단계에서 수행하는 웹서버(360)를 경유한 데이터베이스 서버(380)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S380).On the other hand, in the database security server 390, the web server access data extracted in the above-described step 340 and S350 to be utilized for alerting abnormal database access information, tracking of malicious HTTP access user, tracking of access to database data of malicious internal users. And continuously storing and managing database server access data and access control results to the database server 380 via the web server 360 performed in step S360, and generating a related report as necessary ( S380).

제 4 4th 실시예Example

도 12는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 4 실시예의 구성을 개략적으로 나타낸 도면이고, 도 13은 도 12의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 4 실시예는 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)가 웹서버/웹 어플리케이션 서버(460)를 경유하여 데이터베이스 서버(480)에 접근할 때 HTTP 정보 수집 게이트웨이 방식에 따른 데이터베이스 보안을 설명하기 위한 것이다.FIG. 12 is a diagram schematically showing a configuration of a fourth embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 13 is a view for explaining an example of data matching performed by the database security server of FIG. As a diagram, a fourth embodiment of the present invention is an HTTP information collection gateway scheme when a user computer 420 or an internal user computer 430 accesses the database server 480 via a web server / web application server 460. This is to explain database security.

도 12에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(410), 복수의 사용자 컴퓨터(420), 복수의 내부 사용자 컴퓨터(430), 네트워크 스위치(440), 웹 접속 감시 게이트웨이(450), 웹서버/웹 어플리케이션 서버(460), 데이터베이스 보안 게이트웨이(470), 데이터베이스 서버(480), 데이터베이스 보안서버(490) 등으로 구성된다.As shown in FIG. 12, the database security device includes a network communication network 410, a plurality of user computers 420, a plurality of internal user computers 430, a network switch 440, a web access monitoring gateway 450, and a web. Server / web application server 460, database security gateway 470, database server 480, database security server 490, and the like.

웹 접속 감시 게이트웨이(450)는 네트워크 스위치(440)와 웹서버/웹 어플리케이션 서버(460) 사이에 설치되며, 네트워크 통신망(410)을 통해 웹서버/웹 어플리케이션 서버(460)를 경유한 데이터베이스 서버(480) 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(490)로 전송하는 웹 접속 정보수집 모듈(452)이 구비된다.The web access monitoring gateway 450 is installed between the network switch 440 and the web server / web application server 460, and the database server via the web server / web application server 460 through the network communication network 410 ( Database security server 490 by extracting web server access data including access time, access IP address, calling web page, and query of user computer 420 or internal user computer 430 performing HTTP access for access. Web access information collection module 452 is transmitted to the.

웹서버/웹 어플리케이션 서버(460)는 웹 접속 감시 게이트웨이(450)를 통한 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 HTTP 접속을 처리하는 웹서 버(462)와, WAS(464a), JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(464b), 데이터베이스 서버(480) 접속을 위한 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하여 데이터베이스 보안서버(490)로 전송하는 쿼리 스니핑 모듈(464c)이 구비된 웹 어플리케이션 서버(464)로 구성된다.The web server / web application server 460 includes a web server 462 that handles HTTP connections of the user computer 420 or the internal user computer 430 through the web access monitoring gateway 450, WAS 464a, and JDBC. Database by extracting query information including access time and query of the user's computer 420b or the internal user's computer 430 for database connection client 464b, database server 480, ADO, ADO.Net, ODBC, etc. It is composed of a web application server 464 equipped with a query sniffing module 464c for transmitting to the security server 490.

데이터베이스 보안 게이트웨이(470)는 웹서버/웹 어플리케이션 서버(460)와 데이터베이스 서버(480) 사이에 설치되어 TNS 패킷의 송수신을 처리하며, 웹서버/웹 어플리케이션 서버(460)를 경유하여 데이터베이스 서버(480)에 접근하는 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(490)로 전송한다.The database security gateway 470 is installed between the web server / web application server 460 and the database server 480 to handle transmission and reception of TNS packets, and the database server 480 via the web server / web application server 460. Database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of the user computer 420 or internal user computer 430 accessing the database security server 490 To send).

데이터베이스 서버(480)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버(460)를 경유하여 접속된 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)에서 요청하는 소정의 데이터를 제공한다.The database server 480 stores various digital contents and provides predetermined data requested by the user computer 420 or the internal user computer 430 connected via the web server / web application server 460.

데이터베이스 보안서버(490)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 웹 접속 감시 게이트웨이(450) 내의 웹 접속 정보수집 모듈(452)로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 웹서버/웹 어플리케이션 서버(460) 내의 쿼리 스니핑 모듈(464c)로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이(470)로부터 전송받은 접속시 간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(470)에서 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 데이터베이스 서버(480)로의 접속 통제를 제어한다.The database security server 490 performs a preprocessing process of extracting SQL statements from a web source, storing a list of SQL characters for each web page, and transmitting the data from the web access information collection module 452 in the web access monitoring gateway 450. Web server connection data including connection time received, connection IP address, calling web page, query, connection information received from query sniffing module 464c in web server / web application server 460, query information including query, Stores and manages database server access data including access time, access server IP address, user ID, application name, query execution process ID, and query received from the database security gateway 470, web server access data, and query information. Data matching is performed to check whether the data is matched by using the connection time and query among database server connection data. It said, data matching is performed based on a result of controlling the access control to database server 480 of the user computer 420 or inside the user's computer 430 in a database the security gateway 470.

이때, 데이터베이스 보안서버(490)는, 웹 접속 정보수집 모듈(452)에서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈(464c)에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이(470)에서 추출하는 데이터베이스 서버 접속자료와, 웹서버/웹 어플리케이션 서버(460)를 경유한 데이터베이스 서버(480)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 490, the web server connection data extracted from the web access information collection module 452, the query information extracted from the query sniffing module 464c, and the database extracted from the database security gateway 470 A function of generating a report may be further performed based on server access data and a result of access control to the database server 480 via the web server / web application server 460.

또한, 데이터베이스 보안서버(490)에서 수행하는 웹서버/웹 어플리케이션 서버(460)를 경유한 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 데이터베이스 서버(480)로의 접속 통제는, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 수행한다.In addition, the access control of the user computer 420 or the internal user computer 430 to the database server 480 via the web server / web application server 460 performed by the database security server 490 is controlled by the same user. Executes a specific number of times for a certain table or column within a certain time, accesses an unregistered query or web page, a table or column that does not have access authority, or executes an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 4 실시예를 도 14를 참조하여 상세하게 설명한다.A fourth embodiment of a method for securing a database in a web-based three-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(390)에서 웹 소스 내에서 SQL 문장을 추출하고(S410), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S420).The database security server 390, which performs a database security service of a web-based 3-tier environment, extracts an SQL statement from a web source (S410), and performs a preprocessing process of storing a list of SQL characters for each web page (S420). .

이후, 웹 접속 감시 게이트웨이(450) 내에 구비된 웹 접속 정보수집 모듈(452)에서 네트워크 통신망(410)을 통해 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 웹서버/웹 어플리케이션 서버(460)를 경유한 데이터베이스 서버(460) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S430).Subsequently, the web server / web application server 460 of the user computer 420 or the internal user computer 430 through the network communication network 410 in the web access information collection module 452 provided in the web access monitoring gateway 450. Check whether the HTTP connection for accessing the database server 460 is performed via S430.

사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 HTTP 접속이 수행되면, 웹 접속 정보수집 모듈(452)에서 HTTP 접속을 수행하는 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 등의 감사 자료인 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(490)로 전송한다(S440).When the HTTP connection of the user computer 420 or the internal user computer 430 is performed, the access time and connection of the user computer 420 or the internal user computer 430 performing the HTTP connection in the web access information collection module 452. The web server access data, which is audit data such as an IP address, a calling web page, and a query, is extracted, and the extracted web server access data is transmitted to the database security server 490 (S440).

이후 웹 어플리케이션 서버(464)에 설치된 쿼리 스니핑 모듈(464c)에서 데이터베이스 서버(480) 접속을 위한 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 쿼리 등의 감사 자료인 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버(490)로 전송한다(S450).Thereafter, the query sniffing module 464c installed in the web application server 464 extracts query information which is audit data such as access time and query of the user computer 420 or the internal user computer 430 for accessing the database server 480. Then, the extracted query information is transmitted to the database security server 490 (S450).

그리고 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 웹서버/웹 어플리케이션 서버(460)를 경유한 데이터베이스 서버(480) 접속이 수행되면, 웹서버/웹 어플리케이션 서버(460)와 데이터베이스 서버(480) 사이에 설치된 데이터베이스 보안 게이트웨이(470)에서 데이터베이스 서버(480)에 접근하는 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(490)로 전송한다(S460).When the database server 480 is connected via the web server / web application server 460 of the user computer 420 or the internal user computer 430, the web server / web application server 460 and the database server 480 are connected. Connection time, access server IP address, user ID, application name, query execution process ID of the user computer 420 or the internal user computer 430 accessing the database server 480 from the database security gateway 470 installed between Extract the database server connection data that is the audit data, such as query, and transmits the extracted database server connection data to the database security server (490) (S460).

이후 데이터베이스 보안서버(480)에서는 S440 단계를 통해 웹 접속 정보수집 모듈(452)에서 추출한 웹서버 접속자료, S450 단계를 통해 쿼리 스니핑 모듈(464c)에서 추출한 쿼리 정보, S460 단계를 통해 데이터베이스 보안 게이트웨이(470)에서 추출한 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다(S470).Thereafter, the database security server 480 uses the web server access data extracted from the web access information collection module 452 through S440, the query information extracted from the query sniffing module 464c through S450, and the database security gateway through S460. Data matching is performed to check whether the database server access data extracted in step 470 matches using the access time and the query (S470).

그리고 데이터 매칭 수행 결과를 토대로 웹서버/웹 어플리케이션 서버(460)를 경유한 사용자 컴퓨터(420) 또는 내부 사용자 컴퓨터(430)의 데이터베이스 서버(480)로의 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 또는 S410, S420 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대한 접속 통제를 수행한다(S480).Based on the data matching result, the same user to the database server 480 of the user computer 420 or the internal user computer 430 via the web server / web application server 460 is connected to a specific table or a specific column within a predetermined time. If the user accesses a predetermined number of times or more, or controls the non-registered query or web page, the table or column that does not have access authority in S410 and S420, or performs the access control against the SQL transformation attack (S480).

한편, 데이터베이스 보안서버(490)에서는 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있도록 상술한 S440, S450 및 S460 단계에서 추출되는 웹서버 접속자료, 쿼리 정보 및 데이터베이스 서버 접속자료와, S470 단계에서 수행하는 웹서버/웹 어플리케이션 서버(460)를 경유한 데이터베이스 서 버(480)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S490).On the other hand, the database security server 490 is a web server extracted in the above-described step S440, S450 and S460 to be utilized for alarming abnormal database access information, tracking of malicious HTTP access user, tracking of access to database data of malicious internal users It continuously stores and manages access data, query information, database server access data, and access control results to the database server 480 via the web server / web application server 460 performed in step S470. The function of generating a related report is performed (S490).

제 5 5th 실시예Example

도 15는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 5 실시예의 구성을 개략적으로 나타낸 도면이고, 도 16은 도 15의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 5 실시예는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)가 웹서버(560)를 경유하여 데이터베이스 서버(580)에 접근할 때 HTTP 정보 수집 스니핑 방식에 따른 데이터베이스 보안을 설명하기 위한 것이다.FIG. 15 is a diagram schematically showing a configuration of a fifth embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 16 is a view for explaining an example of data matching performed by the database security server of FIG. As a drawing, a fifth embodiment of the present invention is a database security based on HTTP information collection sniffing scheme when a user computer 520 or an internal user computer 530 accesses a database server 580 via a web server 560. To illustrate.

도 15에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(510), 복수의 사용자 컴퓨터(520), 복수의 내부 사용자 컴퓨터(530), 네트워크 스위치(540), 패킷 스니핑(Packet Sniffing) 장치(550), 웹서버(560), 데이터베이스 보안 게이트웨이(570), 데이터베이스 서버(580), 데이터베이스 보안서버(590) 등으로 구성된다.As shown in FIG. 15, the database security device includes a network communication network 510, a plurality of user computers 520, a plurality of internal user computers 530, a network switch 540, and a packet sniffing device 550. ), A web server 560, a database security gateway 570, a database server 580, a database security server 590, and the like.

패킷 스니핑 장치(550)는 웹서버(560)로 HTTP 접속을 요청하는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 스위칭을 수행하는 네트워크 스위치(540)에 탭 장비에 의해 연결, 설치되고, 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)로부터 웹서버(560)를 경유한 데이터베이스 서버(580) 접속을 위한 HTTP 접 속이 수행되면, 네트워크 스위치(540)로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(590)로 전송하는 웹 접속 정보수집 모듈(352)이 구비된다.The packet sniffing device 550 is connected and installed by a tap device to a network switch 540 which performs switching of a user computer 520 or an internal user computer 530 that requests an HTTP connection to the web server 560, When the HTTP connection for accessing the database server 580 from the user computer 520 or the internal user computer 530 via the web server 560 is performed, the user computer (through the mirrored packet from the network switch 540) is performed. Web access information collection module which extracts web server access data including access time, access IP address, calling web page, query execution process ID, query of 520 or internal user computer 530 and transmits to database security server 590 352 is provided.

웹서버(560)는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 HTTP 접속을 처리하는 웹서버(562)와, JSP, ASP, ASP.Net, PHP, Perl, CGI 등의 웹 개발 언어(564)와, 데이터베이스를 연결해주는 응용프로그램 인터페이스인 JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(566) 등으로 구성된다.The web server 560 is a web server 562 that handles the HTTP connection of the user computer 520 or the internal user computer 530, and a web development language such as JSP, ASP, ASP.Net, PHP, Perl, CGI ( 564), and a database connection client 566 such as JDBC, ADO, ADO.Net, ODBC, etc., which is an application program interface for connecting a database.

데이터베이스 보안 게이트웨이(570)는 웹서버(560)와 데이터베이스 서버(580) 사이에 설치되어 TNS 패킷의 송수신을 처리하며, 웹서버(560)를 경유하여 데이터베이스 서버(580)에 접근하는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(590)로 전송한다.The database security gateway 570 is installed between the web server 560 and the database server 580 to handle transmission and reception of TNS packets, and the user computer 520 accessing the database server 580 via the web server 560. Or extracts the database connection data including the connection time, access server IP address, user ID, application name, query execution process ID, and query of the internal user computer 530 and transmits it to the database security server 590.

데이터베이스 서버(580)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버(360)를 경유하여 접속된 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)에서 요청하는 소정의 데이터를 제공한다.The database server 580 stores various digital contents and provides predetermined data requested by the user computer 520 or the internal user computer 530 connected via the web server 360.

데이터베이스 보안서버(590)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 패킷 스니핑 장치(550) 내의 웹 접속 정보수집 모듈(552)로부터 전송받은 접속시간, 접속 IP 어드 레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 데이터베이스 보안 게이트웨이로(570)부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(570)에서 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 데이터베이스 서버(580)로의 접속 통제를 제어한다.The database security server 590 extracts an SQL statement from a web source, performs a preprocessing process of storing a list of SQL characters for each web page, and receives the data from the web access information collection module 552 in the packet sniffing device 550. Web server access data including access time, access IP address, calling web page, query execution process ID, query and access time received from 570 to database security gateway, access server IP address, user ID, application name, query Stores and manages database server access data including execution process ID and query, performs data matching to check whether the query execution process ID and query are matched between web server access data and database server access data, and performs data matching Based on the results, the database security gateway 570 may be used to And it controls the control connection to the database server 580 in the sub-user computer 530. The

이때, 데이터베이스 보안서버(590)는, 웹 접속 정보수집 모듈(552)에서 추출한 웹서버 접속자료 및 데이터베이스 보안 게이트웨이(570)에서 추출한 데이터베이스 서버 접속자료와, 웹서버(560)를 경유한 데이터베이스 서버(580)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 590, the web server connection data extracted from the web access information collection module 552 and the database server connection data extracted from the database security gateway 570, and the database server via the web server 560 ( 580 may further perform the function of generating a report based on the access control result.

또한, 데이터베이스 보안서버(590)에서 수행하는 웹서버(560)를 경유한 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 데이터베이스 서버(580)로의 접속 통제는, 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 또는 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, 또는 SQL 변형 공격에 대하여 수행한다.In addition, access control of the user computer 520 or the internal user computer 530 to the database server 580 via the web server 560 performed by the database security server 590 is controlled by the user within a certain time period. Executes more than the specified number of times for a specific column, accesses an unregistered query or web page, a table or column that does not have access authority, or executes an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 5 실시예를 도 17을 참조하여 상세하게 설명한다.A fifth embodiment of a database security method for a web-based three-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(590)에서 웹 소스 내에서 SQL 문장을 추출하고(S510), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S520).The database security server 590, which performs a database security service in a web-based 3-tier environment, extracts an SQL statement from a web source (S510) and performs a preprocessing process of storing a list of SQL characters for each web page (S520). .

이후, 패킷 스니핑 장치(550) 내에 구비된 웹 접속 정보수집 모듈(552)에서 네트워크 스위치(540)로부터 미러링한 패킷을 토대로 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 웹서버(560)를 경유한 데이터베이스 서버(580) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S530).Subsequently, the web server 560 of the user computer 520 or the internal user computer 530 is connected to the web connection information collection module 552 included in the packet sniffing device 550 based on the packets mirrored from the network switch 540. It is checked whether the HTTP connection for accessing the database server 580 is performed (S530).

사용자 컴퓨터(320) 또는 내부 사용자 컴퓨터(330)의 HTTP 접속이 수행되면, 패킷 스니핑 장치(550) 내에 구비된 웹 접속 정보수집 모듈(552)에서 HTTP 접속을 수행하는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(590)로 전송한다(S540).When the HTTP connection of the user computer 320 or the internal user computer 330 is performed, the user computer 520 or the internal user who performs the HTTP connection in the web access information collection module 552 included in the packet sniffing device 550. Extract the web server access data, which is audit data such as access time, access IP address, calling web page, query execution process ID, query, etc. of the computer 530, and transmit the extracted web server access data to the database security server 590. (S540).

사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 웹서버(560)를 경유한 데이터베이스 서버(580) 접속이 수행되면, 웹서버(560)와 데이터베이스 서버(580) 사이에 설치된 데이터베이스 보안 게이트웨이(570)에서 데이터베이스 서버(580)에 접근하는 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(590)로 전송한다(S550).When the connection of the database server 580 via the web server 560 of the user computer 520 or the internal user computer 530 is performed, the database security gateway 570 installed between the web server 560 and the database server 580. Database server that is audit data such as access time, access server IP address, user ID, application name, query execution process ID, query, etc. of user computer 520 or internal user computer 530 accessing database server 580 Extracting the access data, and transmits the extracted database server access data to the database security server (590) (S550).

이후 데이터베이스 보안서버(590)에서는 S540 단계를 통해 웹 접속 정보수집 모듈(552)에서 추출한 웹서버 접속자료와 S550 단계를 통해 데이터베이스 보안 게이트웨이(570)에서 추출한 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다(S560).Thereafter, the database security server 590 performs the query execution process ID and the query among the web server access data extracted from the web access information collection module 552 through step S540 and the database server access data extracted from the database security gateway 570 through step S550. In operation S560, data matching for checking a match is performed.

그리고 데이터 매칭 수행 결과를 토대로 웹서버(560)를 경유한 사용자 컴퓨터(520) 또는 내부 사용자 컴퓨터(530)의 데이터베이스 서버(580)로의 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 또는 S510, S520 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대한 접속 통제를 수행한다(S570).Based on the data matching result, the same user to the database server 580 of the user computer 520 or the internal user computer 530 via the web server 560 is connected to the specific table or the specific column more than a predetermined number of times within a predetermined time. If so, or controls the non-registered queries or web pages, tables or columns that do not have access rights in step S510, S520, or access control for SQL transformation attack (S570).

한편, 데이터베이스 보안서버(590)에서는 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있도록 상술한 540 및 S550 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, S560 단계에서 수행하는 웹서버(560)를 경유한 데이터베이스 서버(580)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S580).On the other hand, in the database security server 590, the web server access data extracted in the above-described step 540 and S550 to be utilized for alarming abnormal database access information, tracking of malicious HTTP access user, tracking of access to database data of malicious internal users. And continuously storing and managing database server access data and access control results to the database server 580 via the web server 560 performed in step S560, and generating a related report as necessary ( S580).

제 6 6th 실시예Example

도 18은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 6 실시예의 구성을 개략적으로 나타낸 도면이고, 도 19는 도 18의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면으로서, 본 발명의 제 6 실시예는 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)가 웹서버/웹 어플리케이션 서버(660)를 경유하여 데이터베이스 서버(680)에 접근할 때 HTTP 정보 수집 스니핑 방식에 따른 데이터베이스 보안을 설명하기 위한 것이다.FIG. 18 is a diagram schematically showing a configuration of a sixth embodiment of a database security apparatus of a web-based three-tier environment according to the present invention, and FIG. 19 is a view for explaining an example of data matching performed by the database security server of FIG. As a drawing, a sixth embodiment of the present invention is an HTTP information collection sniffing scheme when a user computer 620 or an internal user computer 630 accesses a database server 680 via a web server / web application server 660. This is to explain database security.

도 18에 도시된 바와 같이 데이터베이스 보안장치는, 네트워크 통신망(610), 복수의 사용자 컴퓨터(620), 복수의 내부 사용자 컴퓨터(630), 네트워크 스위치(640), 패킷 스니핑 장치(650), 웹서버/웹 어플리케이션 서버(660), 데이터베이스 보안 게이트웨이(670), 데이터베이스 서버(680), 데이터베이스 보안서버(690) 등으로 구성된다.As shown in FIG. 18, the database security device includes a network communication network 610, a plurality of user computers 620, a plurality of internal user computers 630, a network switch 640, a packet sniffing device 650, and a web server. / Web application server 660, database security gateway 670, database server 680, database security server 690 and the like.

패킷 스니핑 장치(650)는 웹서버/웹 어플리케이션 서버(660)로 HTTP 접속을 요청하는 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 스위칭을 수행하는 네트워크 스위치(640)에 탭 장비에 의해 연결, 설치되고, 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)로부터 웹서버/웹 어플리케이션 서버(660)를 경유한 데이터베이스 서버(680) 접속을 위한 HTTP 접속이 수행되면, 네트워크 스위치(640)로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하여 데이터베이스 보안서버(690)로 전송하는 웹 접속 정보수집 모듈(652)이 구비된다.The packet sniffing device 650 is connected to the web server / web application server 660 by the tap device to the network switch 640 which performs the switching of the user computer 620 or the internal user computer 630 requesting an HTTP connection. , And, when an HTTP connection is made from the user computer 620 or the internal user computer 630 to connect to the database server 680 via the web server / web application server 660, mirroring from the network switch 640. Database security server 690 by extracting web server access data including access time, access IP address, calling web page, query execution process ID, and query of the corresponding user computer 620 or internal user computer 630 through one packet. Web access information collection module 652 for transmitting to.

웹서버/웹 어플리케이션 서버(660)는 네트워크 스위치(640)를 통한 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 HTTP 접속을 처리하는 웹서버(662)와, WAS(664a), JDBC, ADO, ADO.Net, ODBC 등의 데이터베이스 접속 클라이언트(664b), 데이터베이스 서버(680) 접속을 위한 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하여 데이터베이스 보안서버(690)로 전송하는 쿼리 스니핑 모듈(664c)이 구비된 웹 어플리케이션 서버(664)로 구성된다.The web server / web application server 660 is a web server 662 that handles HTTP connections of the user computer 620 or internal user computer 630 via the network switch 640, and the WAS 664a, JDBC, ADO. Database security server by extracting query information including access time and query of the database connection client 664b, ADO.Net, ODBC, etc., the user computer 620 or the internal user computer 630 for accessing the database server 680 It consists of a web application server 664 equipped with a query sniffing module 664c for sending to 690.

데이터베이스 보안 게이트웨이(670)는 웹서버/웹 어플리케이션 서버(660)와 데이터베이스 서버(680) 사이에 설치되어 TNS 패킷의 송수신을 처리하며, 웹서버/웹 어플리케이션 서버(660)를 경유하여 데이터베이스 서버(680)에 접근하는 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하여 데이터베이스 보안서버(690)로 전송한다.The database security gateway 670 is installed between the web server / web application server 660 and the database server 680 to handle transmission and reception of TNS packets, and the database server 680 via the web server / web application server 660. Database security server 690 by extracting the database access data including access time, access server IP address, user ID, application name, query execution process ID, and query of the user computer 620 or internal user computer 630 accessing To send).

데이터베이스 서버(680)는 각종 디지털 컨텐츠를 저장하고 있으며, 웹서버/웹 어플리케이션 서버(660)를 경유하여 접속된 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)에서 요청하는 소정의 데이터를 제공한다.The database server 680 stores various digital contents and provides predetermined data requested by the user computer 620 or the internal user computer 630 connected via the web server / web application server 660.

데이터베이스 보안서버(690)는 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행하고, 패킷 스니핑 장치(650) 내의 웹 접속 정보수집 모듈(652)로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 웹서버/웹 어플리케이션 서버(660) 내의 쿼리 스니핑 모듈(664c)로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 데이터베이스 보안 게이트웨이(670)로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 웹서버 접속자료와, 쿼리 정보와, 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하며, 데이터 매칭 수행 결과를 토대로 데이터베이스 보안 게이트웨이(670)에서 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 데이터베이스 서버(680)로의 접속 통제를 제어한다.The database security server 690 performs a preprocessing process of extracting SQL statements from a web source, storing a list of SQL characters for each web page, and receiving the data from the web access information collection module 652 in the packet sniffing device 650. Web server access data including access time, access IP address, calling web page, query, access time received from query sniffing module 664c in web server / web application server 660, query information including query, database Store and manage database server connection data including access time, access server IP address, user ID, application name, query execution process ID, and query received from security gateway 670, web server connection data, query information, Performs data matching to check whether the database server access data match using query time and query. The access control from the database security gateway 670 to the database server 680 of the user computer 620 or the internal user computer 630 is controlled based on the data matching result.

이때, 데이터베이스 보안서버(690)는, 웹 접속 정보수집 모듈(652)에서 추출하는 웹서버 접속자료와, 쿼리 스니핑 모듈(664c)에서 추출하는 쿼리 정보와, 데이터베이스 보안 게이트웨이(670)에서 추출하는 데이터베이스 서버 접속자료와, 웹서버/웹 어플리케이션 서버(660)를 경유한 데이터베이스 서버(680)로의 접속 통제 결과를 토대로 보고서를 생성하는 기능을 더 수행할 수 있다.At this time, the database security server 690, the web server connection data extracted from the web access information collection module 652, the query information extracted from the query sniffing module 664c, and the database extracted from the database security gateway 670 A report may be further generated based on the server access data and the result of the access control to the database server 680 via the web server / web application server 660.

또한, 데이터베이스 보안서버(690)에서 수행하는 웹서버/웹 어플리케이션 서버(660)를 경유한 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 데이터베이스 서버(680)로의 접속 통제는, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 수행한다.In addition, the access control of the user computer 620 or the internal user computer 630 via the web server / web application server 660 performed by the database security server 690 to the database server 680 is controlled by the same user. Executes a specific number of times for a certain table or column within a certain time, accesses an unregistered query or web page, a table or column that does not have access authority, or executes an SQL transformation attack.

이와 같이 구성된 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안 방법의 제 6 실시예를 도 20을 참조하여 상세하게 설명한다.A sixth embodiment of a database security method for a web-based 3-tier environment according to the present invention configured as described above will be described in detail with reference to FIG.

웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버(690)에서 웹 소스 내에서 SQL 문장을 추출하고(S610), 웹 페이지별 SQL 문자 리스트를 저장하는 전처리 프로세스를 수행한다(S620).A database security server 690 that performs a database security service of a web-based 3-tier environment extracts an SQL statement from a web source (S610), and performs a preprocessing process of storing a list of SQL characters for each web page (S620). .

이후, 패킷 스니핑 장치(650) 내에 구비된 웹 접속 정보수집 모듈(652)에서 네트워크 스위치(640)로부터 미러링한 패킷을 토대로 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 웹서버/웹 어플리케이션 서버(660)를 경유한 데이터베이스 서버(680) 접속을 위한 HTTP 접속이 수행되는지를 확인한다(S630).Then, the web server / web application server of the user computer 620 or the internal user computer 630 based on the packets mirrored from the network switch 640 in the web access information collection module 652 provided in the packet sniffing device 650. It is checked whether the HTTP connection for accessing the database server 680 via 660 is performed (S630).

사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 HTTP 접속이 수행되면, 패킷 스니핑 장치(650) 내에 구비된 웹 접속 정보수집 모듈(652)에서 HTTP 접속을 수행하는 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 등의 감사 자료인 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 데이터베이스 보안서버(690)로 전송한다(S640).When the HTTP connection of the user computer 620 or the internal user computer 630 is performed, the user computer 620 or the internal user performing the HTTP connection in the web access information collection module 652 included in the packet sniffing device 650. Web server access data, which is audit data such as access time, access IP address, calling web page, query, etc. of the computer 630, is extracted, and the extracted web server access data is transmitted to the database security server 690 (S640).

이후 웹 어플리케이션 서버(664)에 설치된 쿼리 스니핑 모듈(664c)에서 데이터베이스 서버(680) 접속을 위한 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 쿼리 등의 감사 자료인 쿼리 정보를 추출하고, 추출된 쿼리 정보를 데이터베이스 보안서버(690)로 전송한다(S650).Thereafter, the query sniffing module 664c installed in the web application server 664 extracts query information that is audit data such as access time and query of the user computer 620 or the internal user computer 630 for accessing the database server 680. Then, the extracted query information is transmitted to the database security server 690 (S650).

그리고 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 웹서버/웹 어플리케이션 서버(660)를 경유한 데이터베이스 서버(680) 접속이 수행되면, 웹서버/웹 어플리케이션 서버(660)와 데이터베이스 서버(680) 사이에 설치된 데이터베이스 보 안 게이트웨이(670)에서 데이터베이스 서버(680)에 접근하는 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리 등의 감사 자료인 데이터베이스 서버 접속자료를 추출하고, 추출된 데이터베이스 서버 접속자료를 데이터베이스 보안서버(690)로 전송한다(S660).When the database server 680 is connected via the web server / web application server 660 of the user computer 620 or the internal user computer 630, the web server / web application server 660 and the database server 680 are connected. Connection time, access server IP address, user ID, application name, query execution process of the user computer 620 or internal user computer 630 accessing the database server 680 from the database security gateway 670 installed between Extracting the database server connection data that is the audit data, such as ID, query, and transmits the extracted database server connection data to the database security server (690) (S660).

이후 데이터베이스 보안서버(680)에서는 S640 단계를 통해 웹 접속 정보수집 모듈(652)에서 추출한 웹서버 접속자료, S650 단계를 통해 쿼리 스니핑 모듈(664c)에서 추출한 쿼리 정보, S660 단계를 통해 데이터베이스 보안 게이트웨이(670)에서 추출한 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행한다(S670).Thereafter, the database security server 680 uses the web server access data extracted from the web access information collection module 652 through step S640, the query information extracted from the query sniffing module 664c through step S650, and the database security gateway through step S660. In operation 670, data matching is performed to determine whether the database server access data is extracted using the access time and the query.

그리고 데이터 매칭 수행 결과를 토대로 웹서버/웹 어플리케이션 서버(660)를 경유한 사용자 컴퓨터(620) 또는 내부 사용자 컴퓨터(630)의 데이터베이스 서버(680)로의 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 또는 S610, S620 단계에서 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, 또는 SQL 변형 공격에 대한 접속 통제를 수행한다(S680).Based on the data matching result, the same user to the database server 680 of the user computer 620 or the internal user computer 630 via the web server / web application server 660 is connected to a specific table or a specific column within a predetermined time. If the user accesses a predetermined number of times or more, or controls the non-registered query or web page, the table or the column which does not have the access right in step S610 and S620, or performs the access control for the SQL transformation attack (S680).

한편, 데이터베이스 보안서버(690)에서는 비정상적인 데이터베이스 접속 정보 경보, 악의적인 HTTP 접속 사용자에 대한 추적, 악의적인 내부 사용자의 데이터베이스 자료 접근 추적 등에 활용할 수 있도록 상술한 S640, S650 및 S660 단계에서 추출되는 웹서버 접속자료, 쿼리 정보 및 데이터베이스 서버 접속자료와, S670 단계에서 수행하는 웹서버/웹 어플리케이션 서버(660)를 경유한 데이터베이스 서버(680)로의 접속 통제 결과를 지속적으로 저장, 관리하며, 필요에 따라 관련된 보고서를 생성하는 기능을 수행한다(S690).On the other hand, the database security server 690, the web server extracted in the above-described step S640, S650 and S660 to be utilized for alarming abnormal database access information, tracking of malicious HTTP access user, tracking of access to database data of malicious internal users It continuously stores and manages access data, query information and database server access data, and the result of access control to the database server 680 via the web server / web application server 660 performed in step S670. Perform a function to generate a report (S690).

여기에서, 상술한 본 발명에서는 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경할 수 있음을 이해할 수 있을 것이다.Herein, while the present invention has been described with reference to the preferred embodiments, those skilled in the art will variously modify the present invention without departing from the spirit and scope of the invention as set forth in the claims below. And can be changed.

도 1과 도 2는 일반적인 웹기반 2-티어 환경과 3-티어 환경을 개략적으로 나타낸 도면,1 and 2 schematically illustrate a typical web-based two-tier environment and a three-tier environment;

도 3은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 1 실시예의 구성을 개략적으로 나타낸 도면,3 is a diagram schematically showing the configuration of a first embodiment of a database security apparatus for a web-based three-tier environment according to the present invention;

도 4는 도 3의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,4 is a view for explaining an example of data matching performed in the database security server of FIG.

도 5는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 1 실시예의 동작과정을 상세하게 나타낸 순서도,5 is a flowchart showing in detail the operation of the first embodiment of the method for securing a database in a web-based 3-tier environment according to the present invention;

도 6은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 2 실시예의 구성을 개략적으로 나타낸 도면,6 is a diagram schematically showing the configuration of a second embodiment of a database security apparatus for a web-based three-tier environment according to the present invention;

도 7은 도 6의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,7 is a view for explaining an example of data matching performed in the database security server of FIG.

도 8은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 2 실시예의 동작과정을 상세하게 나타낸 순서도,8 is a flow chart showing in detail the operation of the second embodiment of a method for securing a database in a web-based 3-tier environment according to the present invention;

도 9는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 3 실시예의 구성을 개략적으로 나타낸 도면,9 is a view schematically showing the configuration of a third embodiment of a database security apparatus for a web-based three-tier environment according to the present invention;

도 10은 도 9의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,10 is a view for explaining an example of data matching performed in the database security server of FIG.

도 11은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 3 실시예의 동작과정을 상세하게 나타낸 순서도,11 is a flow chart showing in detail the operation of the third embodiment of a database security method for a web-based 3-tier environment according to the present invention;

도 12는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 4 실시예의 구성을 개략적으로 나타낸 도면,12 is a diagram schematically showing the configuration of a fourth embodiment of a database security apparatus for a web-based three-tier environment according to the present invention;

도 13은 도 12의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,FIG. 13 is a diagram for explaining an example of data matching performed by the database security server of FIG. 12. FIG.

도 14는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 4 실시예의 동작과정을 상세하게 나타낸 순서도,14 is a flow chart showing in detail the operation of the fourth embodiment of a method for securing a database in a web-based three-tier environment according to the present invention;

도 15는 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 5 실시예의 구성을 개략적으로 나타낸 도면,15 is a view schematically showing the configuration of a fifth embodiment of a database security apparatus for a web-based 3-tier environment according to the present invention;

도 16은 도 15의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,FIG. 16 is a view for explaining an example of data matching performed by the database security server of FIG. 15; FIG.

도 17은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 5 실시예의 동작과정을 상세하게 나타낸 순서도,17 is a flow chart showing in detail the operation of the fifth embodiment of a method for securing a database in a web-based three-tier environment according to the present invention;

도 18은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안장치의 제 6 실시예의 구성을 개략적으로 나타낸 도면,18 is a diagram schematically showing the configuration of a sixth embodiment of a database security device for a web-based three-tier environment according to the present invention;

도 19는 도 18의 데이터베이스 보안서버에서 수행하는 데이터 매칭의 예를 설명하기 위한 도면,19 is a view for explaining an example of data matching performed by the database security server of FIG. 18;

도 20은 본 발명에 따른 웹기반 3-티어 환경의 데이터베이스 보안방법의 제 6 실시예의 동작과정을 상세하게 나타낸 순서도이다.20 is a flowchart showing in detail the operation of the sixth embodiment of a method for securing a database in a web-based three-tier environment according to the present invention.

Claims (46)

(1-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계;(1-1) extracting SQL statements from a web source in a database security server performing a database security service of a web-based 3-tier environment, and storing a SQL character list for each web page; (1-2) 웹서버 내에 설치되어 있는 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(1-2) checking whether an HTTP connection for accessing a database server via a web server of a user computer or an internal user computer is performed in a web access information collection module installed in the web server; (1-3) 상기 웹 접속 정보수집 모듈에서 상기 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(1-3) The web access information collection module extracts web server access data of a user computer or an internal user computer performing HTTP access for accessing a database server via the web server, and extracts the extracted web server access data. Transmitting to the database security server; (1-4) 상기 웹서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버를 경유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(1-4) extracting database server access data of a user computer or an internal user computer accessing the database server via the web server from a database security gateway installed between the web server and the database server; (1-5) 상기 데이터베이스 보안서버에서 상기 (1-3) 단계를 통해 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 상기 (1-4) 단계를 통해 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사 용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(1-5) Web server access data extracted from the web access information collection module through step (1-3) in the database security server and database server access extracted from the database security gateway through step (1-4) Performing data matching of data, and performing access control of the user computer or the internal user computer to the database server based on the data matching result; And (1-6) 상기 데이터베이스 보안서버에서 상기 (1-3) 단계 및 상기 (1-4) 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, 상기 (1-5) 단계에서 수행하는 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(1-6) Web server access data and database server access data extracted in steps (1-3) and (1-4) in the database security server, and in the step (1-5) And continuously storing and managing a result of access control to the database server via a web server, and generating a report. 제 1 항에 있어서, 상기 (1-3) 단계의 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료는,The method of claim 1, wherein the web server access data extracted from the web access information collection module of step (1-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method for securing a database in a web-based three-tier environment, characterized by connection time, access IP address, calling web page, query execution process ID, and query. 제 1 항에 있어서, 상기 (1-4) 단계의 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료는,The method of claim 1, wherein the database server access data extracted from the database security gateway of the step (1-4), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 1 항에 있어서, 상기 (1-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,The method of claim 1, wherein the data matching performed in the database security server of the step (1-5), 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Web-based three-tier environment characterized in that the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway to check whether the matching using the query execution process ID and query. Database security methods. 제 1 항에 있어서, 상기 (1-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,The method of claim 1, wherein the access control to the database server performed by the database security server in the step (1-5), 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 상기 (1-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.When the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time, or controls a query or web page not registered in step (1-1) and a table or column to which access rights are not granted, A method for securing a database in a web-based three-tier environment, characterized by controlling against SQL transformation attacks. (2-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계;(2-1) extracting SQL statements from a web source in a database security server performing a database security service of a web-based 3-tier environment, and storing a list of SQL characters for each web page; (2-2) 웹서버 내에 설치되어 있는 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(2-2) checking whether an HTTP connection for accessing a database server via a web server / web application server of a user computer or an internal user computer is performed in a web access information collection module installed in the web server; (2-3) 상기 웹 접속 정보수집 모듈에서 상기 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(2-3) The web access information collection module extracts web server access data of a user computer or an internal user computer performing HTTP access for accessing a database server via the web server / web application server, and extracts the extracted web. Transmitting server access data to the database security server; (2-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 상기 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 상기 데이터베이스 보안서버로 전송하는 단계;(2-4) extracting query information of a user computer or an internal user computer for accessing the database server from a query sniffing module installed in a web application server, and transmitting the extracted query information to the database security server; (2-5) 상기 웹서버/웹 어플리케이션 서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버/웹 어플리케이션 서버를 경유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(2-5) A database server access data of a user computer or an internal user computer accessing the database server via the web server / web application server at a database security gateway installed between the web server / web application server and the database server. Extracting; (2-6) 상기 데이터베이스 보안서버에서 상기 (2-3) 단계를 통해 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, 상기 (2-4) 단계를 통해 상기 쿼리 스니핑 모듈에서 추출한 쿼리 정보, 상기 (2-5) 단계를 통해 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(2-6) the web server access data extracted from the web access information collection module through step (2-3) in the database security server, the query information extracted from the query sniffing module through step (2-4), Performing data matching of the database server access data extracted from the database security gateway through step (2-5), and performing access control of the user computer or the internal user computer to the database server based on the data matching result step; And (2-7) 상기 데이터베이스 보안서버에서 상기 (2-3) 단계 및 (2-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, 상기 (2-6) 단계에서 수행하는 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(2-7) Web server access data and query information extracted in steps (2-3) and (2-4) in the database security server, and the web server / performed in step (2-6). And continuously storing and managing access control results to the database server via a web application server, and generating a report. 제 6 항에 있어서, 상기 (2-3) 단계의 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료는,The web server access data extracted from the web access information collection module of step (2-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method in a web-based three-tier environment, characterized in that the connection time, access IP address, calling web page, query. 제 6 항에 있어서, 상기 (2-4) 단계의 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보는,The method of claim 6, wherein the query information extracted by the query sniffing module of the step (2-4), 접속시간, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method of a web-based 3-tier environment, characterized in that the connection time, query. 제 6 항에 있어서, 상기 (2-5) 단계의 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료는,The method of claim 6, wherein the database server access data extracted from the database security gateway of the step (2-5), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 6 항에 있어서, 상기 (2-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,The method of claim 6, wherein the data matching performed by the database security server of the step (2-6), 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.The web server access data extracted from the web access information collection module, the query information extracted from the query sniffing module, and the database server access data extracted from the database security gateway are used to check whether they match using the access time. Database security method of a web-based three-tier environment, characterized in that. 제 6 항에 있어서, 상기 (2-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,The method of claim 6, wherein the access control to the database server performed by the database security server of the step (2-6), 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 상기 (2-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.When the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time, or controls a query or web page not registered in the step (2-1) and a table or column to which access rights are not granted, A method for securing a database in a web-based three-tier environment, characterized by controlling against SQL transformation attacks. (3-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계;(3-1) extracting SQL statements from a web source in a database security server performing a database security service of a web-based 3-tier environment, and storing a SQL character list for each web page; (3-2) 웹서버 전단에 설치된 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(3-2) checking whether an HTTP connection for accessing a database server via a web server of a user computer or an internal user computer is performed in a web access information collection module provided in a web access monitoring gateway installed at a front end of the web server; (3-3) 상기 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에 서 상기 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(3-3) The web access information collection module provided in the web access monitoring gateway extracts web server access data of a user computer or an internal user computer that performs HTTP access for accessing a database server via the web server. Transmitting the extracted web server access data to the database security server; (3-4) 상기 웹서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버를 경유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(3-4) extracting database server access data of a user computer or an internal user computer accessing the database server via the web server from a database security gateway installed between the web server and the database server; (3-5) 상기 데이터베이스 보안서버에서 상기 (3-3) 단계를 통해 상기 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 상기 (3-4) 단계를 통해 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(3-5) Web server access data extracted from the web access information collection module provided in the web access monitoring gateway through step (3-3) in the database security server and the database through step (3-4). Performing data matching of the database server access data extracted by the security gateway, and controlling access to the database server of the user computer or the internal user computer based on the data matching result; And (3-6) 상기 데이터베이스 보안서버에서 상기 (3-3) 단계 및 상기 (3-4) 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, 상기 (3-5) 단계에서 수행하는 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(3-6) Web server access data and database server access data extracted in steps (3-3) and (3-4) in the database security server, and the step performed in step (3-5) And continuously storing and managing a result of access control to the database server via a web server, and generating a report. 제 12 항에 있어서, 상기 (3-3) 단계의 상기 웹 접속 정보수집 모듈에서 추 출하는 웹서버 접속자료는,The web server access data extracted from the web access information collection module of step (3-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method for securing a database in a web-based three-tier environment, characterized by connection time, access IP address, calling web page, query execution process ID, and query. 제 12 항에 있어서, 상기 (3-4) 단계의 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료는,The method of claim 12, wherein the database server access data extracted from the database security gateway of the step (3-4), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 12 항에 있어서, 상기 (3-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,The method of claim 12, wherein the data matching performed by the database security server of the step (3-5), 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Web-based three-tier environment characterized in that the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway to check whether the matching using the query execution process ID and query. Database security methods. 제 12 항에 있어서, 상기 (3-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,The method of claim 12, wherein the access control to the database server performed by the database security server in the step (3-5), 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟 수 이상 접속하는 경우 통제하거나, 상기 (3-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.If the same user accesses a certain number of times for a specific table or column within a certain time, control or control the query or web page which is not registered in the above step (3-1) and the table or column to which access is not granted. Database security method in a web-based three-tier environment, characterized in that the control against SQL transformation attack. (4-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계;(4-1) extracting an SQL statement from a web source in a database security server performing a database security service of a web-based 3-tier environment, and storing a SQL character list for each web page; (4-2) 웹서버 전단에 설치된 웹 접속 감시 게이트웨이 내에 구비된 웹 접속 정보수집 모듈에서 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(4-2) checking whether an HTTP connection for accessing a database server via a web server of a user computer or an internal user computer is performed in a web access information collection module provided in a web access monitoring gateway installed at a front end of the web server; (4-3) 상기 웹 접속 정보수집 모듈에서 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(4-3) In the web access information collection module, extract web server access data of a user computer or an internal user computer performing HTTP access for accessing a database server via a web server / web application server, and extract the extracted web server. Transmitting access data to the database security server; (4-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 상기 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 상기 데이터베이스 보안서버로 전송하는 단계;(4-4) extracting query information of a user computer or an internal user computer for accessing the database server from a query sniffing module installed in a web application server, and transmitting the extracted query information to the database security server; (4-5) 상기 웹서버/웹 어플리케이션 서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버/웹 어플리케이션 서버를 경 유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(4-5) Database server access of a user computer or an internal user computer accessing the database server via the web server / web application server in a database security gateway installed between the web server / web application server and the database server. Extracting data; (4-6) 상기 데이터베이스 보안서버에서 상기 (4-3) 단계를 통해 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, 상기 (4-4) 단계를 통해 상기 쿼리 스니핑 모듈에서 추출한 쿼리 정보, 상기 (4-5) 단계를 통해 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(4-6) Web server access data extracted from the web access information collection module through step (4-3) in the database security server, query information extracted from the query sniffing module through step (4-4), Performing data matching of the database server access data extracted by the database security gateway through step (4-5), and performing access control of the user computer or the internal user computer to the database server based on the data matching result step; And (4-7) 상기 데이터베이스 보안서버에서 상기 (4-3) 단계 및 (4-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, 상기 (4-6) 단계에서 수행하는 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(4-7) Web server access data and query information extracted in steps (4-3) and (4-4) in the database security server, and the web server / performed in step (4-6). And continuously storing and managing access control results to the database server via a web application server, and generating a report. 제 17 항에 있어서, 상기 (4-3) 단계의 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료는,18. The method of claim 17, wherein the web server access data extracted from the web access information collection module of step (4-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method in a web-based three-tier environment, characterized in that the connection time, access IP address, calling web page, query. 제 17 항에 있어서, 상기 (4-4) 단계의 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보는,The method of claim 17, wherein the query information extracted by the query sniffing module of the step (4-4), 접속시간, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method of a web-based 3-tier environment, characterized in that the connection time, query. 제 17 항에 있어서, 상기 (4-5) 단계의 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료는,The method of claim 17, wherein the database server access data extracted from the database security gateway of the step (4-5), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 17 항에 있어서, 상기 (4-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,18. The method of claim 17, wherein the data matching performed by the database security server of step (4-6) is performed. 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.The web server access data extracted from the web access information collection module, the query information extracted from the query sniffing module, and the database server access data extracted from the database security gateway are used to check whether they match using the access time. Database security method of a web-based three-tier environment, characterized in that. 제 17 항에 있어서, 상기 (4-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,The method of claim 17, wherein the access control to the database server performed by the database security server in the step (4-6), 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟 수 이상 접속하는 경우 통제하거나, 상기 (4-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.If the same user accesses a specific table or a specific column more than a certain number of times within a certain period of time, or controls a query or web page not registered in step (4-1) and a table or column to which access is not granted. Database security method in a web-based three-tier environment, characterized in that the control against SQL transformation attack. (5-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하는 단계;(5-1) extracting SQL statements from a web source in a database security server performing a database security service in a web-based 3-tier environment, and storing a SQL character list for each web page; (5-2) 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치된 패킷 스니핑 장치에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(5-2) Connected by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server, and via a web server of the user computer or the internal user computer in an installed packet sniffing device. Checking whether an HTTP connection for accessing one database server is performed; (5-3) 상기 패킷 스니핑 장치 내에 구비된 웹 접속 정보수집 모듈에서 상기 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(5-3) extracts and extracts web server access data of a user computer or an internal user computer that performs an HTTP connection for accessing a database server via the web server in a web access information collection module provided in the packet sniffing device; Transmitting the web server access data to the database security server; (5-4) 상기 웹서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버를 경유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(5-4) extracting database server access data of a user computer or an internal user computer accessing the database server via the web server from a database security gateway installed between the web server and the database server; (5-5) 상기 데이터베이스 보안서버에서 상기 (5-3) 단계를 통해 상기 패킷 스니핑 장치 내에 구비된 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료와 상기 (5-4) 단계를 통해 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(5-5) Web server access data extracted from the web access information collection module provided in the packet sniffing device through step (5-3) in the database security server and the database security through step (5-4). Performing data matching of the database server connection data extracted by the gateway, and performing access control of the user computer or the internal user computer to the database server based on the data matching result; And (5-6) 상기 데이터베이스 보안서버에서 상기 (5-3) 단계 및 상기 (5-4) 단계에서 추출되는 웹서버 접속자료 및 데이터베이스 서버 접속자료와, 상기 (5-5) 단계에서 수행하는 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(5-6) Web server access data and database server access data extracted in steps (5-3) and (5-4) in the database security server, and the step performed in step (5-5) And continuously storing and managing a result of access control to the database server via a web server, and generating a report. 제 23 항에 있어서, 상기 (5-3) 단계의 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료는,24. The method of claim 23, wherein the web server access data extracted from the web access information collection module of step (5-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method for securing a database in a web-based three-tier environment, characterized by connection time, access IP address, calling web page, query execution process ID, and query. 제 23 항에 있어서, 상기 (5-4) 단계의 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료는,The method of claim 23, wherein the database server access data extracted from the database security gateway of the step (5-4), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 23 항에 있어서, 상기 (5-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,24. The method of claim 23, wherein the data matching performed by the database security server of step (5-5) is performed. 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Web-based three-tier environment characterized in that the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway to check whether the matching using the query execution process ID and query. Database security methods. 제 23 항에 있어서, 상기 (5-5) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,The method of claim 23, wherein the access control to the database server performed by the database security server in the step (5-5) is: 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 상기 (5-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.When the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time, or controls a query or web page not registered in step (5-1) and a table or column to which access is not granted, A method for securing a database in a web-based three-tier environment, characterized by controlling against SQL transformation attacks. (6-1) 웹기반 3-티어 환경의 데이터베이스 보안서비스를 수행하는 데이터베이스 보안서버에서 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리 스트를 저장하는 단계;(6-1) extracting SQL statements from a web source in a database security server performing a database security service of a web-based 3-tier environment, and storing a list of SQL characters for each web page; (6-2) 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치된 패킷 스니핑 장치에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되는지를 확인하는 단계;(6-2) A web server / web of the user computer or the internal user computer in a packet sniffing device installed and connected by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server. Confirming whether an HTTP connection for accessing the database server via the application server is performed; (6-3) 상기 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈에서 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속을 수행하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 웹서버 접속자료를 추출하고, 추출된 웹서버 접속자료를 상기 데이터베이스 보안서버로 전송하는 단계;(6-3) extracting web server access data of a user computer or an internal user computer which performs HTTP access for accessing a database server via a web server / web application server in the web access information collection module in the packet sniffing device; Transmitting the extracted web server access data to the database security server; (6-4) 웹 어플리케이션 서버에 설치된 쿼리 스니핑 모듈에서 상기 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 쿼리 정보를 추출하고, 추출된 쿼리 정보를 상기 데이터베이스 보안서버로 전송하는 단계;(6-4) extracting query information of a user computer or an internal user computer for accessing the database server from a query sniffing module installed in a web application server, and transmitting the extracted query information to the database security server; (6-5) 상기 웹서버/웹 어플리케이션 서버와 상기 데이터베이스 서버 사이에 설치된 데이터베이스 보안 게이트웨이에서 상기 웹서버/웹 어플리케이션 서버를 경유하여 상기 데이터베이스 서버에 접근하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 데이터베이스 서버 접속자료를 추출하는 단계;(6-5) Database server access data of a user computer or an internal user computer accessing the database server via the web server / web application server in a database security gateway installed between the web server / web application server and the database server. Extracting; (6-6) 상기 데이터베이스 보안서버에서 상기 (6-3) 단계를 통해 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료, 상기 (6-4) 단계를 통해 상기 쿼리 스니핑 모듈에서 추출한 쿼리 정보, 상기 (6-5) 단계를 통해 상기 데이터베이스 보 안 게이트웨이에서 추출한 데이터베이스 서버 접속자료의 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 수행하는 단계; 및(6-6) web server access data extracted from the web access information collection module through step (6-3) in the database security server, query information extracted from the query sniffing module through step (6-4), In step (6-5), data matching of the database server access data extracted by the database security gateway is performed, and access control of the user computer or the internal user computer to the database server is performed based on the data matching result. Making; And (6-7) 상기 데이터베이스 보안서버에서 상기 (6-3) 단계 및 (6-4) 단계에서 추출되는 웹서버 접속자료 및 쿼리 정보와, 상기 (6-6) 단계에서 수행하는 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 지속적으로 저장, 관리하고, 보고서를 생성하는 단계를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.(6-7) Web server access data and query information extracted in steps (6-3) and (6-4) in the database security server, and the web server / performed in step (6-6). And continuously storing and managing access control results to the database server via a web application server, and generating a report. 제 28 항에 있어서, 상기 (6-3) 단계의 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료는,29. The method of claim 28, wherein the web server access data extracted from the web access information collection module of step (6-3), 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method in a web-based three-tier environment, characterized in that the connection time, access IP address, calling web page, query. 제 28 항에 있어서, 상기 (6-4) 단계의 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보는,29. The method of claim 28, wherein the query information extracted by the query sniffing module of the step (6-4) is 접속시간, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.Database security method of a web-based 3-tier environment, characterized in that the connection time, query. 제 28 항에 있어서, 상기 (6-5) 단계의 상기 데이터베이스 보안 게이트웨이 에서 추출하는 데이터베이스 서버 접속자료는,29. The method of claim 28, wherein the database server access data extracted from the database security gateway of the step (6-5), 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리인 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.A method of securing a database in a web-based three-tier environment, characterized in that the connection time, access server IP address, user ID, application name, query execution process ID, and query. 제 28 항에 있어서, 상기 (6-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 데이터 매칭은,29. The method of claim 28, wherein the data matching performed by the database security server of step (6-6) is performed. 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.The web server access data extracted from the web access information collection module, the query information extracted from the query sniffing module, and the database server access data extracted from the database security gateway are used to check whether they match using the access time. Database security method of a web-based three-tier environment, characterized in that. 제 28 항에 있어서, 상기 (6-6) 단계의 상기 데이터베이스 보안서버에서 수행하는 상기 데이터베이스 서버로의 접속 통제는,29. The method of claim 28, wherein the access control to the database server performed by the database security server in the step (6-6) is: 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하는 경우 통제하거나, 상기 (6-1) 단계에서 등록되지 않은 쿼리 또는 웹 페이지와, 접근 권한이 없는 테이블 또는 컬럼에 대하여 통제하거나, SQL 변형 공격에 대하여 통제하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안방법.When the same user accesses a specific table or a specific column more than a predetermined number of times within a predetermined time, or controls a query or web page not registered in step (6-1) and a table or column to which access rights are not granted, A method for securing a database in a web-based three-tier environment, characterized by controlling against SQL transformation attacks. 제 1 항 내지 제 33 항의 방법 중 어느 한 항의 방법을 컴퓨터로 실행시킬 수 있는 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a computer program capable of executing the method of any one of claims 1 to 33. 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹서버;When the HTTP connection for accessing the database server from the user computer or the internal user computer connected through the network network is performed through the web server, the access time, the access IP address, the calling web page, and the query are executed. A web server equipped with a web access information collection module for extracting web server access data including a process ID and a query; 상기 웹서버와 데이터베이스 사이에 설치되며, 상기 웹서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;Installed between the web server and the database, including the access time, access server IP address, user ID, application name, query execution process ID, query of the user computer or internal user computer accessing the database via the web server. A database security gateway for extracting database connection data; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server which stores various digital contents and provides predetermined data requested by the user computer or an internal user computer connected via the web server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 웹서버 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이 터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와 상기 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료 및 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료와, 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.Extract SQL statement from web source, save SQL character list per web page, access time received from web access information collection module in web server, access IP address, calling web page, query execution process ID, query Stores and manages the web server access data including the web server access data including the access time, access server IP address, user ID, application name, query execution process ID, and database server access data including the query. Perform a data matching to check whether the data is matched using a query execution process ID and a query among the access data and the database server access data, and based on the data matching result, the database security gateway at the database of the user computer or the internal user computer Connection to server And generating a report based on the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway, and the result of access control to the database server via the web server. Database security device in a web-based three-tier environment, characterized in that it comprises a database security server. 제 35 항에 있어서, 상기 데이터베이스 보안서버는,The method of claim 35, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server. 웹서버 내에 설치되어 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨 터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈과, 웹 어플리케이션 서버 내에 설치되어 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버;When an HTTP connection for accessing a database server via a web server / web application server is performed from a user computer or an internal user computer installed in a web server through a network communication network, the access time of the corresponding user computer or internal user computer, Web access information gathering module that extracts web server access data including access IP address, calling web page, query, and query including access time and query of user computer or internal user computer installed in web application server to access database server. A web server / web application server equipped with a query sniffing module for extracting information; 상기 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;An access time, access server IP address, user ID, application name of the user computer or internal user computer installed between the web server / web application server and the database and accessing the database via the web server / web application server; A database security gateway that extracts a database execution data including a query execution process ID and a query; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server storing various digital contents and providing predetermined data requested by the user computer or an internal user computer connected via the web server / web application server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 웹서버 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 상기 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와, 상기 쿼리 정보와, 상기 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.Web server access data including extracting SQL statements from a web source, storing a list of SQL characters per web page, and access time, access IP address, calling web page, and query received from the web access information collection module in the web server. And connection information received from the query sniffing module in the web application server, query information including a query, connection time received from the database security gateway, access server IP address, user ID, application name, query execution process ID, and query. Store and manage the database server access data including, and perform data matching to check whether the web server access data, the query information, the access time and the query among the database server access data and whether the match, and data matching Database security gateway based on performance Control access control of the user computer or the internal user computer to the database server, web server access data extracted from the web access information collection module, query information extracted from the query sniffing module, and the database security gateway. And a database security server for generating a report based on a database server connection data extracted from the database and a result of access control to the database server via the web server / web application server. Database security device. 제 37 항에 있어서, 상기 데이터베이스 보안서버는,The method of claim 37, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server / web application server. 웹서버 전단에 설치되고, 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹 접속 감시 게이트웨이;It is installed in front of the web server, and when the HTTP connection for accessing the database server via the web server is performed from the user computer or the internal user computer connected through the network communication network, the access time and the IP address of the user computer or the internal user computer. A web access monitoring gateway having a web access information collection module for extracting web server access data including a calling web page, a query execution process ID, and a query; 상기 웹서버와 데이터베이스 사이에 설치되며, 상기 웹서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;Installed between the web server and the database, including access time, access server IP address, user ID, application name, query execution process ID, query of the user computer or internal user computer accessing the database via the web server. A database security gateway for extracting database connection data; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server which stores various digital contents and provides predetermined data requested by the user computer or an internal user computer connected via the web server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 웹 접속 감시 게이트웨이 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와 상기 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수 집 모듈에서 추출한 웹서버 접속자료 및 상기 데이터베이스 보안 게이트웨이에서 추출한 데이터베이스 서버 접속자료와, 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.Extract SQL statement from web source, save SQL character list per web page, access time received from web access information collection module in web access monitoring gateway, access IP address, calling web page, query execution process ID, Stores and manages web server access data including queries, access time received from the database security gateway, access server IP address, user ID, application name, query execution process ID, and database server access data including queries. Perform a data matching to check whether the data is matched using a query execution process ID and a query among the access data and the database server access data, and based on the data matching result, the database security gateway at the database of the user computer or the internal user computer Controlling access control to the server, and controlling web server access data extracted from the web access information collection module and database server access data extracted from the database security gateway, and access control results to the database server via the web server. Database security device in a web-based three-tier environment, characterized in that it comprises a database security server for generating a report based on. 제 39 항에 있어서, 상기 데이터베이스 보안서버는,40. The method of claim 39, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server. 웹서버/웹 어플리케이션 서버 전단에 설치되고, 네트워크 통신망을 통해 접속한 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 웹 접속 감시 게이트웨이;If the HTTP server for accessing the database server via the web server / web application server is established from the user computer connected to the web server / web application server or the user computer connected through the network, the user computer or internal user. A web access monitoring gateway having a web access information collecting module for extracting web server access data including access time of the computer, access IP address, calling web page, query execution process ID, and query; 웹 어플리케이션 서버 내에 설치되어 상기 웹 접속 감시 게이트웨이를 통해 데이터베이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시 간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버;A web server / web application server installed in a web application server and including a query sniffing module configured to extract query information including a query time and a connection time of a user computer or an internal user computer for accessing a database server through the web access monitoring gateway; 상기 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;An access time, access server IP address, user ID, application name of the user computer or internal user computer installed between the web server / web application server and the database and accessing the database via the web server / web application server; A database security gateway that extracts a database execution data including a query execution process ID and a query; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server storing various digital contents and providing predetermined data requested by the user computer or an internal user computer connected via the web server / web application server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 웹 접속 감시 게이트웨이 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 상기 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와, 상기 쿼리 정보와, 상기 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.A web server that extracts SQL statements from a web source, stores a list of SQL characters for each web page, and includes access time, access IP address, calling web page, and query received from the web access information collection module in the web access monitoring gateway. Access data, access information received from the query sniffing module in the web application server, query information including a query, access time received from the database security gateway, access server IP address, user ID, application name, query execution process ID Storing and managing database server access data including queries, performing data matching to check whether the web server access data, the query information, access time and query among the database server access data are matched, and The database based on the result of data matching Controlling access control of the user computer or internal user computer from the security gateway to the database server, web server access data extracted from the web access information collection module, query information extracted from the query sniffing module, and the database; Web-based three-tier, comprising a database security server for generating a report based on the database server connection data extracted from the security gateway, and the result of the access control to the database server via the web server / web application server Database security for your environment. 제 41 항에 있어서, 상기 데이터베이스 보안서버는,The method of claim 41, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server / web application server. 웹서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치되고, 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 상기 네트워크 스위치로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 패킷 스니핑 장치;HTTP connection for a database server via a web server from the user computer or an internal user computer, connected and installed by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server. When the connection is established, the web connection extracts the web server connection data including the connection time, the connection IP address, the calling web page, the query execution process ID, and the query of the user computer or the internal user computer through the mirrored packet from the network switch. A packet sniffing device having an information collecting module; 상기 웹서버와 데이터베이스 사이에 설치되며, 상기 웹서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;Installed between the web server and the database, including access time, access server IP address, user ID, application name, query execution process ID, query of the user computer or internal user computer accessing the database via the web server. A database security gateway for extracting database connection data; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server which stores various digital contents and provides predetermined data requested by the user computer or an internal user computer connected via the web server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료와 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와 상기 데이터베이스 서버 접속자료 중 쿼리 실행 프로세스 ID와 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수집 모듈에서 추출한 웹서버 접속자료 및 상기 데이터베이스 보안 게이트웨이에서 추출한 데 이터베이스 서버 접속자료와, 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.Extract SQL statement in web source, save SQL character list per web page, access time received from web access information collection module in packet sniffing device, access IP address, calling web page, query execution process ID, query Web server access data, including the access time and access time received from the database security gateway, access server IP address, user ID, application name, query execution process ID, database server access data including the query is stored, managed, the web server access Perform a data matching to confirm whether the data is matched using a query execution process ID and a query among data and the database server access data, and based on the data matching result, the database server of the user computer or the internal user computer at the database security gateway. in Controlling access control of the server, based on the web server access data extracted from the web access information collection module and the database server access data extracted from the database security gateway, and the result of access control to the database server via the web server. Database security device in a web-based three-tier environment, characterized in that it comprises a database security server for generating a report. 제 43 항에 있어서, 상기 데이터베이스 보안서버는,The method of claim 43, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server. 웹서버/웹 어플리케이션 서버로 HTTP 접속을 요청하는 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 스위칭을 수행하는 네트워크 스위치에 탭 장비에 의해 연결, 설치되고, 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터로부터 웹서버/웹 어플리케이션 서버를 경유한 데이터베이스 서버 접속을 위한 HTTP 접속이 수행되면, 상기 네트워크 스위치로부터 미러링한 패킷을 통해 해당 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리 실행 프로세스 ID, 쿼리를 포함한 웹서버 접속자료를 추출하는 웹 접속 정보수집 모듈이 구비된 패킷 스니핑 장치;Connected and installed by a tap device to a network switch that performs switching of a user computer or an internal user computer requesting an HTTP connection to a web server / web application server, and connects the web server / web application server from the user computer or the internal user computer. When the HTTP connection for accessing the database server is performed, the web including the access time, the access IP address, the calling web page, the query execution process ID, and the query of the user computer or the internal user computer through the packet mirrored from the network switch. A packet sniffing device having a web access information collecting module for extracting server access data; 웹 어플리케이션 서버 내에 설치되어 상기 네트워크 스위치를 통해 데이터베 이스 서버 접속을 위한 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 쿼리를 포함한 쿼리 정보를 추출하는 쿼리 스니핑 모듈이 구비된 웹서버/웹 어플리케이션 서버;A web server / web application server installed in a web application server and having a query sniffing module configured to extract query information including a connection time and a query of a user computer or an internal user computer for accessing a database server through the network switch; 상기 웹서버/웹 어플리케이션 서버와 데이터베이스 사이에 설치되며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 데이터베이스에 접근하는 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 접속자료를 추출하는 데이터베이스 보안 게이트웨이;An access time, access server IP address, user ID, application name of the user computer or internal user computer installed between the web server / web application server and the database and accessing the database via the web server / web application server; A database security gateway that extracts a database execution data including a query execution process ID and a query; 각종 디지털 컨텐츠를 저장하고 있으며, 상기 웹서버/웹 어플리케이션 서버를 경유하여 접속된 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터에서 요청하는 소정의 데이터를 제공하는 데이터베이스 서버; 및A database server storing various digital contents and providing predetermined data requested by the user computer or an internal user computer connected via the web server / web application server; And 웹 소스 내에서 SQL 문장을 추출하고, 웹 페이지별 SQL 문자 리스트를 저장하고, 상기 패킷 스니핑 장치 내의 웹 접속 정보수집 모듈로부터 전송받은 접속시간, 접속 IP 어드레스, 호출 웹페이지, 쿼리를 포함한 웹서버 접속자료와, 상기 웹 어플리케이션 서버 내의 쿼리 스니핑 모듈로부터 전송받은 접속시간, 쿼리를 포함한 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이로부터 전송받은 접속시간, 접속 서버 IP 어드레스, 사용자 ID, 어플리케이션명, 쿼리 실행 프로세스 ID, 쿼리를 포함한 데이터베이스 서버 접속자료를 저장, 관리하고, 상기 웹서버 접속자료와, 상기 쿼리 정보와, 상기 데이터베이스 서버 접속자료 중 접속시간과 쿼리를 이용하여 일치 여부를 확인하는 데이터 매칭을 수행하고, 데이터 매칭 수행 결과를 토대 로 상기 데이터베이스 보안 게이트웨이에서 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 데이터베이스 서버로의 접속 통제를 제어하며, 상기 웹 접속 정보수집 모듈에서 추출하는 웹서버 접속자료와, 상기 쿼리 스니핑 모듈에서 추출하는 쿼리 정보와, 상기 데이터베이스 보안 게이트웨이에서 추출하는 데이터베이스 서버 접속자료와, 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제 결과를 토대로 보고서를 생성하는 데이터베이스 보안서버를 포함하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.Extract the SQL statement from the web source, save the SQL character list for each web page, and access the web server including the access time, access IP address, calling web page, and query received from the web access information collection module in the packet sniffing device. Data, access time received from the query sniffing module in the web application server, query information including a query, access time received from the database security gateway, access server IP address, user ID, application name, query execution process ID, Store and manage database server access data including a query, perform data matching to check whether the web server access data, the query information, access time and query among the database server access data are matched, and the data Database security based on matching performance Control access control of the user computer or internal user computer from the gateway to the database server, web server access data extracted from the web access information collection module, query information extracted from the query sniffing module, and the database security Web-based three-tier environment comprising a database security server for generating a report based on the database server access data extracted from the gateway and the result of the access control to the database server via the web server / web application server. Database security device. 제 45 항에 있어서, 상기 데이터베이스 보안서버는,46. The method of claim 45, wherein the database security server, 동일한 사용자가 일정 시간 이내에 특정 테이블 또는 특정 컬럼에 정해진 횟수 이상 접속하거나, 등록되지 않은 쿼리 또는 웹 페이지, 접근 권한이 없는 테이블 또는 컬럼에 접근하거나, SQL 변형 공격에 대하여 상기 사용자 컴퓨터 또는 내부 사용자 컴퓨터의 상기 웹서버/웹 어플리케이션 서버를 경유한 상기 데이터베이스 서버로의 접속 통제를 제어하는 것을 특징으로 하는 웹기반 3-티어 환경의 데이터베이스 보안장치.The same user accesses a specific table or a specific column more than a predetermined number of times, accesses an unregistered query or web page, an unauthorized table or column, or accesses a user or internal user's computer against an SQL transformation attack. And controlling access control to the database server via the web server / web application server.
KR1020070093110A 2007-09-13 2007-09-13 Method for database preservation web-based 3 tier environment and apparatus thereof KR100913190B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070093110A KR100913190B1 (en) 2007-09-13 2007-09-13 Method for database preservation web-based 3 tier environment and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070093110A KR100913190B1 (en) 2007-09-13 2007-09-13 Method for database preservation web-based 3 tier environment and apparatus thereof

Publications (2)

Publication Number Publication Date
KR20090027917A KR20090027917A (en) 2009-03-18
KR100913190B1 true KR100913190B1 (en) 2009-08-20

Family

ID=40695305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070093110A KR100913190B1 (en) 2007-09-13 2007-09-13 Method for database preservation web-based 3 tier environment and apparatus thereof

Country Status (1)

Country Link
KR (1) KR100913190B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102521784B1 (en) * 2021-10-26 2023-04-17 주식회사 신시웨이 Access management apparatus and method for managing database access based on web application server

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102654479B1 (en) * 2021-12-24 2024-04-04 주식회사 아이디알소프트 A system that detects and monitors the risk of tampering with request parameters by generating and executing verification queries through analysis of large amounts of user behavior data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040052569A (en) * 2004-04-03 2004-06-23 주식회사 피앤피시큐어 Method and system for monitoring and securing a database
KR20050008486A (en) * 2003-07-15 2005-01-21 김용규 method of administering access to database
KR20050073349A (en) * 2004-01-09 2005-07-13 주식회사 바넷정보기술 System for controlling database access based on 3-tier structure and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050008486A (en) * 2003-07-15 2005-01-21 김용규 method of administering access to database
KR20050073349A (en) * 2004-01-09 2005-07-13 주식회사 바넷정보기술 System for controlling database access based on 3-tier structure and method thereof
KR20040052569A (en) * 2004-04-03 2004-06-23 주식회사 피앤피시큐어 Method and system for monitoring and securing a database

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102521784B1 (en) * 2021-10-26 2023-04-17 주식회사 신시웨이 Access management apparatus and method for managing database access based on web application server

Also Published As

Publication number Publication date
KR20090027917A (en) 2009-03-18

Similar Documents

Publication Publication Date Title
US7640235B2 (en) System and method for correlating between HTTP requests and SQL queries
US8132239B2 (en) System and method for validating requests in an identity metasystem
US10142291B2 (en) System for providing DNS-based policies for devices
US8996669B2 (en) Internet improvement platform with learning module
EP1379045B1 (en) Arrangement and method for protecting end user data
CN102594934B (en) Method and device for identifying hijacked website
US7917759B2 (en) Identifying an application user as a source of database activity
CN109690547A (en) For detecting the system and method cheated online
KR100745044B1 (en) Apparatus and method for protecting access of phishing site
US9992234B2 (en) System for providing DNS-based control of individual devices
WO2005069823A2 (en) Centralized transactional security audit for enterprise systems
AU2012217565A1 (en) System and methods for identifying compromised personally identifiable information on the internet
CN109274632A (en) A kind of recognition methods of website and device
US11841910B2 (en) Token-based authentication for a proxy web scraping service
CN103841123A (en) Number information obtaining method and obtaining system, and cloud number information system
CN110430188A (en) A kind of quick url filtering method and device
US9721014B2 (en) System and method of processing database queries
Takahashi et al. Web of cybersecurity: Linking, locating, and discovering structured cybersecurity information
KR100913190B1 (en) Method for database preservation web-based 3 tier environment and apparatus thereof
EP4227828A1 (en) Web scraping through use of proxies, and applications thereof
KR100655492B1 (en) Web server vulnerability detection system and method of using search engine
Zheng et al. A framework for protecting personal information and privacy
KR102070607B1 (en) Database security device based on user identification via web application server
KR101028037B1 (en) A system and a method for compulsory redirecting user's connection address by watching the user's connection address
US20080033961A1 (en) Electronic Document Browsing

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee