KR101650475B1 - Security device using transaction information obtained from web server - Google Patents

Security device using transaction information obtained from web server Download PDF

Info

Publication number
KR101650475B1
KR101650475B1 KR1020160040326A KR20160040326A KR101650475B1 KR 101650475 B1 KR101650475 B1 KR 101650475B1 KR 1020160040326 A KR1020160040326 A KR 1020160040326A KR 20160040326 A KR20160040326 A KR 20160040326A KR 101650475 B1 KR101650475 B1 KR 101650475B1
Authority
KR
South Korea
Prior art keywords
information
user
web
session
transaction
Prior art date
Application number
KR1020160040326A
Other languages
Korean (ko)
Inventor
이석우
Original Assignee
주식회사 엘리바이저
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엘리바이저 filed Critical 주식회사 엘리바이저
Priority to KR1020160040326A priority Critical patent/KR101650475B1/en
Application granted granted Critical
Publication of KR101650475B1 publication Critical patent/KR101650475B1/en
Priority to PCT/KR2016/013134 priority patent/WO2017171188A1/en
Priority to US15/766,005 priority patent/US10728267B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/28
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

The present invention provides a security device using transaction information obtained from a web server, comprising: a web plug-in agent and a management server. The web plug-in agent is installed on a web server in a plug-in method to be operated and collect transaction information on a user, which is decoded in a web server, from a memory of the web server. The management server receives transaction information from the agent of the web plug-in, analyzes whether it is normal transaction information or abnormal transaction information, generates detection information in accordance with an analysis result, and transmits a command to block abnormal transactions to the web plug-in agent. The transaction information may comprise at least one of hypertext transfer protocol (HTTP) header information included in a packet, uniform resource identifier (URI) transaction information and web application server information. According to the present invention, an attack encoded by SSL/TSL through analysis of the decoded transaction information can be detected, and it is possible to respond to a web hacking attack in a session step after normal log-in.

Description

웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치{SECURITY DEVICE USING TRANSACTION INFORMATION OBTAINED FROM WEB SERVER}TECHNICAL FIELD [0001] The present invention relates to a security apparatus using transaction information collected from a web server,

본 발명의 실시예들은 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 관한 것으로서, 더욱 상세하게는 웹 서버로부터 수집된 트랜잭션 정보를 이용하여 논리적인 보안관제를 수행할 수 있는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 관한 것이다. Embodiments of the present invention relate to a security apparatus using transaction information collected from a web server, and more particularly, to a security apparatus using transaction information collected from a web server, which can perform a logical security control using transaction information collected from a web server Information security device.

기존 보안 관제 체계(IDS, IPS, ESM, FW, WAF 등)은 TCP/IP 패킷(Packet)을 스니핑(sniffing)하여 L4 혹은 L7 레이어까지 패킷을 파싱하여 침입탑지 차단등의 보안을 수행한다. 그러나 상기와 같은 방식은 패킷에 의존적이기 때문에, SSL/TSL로 암호화된 공격에 대한 탐지가 불가능하고, 정상 로그인 후 세션 단계의 웹 해킹 공격에 대한 대응이 불가능한 문제점이 있다.Existing security control systems (IDS, IPS, ESM, FW, WAF, etc.) sniffing TCP / IP packets and parse packets to L4 or L7 layer to perform security such as intrusion blocking. However, since the above method is dependent on a packet, it is impossible to detect an attack encrypted with SSL / TSL, and there is a problem that it is impossible to respond to a web hacking attack at a session level after a normal login.

도 1에서 볼 수 있는 바와 같이, 기존의 침입 방지 시스템(Intrusion Prevention System, IPS) 및 침입 탐지 시스템(Intrusion Detection System, IDS)은 네트워크로 전송되는 패킷의 내용(헤더 + 데이터)을 분석하여 탐지 및 방어를 수행하는 물리적인 보안관제 방법이었다. 그러나, 보안을 위해 SSL/TSL을 지원하는 프로토콜에서는 SSL/TSL이 암호화된 구간에서 기능하므로, i)SSL/TSL로 암호화된 공격에 대한 탐지 불가 분석 불가, ii)패킷 팔로우(Follow) 분석 불가, iii)정상 인증 후의 공격 대응 불가 iv)암호화로 인한 비정상 트랜잭션 식별의 한계 등의 문제가 있었다.1, an existing Intrusion Prevention System (IPS) and an Intrusion Detection System (IDS) analyze the content (header + data) of a packet transmitted to the network, It was a physical security control method of performing defenses. However, since a protocol supporting SSL / TSL for security functions in the encrypted section of SSL / TSL, i) can not detect undetectable attacks against SSL / TSL encrypted attacks, ii) can not follow up packets, iii) Can not respond to attack after normal authentication iv) There is a problem such as limitation of identification of abnormal transaction due to encryption.

상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 SSL/TSL로 암호화된 공격에 대한 탐지가 가능하고, 정상 인증 후 세션 단계의 웹 해킹 공격에 대응 가능한 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치를 제안하고자 한다.In order to solve the problems of the prior art as described above, the present invention provides a method and system for detecting an attack encrypted with an SSL / TSL and acquiring transaction information collected from a web server capable of responding to a web- We propose a security device.

본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.Other objects of the invention will be apparent to those skilled in the art from the following examples.

상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 있어서, 상기 웹 서버에 플러그인 방식으로 설치되어 동작하며, 웹 서버 서버에서 복호화된 사용자의 트랜잭션 정보를 웹 서버의 메모리에서 수집하는 WEB 플러그인 에이전트; 및 상기 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단 명령을 상기 WEB 플러그인 에이전트로 전송하는 관리 서버를 포함하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.In order to achieve the above object, according to a preferred embodiment of the present invention, there is provided a security apparatus using transaction information collected from a web server, the security apparatus being installed in a plug-in manner to the web server, A WEB plug-in agent for collecting transaction information of the web server from the memory of the web server; And receiving the transaction information from the WEB plug-in agent, analyzing whether it is normal transaction information or abnormal transaction information, generating detection information according to the analysis result, and transmitting a blocking command for the abnormal transaction to the WEB plug-in agent A security device using transaction information collected from a web server including a management server.

상기 WEB 플러그인 에이전트는 사용자의 웹 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청 시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 더 포함할 수 있다.The WEB plug-in agent searches for a unique session ID that does not change in the persistent cookie when requesting a service to the web server of the user, and when there is no unique session ID, generates a unique session ID for the user, And a unique session ID management module for setting the generated unique session ID in the persistent cookie so that a user can be distinguished by a unique session ID upon a subsequent service request.

상기 WEB 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accetpt-Language, Cookie, 기타 Header 정보, Attribute 정보등을 수집하는 HTTP 헤더 정보 수집모듈; 상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈; 웹 서버 정보 수집모듈; 및 상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 수집하는 URI 정보 수집모듈 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함할 수 있다.The WEB plug-in agent analyzes the HTTP header included in the transaction information and analyzes the HTTP header included in the transaction information to generate an HTTP protocol including a HTTP method, a URI, a Query String, an HTTP protocol version, a Host, a Connection, Accept, An HTTP header information collection module for collecting other header information, attribute information, and the like; A web session ID collection module for collecting a user session ID and the unique session ID from the transaction information; Web server information collection module; And a URI (Uniform Resource Identifier) transaction information domain and access port information, a connection URI, a call time, a total response time, a response time per section, a CPU resource usage, a processing result, an AP error, and Query String information included in the transaction information And an information collection module including at least one collection module of the URI information collection modules to collect.

상기 관리 서버는, 최초 트랜잭션 정보가 요청된 후 상기 사용자 세션 ID 및 상기 고유세션 ID가 생성된 이후 트랜잭션 정보가 재 요청될 시, 상기 트랜잭션 정보에 상기 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지하는 제1 탐지, 상기 트랜잭션 정보가 재 요청될 시 상기 사용자 세션 ID만 유지되고, 상기 고유세션 ID가 유지되지 않는 경우 사용자의 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지하는 제2 탐지, 상기 고유 세션 ID와 상기 사용자 ID의 매핑을 통한 제3 탐지 중 적어도 하나의 탐지를 수행하는 세션 ID 기반 탐지 모듈을 포함할 수 있다.When the transaction information is requested again after the original session ID and the unique session ID are generated after the initial transaction information is requested, when the user session ID and the unique session ID are not retained in the transaction information A DDoS attack or a web crawler; when the transaction information is requested again, only the user session ID is maintained; if the unique session ID is not maintained, the user's web client is operated through a hacking program Based detection module that performs at least one of detection of a first detection through a mapping of the unique session ID and the user ID, and a third detection through a mapping of the unique session ID and the user ID.

상기 세션 ID 기반 탐지 모듈은, 상기 고유세션 ID와 사용자 ID의 매핑을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지 또는 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지할 수 있다.The session ID-based detection module detects that a plurality of users access the same terminal through the mapping of the unique session ID and the user ID, detects that the same user accesses from a plurality of terminals, Detecting an attack or detecting an attack by modifying IP in one terminal.

상기 관리 서버는, 웹 클라이언트의 종류 및 버전 정보가 담겨있는 상기 User-agent 정보를 식별하여, 상기 User-agent에 특정 문자열 존재 유무 또는 블랙 리스트 매핑을 통해 비정상 트랜잭션으로 탐지하는 제1 탐지; 상기 HTTP Method 중 허용되지 않는 Method가 포함된 경우 비정상 트랜잭션으로 탐지하는 제2 탐지; 상기 HTTP 헤더에 Proxy-connection 문자열이 존재 또는 상기 User-Agent에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 비정상 트랜잭션으로 탐지하는 제3 탐지; 및 상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행하는 제 4 탐지 중 적어도 하나의 탐지를 포함하는 HTTP 헤더 정보 기반 탐지모듈을 포함할 수 있다.Wherein the management server comprises: first detection means for identifying the User-agent information including the type and version information of the Web client and detecting the existence of a specific character string or black list mapping in the User-agent as an abnormal transaction; A second detection for detecting an unusual transaction when an unacceptable Method among the HTTP Methods is included; Detecting a presence of a Proxy-connection string in the HTTP header or an abnormal transaction when a character string that can identify the proxy server exists in the User-Agent; And a fourth detection to perform PCRE detection on the HTTP header information. ≪ Desc / Clms Page number 11 >

상기 관리서버는, 동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함할 수 있다.Wherein the management server comprises: a statistical data base for detecting an excessive call detection for each user, a specific URI repeated call detection for each user, a ranking rising search based on a call ranking based on each URI, and an abnormal URI call flow, Detection module.

상기 관리 서버는, 상기 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간 별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행하는 세션 ID 기반 통계 분석모듈; 상기 HTTP 헤더 정보를 이용한 호출 브라우저 별 통계 분석을 수행하는 HTTP 헤더 정보 기반 통계 분석모듈; 및 상기 URI 성능정보를 이용한 상기 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석하는 URI 성능정보 기반 통계 분석모듈을 포함할 수 있다.The management server includes a session ID-based statistical analysis module for providing transaction analysis continuity through the unique session ID, accurate time-based, daily visitor counting, transaction distribution by unique session ID, and statistical analysis; An HTTP header information based statistical analysis module for performing statistical analysis for each call browser using the HTTP header information; And a URI performance information based statistical analysis module for analyzing the various statistical indices for each domain using the URI performance information and the statistical information for each URI.

상기 관리서버는, User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등에 대한 차단 정책을 관리 하는 차단 정책 관리모듈; 영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어등의 차단 정책을 제어하는 차단 정책 제어모듈;을 포함하는 차단제어모듈을 더 포함하며, 상기 차단제어모듈은 통신 모듈을 통해 상기 WEB 플러그인 에이전트로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 상기 WEB 플러그인 에이전트로 전송할 수 있다.The management server includes a blocking policy management module for managing a blocking policy for User-Agent black list management, blocking method management, blocking session ID management, blocking user ID management, blocking user IP management, and the like. And a blocking policy control module for controlling a blocking policy such as a permanent blocking control, a time setting blocking control, an automatic blocking control, a manual blocking control, and the like, The blocking policy may be transmitted to the plug-in agent, and a blocking command may be transmitted to the WEB plug-in agent when an abnormal transaction is detected.

상기 WEB 플러그인 에이전트는, 상기 차단제어모듈로부터 차단 명령를 수신하는 경우 차단 명령에 해당하는 트랜잭션에 대한 차단 기능을 수행하는 비정상 트랜잭션 관리모듈을 더 포함할 수 있다.The WEB plug-in agent may further include an abnormal transaction management module that performs a blocking function for a transaction corresponding to a blocking command when receiving a blocking command from the blocking control module.

본 발명에 따르면, 복호화된 트랜잭션 정보의 분석을 통해 SSL/TSL로 암호화된 공격에 대한 탐지가 가능하며, 정상 로그인 후 세션 단계의 웹 해킹 공격 대응이 가능하다.According to the present invention, it is possible to detect attacks encrypted with SSL / TSL through analysis of decrypted transaction information, and to respond to a web hacking attack at the session level after normal login.

또한, 본 발명에 따르면, 웹 서버 메모리내의 복호화된 각종 정보를 수집할 수 있으므로, 다양한 형태의 통계 분석을 수행할 수 있는 이점이 있다.In addition, according to the present invention, it is possible to collect various kinds of decoded information in the web server memory, and thus it is possible to perform various types of statistical analysis.

도 1은 종래의 보안관제 시스템의 일례를 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 보안관제 시스템의 일례를 도시한 도면이다.
도 3 및 도 4은 발명의 일 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 WEB 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 사용자 세션 ID를 관리하는 방법의 일례를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 사용자 식별을 하는 경우의 일례를 설명하기 위해 도시된 도면이다.
도 8은 본 발명의 일 실시예에 따른 고유세션 ID를 부여하는 과정의 일례를 도시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 사용자 ID를 수집하는 방법의 일례를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 관리 서버의 상세한 구성을 도시한 블록도이다.
도 11은 본 발명의 일 실시예에 따른 고유세션 ID와 사용자 ID 매핑 탐지를 설명하기 위해 도시한 도면이다.
도 12 내지 도 14는 본 발명의 일 실시예에 따른 HTTP 헤더 정보 기반으로 탐지를 수행하는 일례를 도시한 도면이다.
도 15는 본 발명의 일 실시예에 따른 고유세션 ID 기반의 사용자 식별을 이용한 통계 데이터 기반 탐지 방법의 일례를 도시한 도면이다.
1 is a diagram showing an example of a conventional security control system.
2 is a diagram illustrating an example of a security control system according to an embodiment of the present invention.
FIG. 3 and FIG. 4 are views showing an example of a security control system including a security device according to an embodiment of the present invention.
5 is a block diagram showing a detailed configuration of a WEB plug-in agent according to an embodiment of the present invention.
6 is a diagram illustrating an example of a method for managing a user session ID according to an embodiment of the present invention.
7 is a view for explaining an example of user identification according to an embodiment of the present invention.
FIG. 8 is a diagram illustrating an example of a process of assigning a unique session ID according to an embodiment of the present invention.
9 is a diagram illustrating an example of a method of collecting a user ID according to an embodiment of the present invention.
10 is a block diagram showing a detailed configuration of a management server according to an embodiment of the present invention.
FIG. 11 is a diagram illustrating a unique session ID and user ID mapping detection according to an exemplary embodiment of the present invention. Referring to FIG.
12 to 14 illustrate an example of performing detection based on HTTP header information according to an embodiment of the present invention.
15 is a diagram illustrating an example of a statistical data-based detection method using unique session ID-based user identification according to an embodiment of the present invention.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 이하의 설명에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한, 도면에서 본 발명과 관계없는 부분은 본 발명의 설명을 명확하게 하기 위하여 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments described below, but may be embodied in various forms. In the following description, it is assumed that a part is connected to another part, But also includes a case in which other elements are electrically connected to each other in the middle thereof. In the drawings, parts not relating to the present invention are omitted for clarity of description, and like parts are denoted by the same reference numerals throughout the specification.

이하, 첨부된 도면들을 참고하여 본 발명에 대해 설명하도록 한다.Hereinafter, the present invention will be described with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 보안관제 시스템의 일례를 도시한 도면이다 2 is a diagram illustrating an example of a security control system according to an embodiment of the present invention

기존 보안 관제 체계 IPS/IDS(10), WAF(20)는 TCP/IP 패킷(Packet)을 스니핑(sniffing)하여 L4 혹은 L7 레이어까지 패킷을 파싱하여 침입탑지 차단등의 보안을 수행한다. 그러나 상기와 같은 방식은 패킷에 의존적이기 때문에, SSL/TSL로 암호화된 공격에 대한 탐지가 불가능하고, 정상 로그인 후 세션 단계의 웹 해킹 공격에 대한 대응이 불가능한 문제점이 있다. 또한 패킷 Follow 분석이 불가능하며, 비정상 트랜잭션 식별의 한계가 있다. Existing security control system The IPS / IDS 10 and the WAF 20 sniff the TCP / IP packet and parse the packet to the L4 or L7 layer to perform security such as intrusion blocking. However, since the above method is dependent on a packet, it is impossible to detect an attack encrypted with SSL / TSL, and there is a problem that it is impossible to respond to a web hacking attack at a session level after a normal login. Also, packet follow analysis is not possible, and there is a limit to abnormal transaction identification.

따라서, 본 발명은 웹 서버(30)에서 복호화된 SSL/TSL로 요청된 사용자의 트랜잭션 정보를 웹 서버(30)의 메모리에서 수집하는 WEB 플러그인 에이전트(50)를 웹 서버(30)에 설치하고, 상기 수집된 트랜잭션 정보를 이용하여 침입탐지 및 차단, 트랜잭션 정보의 통계 분석을 수행함으로써, 암호화된 트랜잭션 데이터에 의한 IPS/IDS(10)의 한계를 극복하는 것을 특징으로 한다.Accordingly, the present invention provides a web server 30 that installs a WEB plug-in agent 50 that collects transaction information of a user requested by the SSL / TSL decoded by the web server 30 in the memory of the web server 30, And performs statistical analysis of intrusion detection and blocking and transaction information using the collected transaction information, thereby overcoming the limitations of the IPS / IDS 10 by encrypted transaction data.

본 발명에 따르면, 암호화된 SSL/TSL 트랜잭션 정보의 분석이 가능하며, 패킷 Follow 분석이 가능해진다. 또한, 웹 서버(30)에서의 정상 인증 후의 공격에 대한 대응이 가능하며, 비정상 트랜잭션의 식별이 가능해진다. 또한, WEB 플러그인 에이전트(50)에서 수집되는 복호화된 다양한 형태의 트랜잭션 정보를 통해 세션 레벨의 탐지가 가능하며 트랜잭션 통계 기반의 탐지가 가능하다.According to the present invention, encrypted SSL / TSL transaction information can be analyzed and packet follow analysis can be performed. Further, it is possible to respond to an attack after the normal authentication in the Web server 30, and it becomes possible to identify the abnormal transaction. Also, it is possible to detect the session level through the decoded various types of transaction information collected by the WEB plug-in agent 50, and it is possible to detect based on transaction statistics.

도 3 및 도 4은 발명의 일 실시예에 따른 보안장치를 포함하는 보안관제 시스템의 일례를 도시한 도면이다.FIG. 3 and FIG. 4 are views showing an example of a security control system including a security device according to an embodiment of the present invention.

도 3 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 보안 장치는 WEB 플러그인 에이전트(50-1~50-n, 이하 50) 및 관리 서버(53)를 포함할 수 있다.3 and 4, the security device according to an embodiment of the present invention may include WEB plug-in agents 50-1 to 50-n (hereinafter, 50) and a management server 53. [

WEB 플러그인 에이전트(50)는 웹 서버(30-1~30-n, 이하 30)에 설치되어 동작하고, 웹 서버(30)의 메모리로부터 실시간으로 웹 서버(30) 에서 복호화된 SSL/TSL로 요청된 사용자의 트랜잭션 정보를 수집한다. 웹 서버(30)로 전송된 SSL/TSL로 암호화된 요청은 사용자가 웹 서버(30)에서의 인증서등을 통한 인증 통과를 통해 복호화될 수 있다.The WEB plug-in agent 50 is installed in the web servers 30-1 to 30-n (hereinafter, referred to as 30), and operates in response to a request from the web server 30 in real time to the SSL / TSL decrypted by the web server 30 And collects transaction information of the user. The SSL / TSL encrypted request sent to the web server 30 may be decrypted by the user through authentication through the certificate or the like at the web server 30.

여기서, WEB 플러그인 에이전트(50)에서 수집되는 트랜잭션 정보는 패킷에 포함된 HTTP 헤더 정보, URI(Uniform Resource Identifie) 트랜잭션 정보, 웹 에플리케이션 서버 정보 중 적어도 하나를 포함할 수 있다.Here, the transaction information collected by the WEB plug-in agent 50 may include at least one of HTTP header information, Uniform Resource Identifier (URI) transaction information, and Web application server information included in the packet.

도 5는 본 발명의 일실시예에 따른 WEB 플러그인 에이전트의 상세한 구성을 도시한 블록도이다.5 is a block diagram showing a detailed configuration of a WEB plug-in agent according to an embodiment of the present invention.

도 5를 참조하면, WEB 플러그인 에이전트(50)는 정보 수집모듈(500), 고유 세선 ID 관리모듈(510), 비정상 트랜잭션 관리모듈(520) 및 통신모듈(530)을 포함할 수 있다.5, the WEB plug-in agent 50 may include an information collection module 500, a unique thin line ID management module 510, an abnormal transaction management module 520, and a communication module 530.

여기서, 정보 수집 모듈(500)은 HTTP 헤더 정보 수집모듈(501), 웹 세션 ID 수집모듈(503), 사용자 ID 정보 수집모듈(505), 웹 서버 정보 수집모듈(509), URI 정보 수집모듈(511), 을 포함할 수 있다.Here, the information collection module 500 includes an HTTP header information collection module 501, a web session ID collection module 503, a user ID information collection module 505, a web server information collection module 509, a URI information collection module 511).

HTTP 헤더 정보 수집모듈(501)은 HTTP 헤더를 분석하여 HTTP 헤더에 포함된 정보를 수집한다.The HTTP header information collection module 501 analyzes the HTTP header to collect information included in the HTTP header.

일례로, HTTP 헤더 정보에서 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referrer, Accept-Encoding, Accept-Language, Cookie, 기타 Header 정보, Attribute 정보 등을 수집할 수 있다.For example, the HTTP header information collects HTTP method, URI, Query String, HTTP Protocol version, Host, Connection, Accept, User-agent, Referrer, Accept-Encoding, Accept-Language, Cookie, can do.

웹 세션 ID 수집모듈(503)은 사용자의 웹 세션 ID, 변하지 않는 고유세션 ID를 수집한다.The web session ID collection module 503 collects the user's web session ID and the unchanging unique session ID.

일반적으로 사용하는 HTTP 프로토콜은 TCP/IP 접속을 유지하지 않기 때문에 세션을 유지하기 위하여 여러 가지 방법이 사용된다. 가장 널리 쓰이는 방법은 보안을 고려하여 민감한 세션 정보는 서버(메모리/파일/DB 등)에 저장하고 해당 정보를 찾을 수 있는 키 값(세션 ID) 쿠키(Cookie)를 이용하여 브라우저 저장하는 방법이다. 웹 서버(30)는 브라우저에서 보내는 세션 ID를 이용하여 사용자(웹 클라이언트)를 구분하며, 로그인 후에 요청되는 URL에 대하여 세션 ID를 통하여 웹 서버(30)에서 로그인 사용자를 식별하게 된다.Because the commonly used HTTP protocol does not maintain a TCP / IP connection, several methods are used to maintain the session. The most widely used method is to store sensitive session information in a server (memory / file / DB, etc.) in consideration of security and store it in a browser using a key value (session ID) cookie for finding the corresponding information. The web server 30 identifies the user (web client) using the session ID sent from the browser, and identifies the login user in the web server 30 through the session ID with respect to the requested URL after login.

도 6을 참조하면, 사용자의 웹 클라이언트(80)는 하드 디스크(81) 또는 웹 클라이언트 메모리(82)를 포함할 수 있다. 사용자는 웹 클라이언트(80)를 통해 웹 서버(30)로 최초 서비스 요청을 하면, 웹 서버(30)는 사용자 세션 ID를 생성하여 Cookie에 추가를 통해 응답 헤더에 적용 및 WEB 세션 스토어에 저장할 수 있다. Cookie 생성시 setMaxAge설정을 통하여 웹 클라이언트에서의 세션 ID 유지시간을 설정할 수 있다. 세션 ID 유지 시간은 다음과 같은 케이스로 설정될 수 있다.Referring to FIG. 6, the user's web client 80 may include a hard disk 81 or a web client memory 82. When the user makes an initial service request to the web server 30 through the web client 80, the web server 30 generates a user session ID, applies it to the response header through addition to the cookie, and stores the application session ID in the response header . You can set session ID retention time on web client through setMaxAge setting when cookie is created. The session ID retention time can be set to the following cases.

a. 미설정 또는 -1 : 웹 클라이언트 메모리에 저장a. Not set or -1: Save to web client memory

b. 숫자로 설정 : 해당 시간(초) 만큼 유지b. Set to number: Keep for the number of seconds

c. 0 으로 설정: 해당 세션 ID 즉시 파기c. Set to 0: Disable the corresponding session ID immediately

웹 서버(30)로부터 사용자 세션 ID가 전송되면, 웹 클라이언트(80)로 전송되면, 웹 클라이언트(80)는 사용자 세션 ID를 저장한다. 상기 a와 같이 세션 ID 유지 시간이 설정되는 경우 웹 클라이언트 메모리(82)에 저장되며, 상기 b와 같이 세션 ID 유지 시간이 설정되는 경우 웹 클라이언트(80) 메모리 및 하드디스크(81)에 저장될 수 있다. When the user session ID is transmitted from the web server 30, the web client 80 stores the user session ID. When the session ID holding time is set as shown in a, the web client 80 is stored in the web client memory 82, and when the session ID holding time is set like the b, the web client 80 can be stored in the memory 80 and the hard disk 81 have.

웹 서버(30)는 로그인 전에는 사용자 세션 ID를 이용하여 사용자(웹 클라이언트)를 구분하며, 로그인 후에는 사용자 세션 ID 및 로그인 정보를 이용하여 사용자를 구분한다. 사용자는 웹 서버(30)를 통해 웹 서비스를 이용할 수 있으며, 상기 a와 같이 세션 ID 유지 시간이 설정된 경우 웹 클라이언트 종료 시 사용자 세션 ID가 파기가 된다. 상기 b와 같이 사용자 세션 ID 유지 시간이 설정된 경우 설정된 해당 시간이 지난 사용자 세션 ID에 대하여 웹 클라이언트 메모리(82), 하드 디스크(81)에서 사용자 세션 ID를 파기할 수 있다.The web server 30 distinguishes a user (web client) using a user session ID before login, and distinguishes a user using a user session ID and login information after login. The user can use the web service through the web server 30. If the session ID holding time is set as shown in a, the user session ID is discarded when the web client is terminated. If the user session ID holding time is set as shown in b, the user session ID can be discarded from the web client memory 82 and the hard disk 81 with respect to the user session ID whose time has elapsed.

기존의 사용자 세션 ID와는 달리 본 발명에서는 고유세션 ID 관리모듈(110)에서 생성된 고유세션 ID를 이용하여 웹 클라이언트가 재가동시 동일 세션 ID를 제공하여 사용자 식별이 가능하도록 한다.Unlike the existing user session ID, in the present invention, the unique session ID generated by the unique session ID management module 110 is used to provide the same session ID when the web client is restarted, thereby enabling user identification.

기존의 사용자 세션 ID의 경우 브라우저를 닫거나, PC를 재 부팅하는 경우 웹 서버(30)에 재 접속 시 세션 ID가 변경되게 된다. In case of the existing user session ID, when the browser is closed or the PC is rebooted, the session ID is changed when reconnecting to the web server 30.

따라서 동일한 사용자에 대한 통계분석에 어려움이 있었다. 또한, 트랜잭션 정보에 포함된 사용자 IP의 경우 특정 그룹에서 대표 IP를 공용으로 쓰는 경우 서로 다른 사용자의 트랜잭션 정보임에도 동일 사용자 IP가 포함될 수 있어, IP 기반으로 사용자에 대한 통계분석이 어려운 문제가 있었다.Therefore, there was a difficulty in statistical analysis for the same user. In addition, in the case of the user IP included in the transaction information, when the representative IP is commonly used in a specific group, the same user IP can be included in the transaction information of different users.

따라서, 본 발명에서는 고유세션 ID 관리 모듈(510)이 사용자 별로 변하지 않는 고유세션 ID를 부여하고, 고유세션 ID를 통해 사용자를 식별하게 된다. 여기서, 고유세션 ID는 사용자가 서비스 요청 시 HTTP 헤더(쿠키)에서 기존 부여된 고유세션 ID가 있는지 확인하여 없다면 고유세션 ID를 생성하여 변하지 않는 영구쿠키에 저장하여 이후 웹 클라이언트 PC의 하드 디스크에 저장되며, 이후 호출 시 부여된 고유세션 ID가 변하지 않고 HTTP 헤더에 담겨 요청되므로, 동일 사용자 인지 아닌지 구별할 수 있다.Accordingly, in the present invention, the unique session ID management module 510 assigns a unique session ID that does not change for each user, and identifies the user through the unique session ID. Here, the unique session ID is determined by checking whether the user has a unique session ID given in the HTTP header (cookie) at the time of the service request. If the unique session ID is not stored, the unique session ID is stored in the persistent cookie Since the unique session ID assigned in the subsequent call does not change and is requested in the HTTP header, it is possible to distinguish whether the same user or not.

도 7은 본 발명의 일 실시예에 따른 사용자 식별을 하는 경우의 일례를 설명하기 위해 도시된 도면이다.7 is a view for explaining an example of user identification according to an embodiment of the present invention.

도 7(a)를 참조하면, 웹 서버(30)에서는 네트워크를 거쳐 사용자의 트랜잭션이 요청되는 경우 사용자 A에 대한 IP 식별이 불가능할 수 있다. 하지만, 본 발명에서와 같이 변하지 않는 고유세션 ID로 사용자를 식별하는 경우 도 7(b)를 참조하면, 네트워크를 거쳐 트랜잭션이 요청되는 경우에도 HTTP 헤더에서의 세션 ID는 웹 서버(30)에서 식별이 가능하다.Referring to FIG. 7 (a), when the user's transaction is requested via the network in the web server 30, IP identification for the user A may not be possible. However, referring to FIG. 7B, when a user is identified by a unique session ID that does not change as in the present invention, even when a transaction is requested via the network, the session ID in the HTTP header is identified This is possible.

도 8은 본 발명의 일 실시예에 따른 고유세션 ID를 부여하는 과정의 일례를 도시한 도면이다.FIG. 8 is a diagram illustrating an example of a process of assigning a unique session ID according to an embodiment of the present invention.

도 8을 참조하면, 웹 클라이언트(80)가 서비스 트랜잭션 요청 시, 고유 고유세션 ID 관리 모듈(510)은 우선 트랜잭션에 고유세션 ID가 포함되어 있는지를 판단하고, 고유세션 ID가 포함되어 있지 않다면 고유세션 ID를 생성하여 Cookie에 추가를 통해 응답 헤더에 적용한다. Cookie 생성 시 SetMaxAge를 매우 큰 값으로 설정하여 웹 클라이언트에서의 고유세션 ID로 생성한다. 일례로 setMaxAge(2144448000)으로 세션 ID 유지시간이 설정될 시 60년간 유지될 수 있다.Referring to FIG. 8, when the web client 80 requests a service transaction, the inherent unique session ID management module 510 determines whether the unique session ID is included in the transaction first. If the unique session ID is not included, Generate a session ID and apply it to the response header by adding it to the cookie. SetMaxAge is set to a very large value when creating a cookie, and it is created with a unique session ID from the web client. For example, setMaxAge (2144448000) can hold the session ID retention time for 60 years.

이후 생성된 고유세션 ID는 웹 클라이언트로 전송되며, 웹 클라이언트는 고유세션 ID를 웹 클라이언트 메모리 및 하드 디스크에 저장한다. 사용자가 사이트를 이용하는 경우 로그인과 무관하게 고유세션 ID는 유지되며, 웹 서버(30)는 사용자에 의해 요청되는 트랜잭션 정보에서 고유세션 ID를 수집하여 사용자를 구분할 수 있다. 웹 클라이언트(80)가 종료 또는 재 기동시에도 고유세션 ID가 하드 디스크(81)에 유지되며, 웹 클라이언트 실행 시 하드 디스크의 고유세션 ID가 웹 클라이언트 메모리(82)에서 복원된다. 또한, 웹 클라이언트 재 실행 시 고유 세선 ID에 설정된 고유세션 ID 유지시간은 재설정될 수 있다.
The generated unique session ID is transmitted to the web client, which stores the unique session ID in the web client memory and the hard disk. When the user uses the site, the unique session ID is maintained regardless of the login, and the web server 30 can distinguish the user by collecting the unique session ID from the transaction information requested by the user. The unique session ID is maintained in the hard disk 81 even when the web client 80 is terminated or restarted and the unique session ID of the hard disk is restored in the web client memory 82 when the web client is executed. In addition, the unique session ID retention time set in the unique thin line ID upon re-execution of the web client can be reset.

사용자 ID 정보 수집모듈(505)는 트랜잭션 정보에 포함된 사용자 ID 정보를 수집한다. The user ID information collection module 505 collects the user ID information included in the transaction information.

도 9는 본 발명의 일 실시예에 따른 사용자 ID를 수집하는 방법의 일례를 도시한 도면이다.9 is a diagram illustrating an example of a method of collecting a user ID according to an embodiment of the present invention.

도 9를 참조하면, 사용자 ID 정보 수집 모듈은 사용자 ID에 대한 파라미터명을 설정하여 로그인시에만 추출하는 방법#1 및 사용자 ID를 Access하는 메소드를 설정하여 해당 메소드가 메모리에 로드시 정보추출을 위한 코드를 Injection하여 해당 메소드 수행 시 호출 파라미터나 리턴 값에서 사용자 ID를 추출하는 방법#2를 통해 사용자 ID를 추출할 수 있다.Referring to FIG. 9, the user ID information collection module sets a parameter name for the user ID and extracts only the method # 1 at login, and sets a method for accessing the user ID, Injecting the code to extract the user ID from the method # 2, which extracts the user ID from the calling parameter or return value when the corresponding method is executed.

웹 서버 정보 수집모듈(509)은 웹 서버(30)의 호스트네임, 웹 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 서버 리소스 사용량 등의 정보를 수집한다.The web server information collection module 509 collects information such as a host name, a web server container name and an instant name, a service port, an OS, and a web server resource usage of the web server 30.

URI 성능정보 수집모듈(511)은 도메인 및 접속포트 정보, 접속 URI 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보를 포함하는 URI 트랜잭션 정보를 수집한다.URI performance information collection module 511 collects URI transaction information including domain and access port information, connection URI call time, total response time, response time per section, CPU resource usage, processing result, AP error, and Query String information do.

비정상 트랜잭션 관리 모듈(520)은 차단 정책 관리, 관리서버(50)로부터의 요청에 따른 비정상 트랜잭션 차단, 차단 현황 관리등의 기능을 수행한다.The abnormal transaction management module 520 performs blocking policy management, abnormal transaction blocking according to a request from the management server 50, blocking status management, and the like.

통신 모듈(530)은 WEB 플러그인 에이전트(50)와 관리서버(53)간의 양방향 통신 모듈로서, WEB 플러그인 에이전트(50)에서 수집한 정보 및 비정상트랜잭션 관리 정책등에 대한 상호 통신 기능을 수행한다.
The communication module 530 is a bidirectional communication module between the WEB plug-in agent 50 and the management server 53 and performs mutual communication functions on the information collected by the WEB plug-in agent 50 and the abnormal transaction management policy.

다시, 도 4를 참조하면, 관리 서버(53)는 WEB 플러그인 에이전트(50)로부터 수집된 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 보안 설정에 따라 비정상 트랜잭션에 대한 차단 명령을 WEB 플러그인 에이전트(50)로 전송하는 기능을 수행한다.4, the management server 53 receives the transaction information collected from the WEB plug-in agent 50, analyzes whether it is normal transaction information or abnormal transaction information, and generates detection information according to the analysis result And transmits a blocking command for the abnormal transaction to the WEB plug-in agent 50 according to the security setting.

즉, 관리 서버(53)는 WEB 플러그인 에이전트(50)에 수집된 각종 트랜잭션 정보를 분석하여 비정상 트랜잭션 정보가 감지되는 경우, 차단 명령을 WEB 플러그인 에이전트(50)의 비정상 트랜잭션 관리모듈(520)로 전송하여 비정상 트랜잭션 관리모듈(520)에서 해당 고유세션 ID에 대한 자동 차단을 기능을 수행할 수 있다.That is, the management server 53 analyzes various transaction information collected in the WEB plug-in agent 50 and transmits the blocking command to the abnormal transaction management module 520 of the WEB plug-in agent 50 when abnormal transaction information is detected And the abnormal transaction management module 520 may perform an automatic shutdown function for the unique session ID.

보안 관리자를 통한 관리서버(53)에서 사용자 ID나 고유세션 ID를 선택하여 수동 차단 시에도 차단 명령이 비정상 트랜잭션 관리모듈(520)로 전송되어 WEB 플러그인 에이전트(50)에서 수동 차단 기능을 수행할 수 있다.The blocking command is transmitted to the abnormal transaction management module 520 even when the user ID or the unique session ID is manually selected by the management server 53 through the security manager and the WEB plug-in agent 50 can perform the manual blocking function have.

고유세션 ID 기반의 자동 및 보안 관리자에 의한 수동 차단 시 영구차단, 시간 설정 차단 등의 기능을 통하여 차단 기간을 설정할 수 있을 것이다.Automatic blocking based on the unique session ID, and manual blocking by the security administrator, the blocking period can be set through the functions such as permanent blocking and time blocking.

즉, 본 발명에서는 비정상적인 트랜잭션이 발생하는 경우 해당 되는 웹 클라이언트의 차단을 수행할 수 있다.That is, according to the present invention, when an abnormal transaction occurs, the corresponding web client can be blocked.

또한, 관리 서버(53)는 비정상 트랜잭션 정보가 감지되는 경우 SMS 발송 시스템(55)을 이용하여 보안 관리자의 단말기에 탐지 SMS를 전송할 수 있다. 보안 관리자는 탐지 SMS를 수신하여 즉각적인 조치를 취할 수 있을 것이다.In addition, the management server 53 may transmit the detection SMS to the terminal of the security manager using the SMS sending system 55 when abnormal transaction information is detected. The security administrator will be able to receive the detection SMS and take immediate action.

도 10은 본 발명의 일 실시예에 따른 관리 서버(53)의 상세한 구성을 도시한 블록도이다.10 is a block diagram showing a detailed configuration of the management server 53 according to an embodiment of the present invention.

도 10을 참조하면, 관리 서버(53)는 탐지 모듈(531), 분석모듈(532), 차단제어모듈(533) 및 통신모듈(534)를 포함할 수 있다. 10, the management server 53 may include a detection module 531, an analysis module 532, a blocking control module 533, and a communication module 534.

탐지 모듈(531)은 세션 ID 기반 탐지모듈(5311), HTTP 헤더 정보 기반 탐지 모듈(5313), 통계 데이터 기반 탐지 모듈(5317)을 포함할 수 있다. The detection module 531 may include a session ID based detection module 5311, an HTTP header information based detection module 5313, and a statistical data based detection module 5317.

세션 ID 기반 탐지모듈(5311)은 사용자 세션 ID 및 고유세션 ID를 기반의 사용자 식별을 통하여 사용자를 식별하고, 트랜잭션 정보의 비정상 유무를 탐지한다.The session ID-based detection module 5311 identifies the user through user identification based on the user session ID and the unique session ID, and detects the abnormality of the transaction information.

일례로, 웹 클라이언트에서 최초 트랜잭션 정보가 요청된 후 사용자 세션 ID 및 고유세션 ID가 생성된 이후, 트랜잭션 정보가 재 요청될 시 트랜잭션 정보에 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지할 수 있다.For example, if the user session ID and the unique session ID are not maintained in the transaction information when the transaction information is re-requested after the initial transaction information is requested from the web client, It can be detected as being a web crawler.

또한, 서비스가 재 요청 될 시 사용자 세션 ID 만 유지되고 고유세션 ID가 유지 되지 않는 경우 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지할 수 있다.In addition, when the service is requested again, only the user session ID is retained, and if the unique session ID is not maintained, it can be detected that the web client is operated through the hacking program.

또한, 세션 ID 기반 탐지모듈(5311)은 고유세션 ID와 사용자 ID의 매핑을 통해 비정상 트랜잭션 정보를 탐지할 수 있다.In addition, the session ID-based detection module 5311 can detect abnormal transaction information through a mapping between a unique session ID and a user ID.

도 11은 본 발명의 일 실시예에 따른 고유세션 ID와 사용자 ID 매핑 탐지를 설명하기 위해 도시한 도면이다.FIG. 11 is a diagram illustrating a unique session ID and user ID mapping detection according to an exemplary embodiment of the present invention. Referring to FIG.

변하지 않는 고유세션 ID는 사용자가 변경되어도 단말기 별로 그대로 유지되어, 사용자 ID와 매핑하면 비정상 접속 탐지가 가능하다.The unchanging unique session ID is maintained for each terminal even if the user changes, and abnormal access can be detected if the ID is mapped to the user ID.

도 11을 참조하면, User 1은 T1~T3, T6~T7까지는 단말기#1에서, T8~T10은 단말기 #2에서, T11~T12 까지는 단말기#3에서 접속하였음을 알 수 있다. 즉, User 1은 단말기#1, 단말기#2, 단말기#3에서 접속하였음을 알 수 있다. User 2는 T4~T5까지 단말기#1에서만 접속하였음을 알 수 있다. T1~T7는 단말기#1에서 User 1과 User 2가 접속하였음을 알 수 있다. 즉, 동일 단말기에서 2명의 User가 접속하였다. Proxy Server를 랜덤으로 경유 시 웹 서버(30)에서 수집한 Remote IP는 Proxy 서버 IP가 수집되므로 Remote IP가 계속 바뀌게 된다. Referring to FIG. 11, it can be seen that User 1 has accessed from T1 to T3, T6 to T7 from terminal # 1, T8 to T10 from terminal # 2, and T11 to T12 from terminal # 3. That is, it can be seen that User 1 has connected from terminal # 1, terminal # 2, and terminal # 3. User 2 can see from T4 to T5 that it is connected only to the terminal # 1. T1 to T7 indicate that User 1 and User 2 have connected to each other in terminal # 1. That is, two users connected to the same terminal. When the proxy server is randomly connected, the remote IP collected from the web server 30 is continuously updated because the proxy server IP is collected.

따라서, 세션 ID 기반 탐지모듈(5311)은 변하지 않는 고유세션 ID는 그대로이고 Remote IP가 계속 변경되는 경우 Proxy를 경유한 웹 해킹임을 탐지할 수 있다. 즉, 세션 ID 기반 탐지모듈(5311)은 고유세션 ID와 사용자 ID의 매칭을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지, 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지할 수 있다.Accordingly, the session ID-based detection module 5311 can detect that the intrinsic session ID remains unchanged and that the web hacking via the proxy is continued when the remote IP is continuously changed. That is, the session ID-based detection module 5311 detects that a plurality of users access the same terminal through matching of a unique session ID and a user ID, detects that the same user accesses from a plurality of terminals, It can detect the attack via the IP, and detect the attack by modifying the IP in one terminal.

동일 단말기에서 다수 사용자 접속 탐지가 되는 경우, 세션 단계에서 웹 해킹 방어를 할 수 있으며, 동일 사용자가 여러 개의 단말기에서 접속 탐지가 되는 경우 동일 단말기에서 ID 변조 공격 방어를 할 수 있다. 또한, 하나의 단말기에서 Proxy 경유 공격 탐지가 되는 경우, Proxy를 경유한 웹 해킹 방어를 할 수 있다. In the case where multiple user accesses are detected in the same terminal, web hacking protection can be performed in the session phase, and ID detection attacks can be protected in the same terminal when the same user detects access from multiple terminals. In addition, if a terminal detects an attack via Proxy, it can protect the web hacking via the proxy.

HTTP 헤더 정보 기반 탐지모듈(5313)은 정상적인 웹 클라이언트 가 아닌 호출 트랜잭션을 탐지하여 비정상 트랜잭션을 감지할 수 있다. 일반적으로 외부 공격이 수행되는 경우, 일반적인 요청 브라우저를 통한 호출이 아닌 프로그램을 이용한 비정상 요청 등이 발생한다. 따라서, 요청 브라우저 아닌 다른 브라우저가 감지되는 경우 HTTP 헤더 정보 기반 탐지모듈(5313)은 비정상 트랜잭션으로 감지할 수 있다.The HTTP header information based detection module 5313 can detect an abnormal transaction by detecting a call transaction other than a normal web client. Generally, when an external attack is performed, an abnormal request using a program rather than a call through a general request browser occurs. Accordingly, when a browser other than the requesting browser is detected, the HTTP header information based detection module 5313 can detect the abnormal transaction.

또한, HTTP 헤더 정보 기반 탐지모듈(5313)은 검색엔진이나 DDOS 공격 식별, 허용되지 않는 메소드로 호출되는 트랜잭션 식별, 호출 파라미터 패턴 분석 식별을 수행하여 비정상 트랜잭션을 감지할 수 있다.In addition, the HTTP header information based detection module 5313 can detect an abnormal transaction by performing a search engine or DDOS attack identification, a transaction identification to be invoked in an unacceptable method, and a call parameter pattern analysis identification.

도 12 내지 도 14는 본 발명의 일 실시예에 따른 HTTP 헤더 정보 기반으로 탐지를 수행하는 일례를 도시한 도면이다.12 to 14 illustrate an example of performing detection based on HTTP header information according to an embodiment of the present invention.

도 12를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 HTTP 헤더 중 User-Agent 항목은 웹 클라이언트 종류 및 버전 정보가 담겨 있으며, 특정 문자열 또는 블랙 리스트 매핑을 통하여 비정상 트랜잭션을 탐지할 수 있다. Referring to FIG. 12, the HTTP header information-based detection module 5313 includes a Web client type and version information of the User-Agent item in the HTTP header, and can detect an abnormal transaction through a specific character string or black list mapping.

도 13을 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 HTTP 메소드 중 일반적으로 GET, POST만 쓰이며, 이외의 Method는 차단이 필요하다. CONNECT, TRACE 등의 메소드는 우회 공격에 사용되는 것으로서 이와 같은 메소드가 요청되는 경우 비정상 웹 클라이언트로 탐지할 수 있다.Referring to FIG. 13, the HTTP header information based detection module 5313 uses only GET and POST among HTTP methods, and other methods need to be blocked. CONNECT, and TRACE are used for bypass attacks, and can be detected as an abnormal Web client when such a method is requested.

도 14(a)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 세션 단계의 웹 해킹 공격 시 자신의 IP를 숨기기 위하여 Proxy 서버를 경유하여 요청하는 경우로 HTTP Header에 "Proxy-Connection" 문자열이 존재하는 경우 또는 User-Agent 값에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 탐지가 가능하다. Referring to FIG. 14 (a), the HTTP header information based detection module 5313, when requesting via the proxy server in order to hide its own IP address in the session hacking attack, sets a "Proxy-Connection" Or if there is a string that identifies the proxy server in the User-Agent value.

도 14(b)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 호출 파라미터 매핑을 이용하여 비정상 트랜잭션 즉, 비정상 웹 클라이언트를 탐지할 수 있다. 일례로 GET 및 POST 메소드로 요청되는 호출 파라미터(Query String)에 탐지 패턴을 설정하여 탐지할 수 있다.Referring to FIG. 14 (b), the HTTP header information based detection module 5313 can detect an abnormal transaction, that is, an abnormal web client, using the call parameter mapping. For example, a detection pattern can be set and detected in a call parameter (Query String) requested by the GET and POST methods.

도 14(c)를 참조하면, HTTP 헤더 정보 기반 탐지모듈(5313)은 호출 파라미터에 Script가 포함될 경우 비정상 웹 클라이언트를 탐지할 수 있다. 사용자로부터 입력된 데이터에 Script가 포함될 경우 해당 Script가 웹 클라이언트에서 실행되면서 Cookie 값 획득, DOM(Document Object Model) Access, Clipboard Access, Key logging으로 정보를 해킹 당할 수 있다. 따라서, HTTP 헤더 정보 기반 탐지모듈(5313)은 사용자가 입력한 데이터를 검사하여 Script등 비정상적인 데이터가 존재하면 비정상으로 탐지한다.Referring to FIG. 14C, the HTTP header information based detection module 5313 can detect an abnormal web client when a script is included in a call parameter. If a script is included in the data input from the user, the script is executed in the web client, and information can be hacked by obtaining cookie value, accessing Document Object Model (DOM), Clipboard Access, and key logging. Accordingly, the HTTP header information based detection module 5313 inspects the data input by the user and detects abnormality when abnormal data such as a script exists.

또한, HTTP 헤더 정보 기반 탐지모듈(5313)은 비정상 트랜잭션 탐지에 대한 정규식 생성을 통해 상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행할 수도 있을 것이다. In addition, the HTTP header information based detection module 5313 may perform PCRE detection on the HTTP header information through regular expression generation for abnormal transaction detection.

다시 도 10을 참조하면, 통계 데이터 기반 탐지모듈(5317)은 도 15에 도시된 바와 같이, 동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지할 수 있다.Referring again to FIG. 10, the statistical data-based detection module 5317 detects excessive call detection per user, specific URI repeated call detection per user, URI It can detect Ranking Rising detection based on star call ranking, and abnormal URI call Flow.

분석모듈(532)은 세션 ID 기반 통계분석 모듈(5321), HTTP 헤더 정보 기반 통계 분석모듈(5323), URI 성능정보 기반 통계 분석모듈(5325)을 포함할 수 있다.The analysis module 532 may include a session ID based statistical analysis module 5321, an HTTP header information based statistical analysis module 5323, and a URI performance information based statistical analysis module 5325.

세션 ID 기반 통계분석 모듈(5321)은 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행할 수 있다. 또한 사용자별 호출 건수 통계 분석, 사용자별 URI 호출 Flow 분석, 사용자별 연속된 트랜잭션 분포도 분석을 수행할 수 있다. 즉, 종래의 세션 ID를 이용하는 경우에는 웹 브라우저를 닫거나 PC를 종료하는 경우 세션 ID가 새롭게 생성됨으로 세션 기반의 통계 분석이 불가능하였다. 그러나, 본 발명에서는 사용자 ID 별로 부여되는 변하지 않는 고유세션 ID를 이용하여 다양한 통계 분석을 수행할 수 있는 장점이 있다.The session ID-based statistical analysis module 5321 can provide the transaction analysis continuity through the unique session ID, accurately calculate the number of visitors per day, perform the transaction distribution and statistical analysis by unique session ID. In addition, statistical analysis of the number of calls per user, URI call flow analysis per user, and continuous transaction distribution analysis per user can be performed. That is, in the case of using the conventional session ID, when the web browser is closed or the PC is shut down, a session ID is newly generated, so that the session-based statistical analysis is impossible. However, according to the present invention, there is an advantage that various statistical analysis can be performed using the unique session ID that is assigned to each user ID.

HTTP 헤더 정보 기반 통계 분석모듈(5323)은 HTTP 헤더 정보(User-Agent 정보, HTTP Method, Remote IP 등)를 기반으로 호출 클라이언트 별 통계 분석, 요청 Method 별 통계분석, 지역별 통계 분석 등을 수행할 수 있다.The HTTP header information-based statistical analysis module 5323 can perform statistical analysis on the basis of HTTP header information (User-Agent information, HTTP Method, Remote IP, etc.), call client, statistical analysis according to request method, have.

URI 성능정보 기반 통계 분석모듈(5325)는 URI 성능정보를 이용한 사용자별(고유세션 ID, 사용자 ID, 사용자 세션 ID등을 이용하여), 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석한다.The URI performance information based statistical analysis module 5325 analyzes statistical information for each user (using unique session ID, user ID, user session ID, etc.), various statistical indices for each domain, and statistical information for each URI using URI performance information.

차단제어모듈(533)은 차단정책 관리모듈(5331) 및 차단정책 제어모듈(5333)을 포함할 수 있다.The blocking control module 533 may include a blocking policy management module 5331 and a blocking policy control module 5333. [

차단 정책 관리모듈(5331)은 User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등을 수행한다.Blocking policy management module 5331 performs User-Agent blacklist management, blocking method management, blocking session ID management, blocking user ID management, blocking user IP management, and the like.

차단 정책 제어모듈(5333)은 영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어 등의 차단 정책을 제어한다. The blocking policy control module 5333 controls blocking policies such as permanent blocking control, time setting blocking control, automatic blocking control, manual blocking control, and the like.

차단제어모듈(533)은 통신 모듈을 통해 WEB 플러그인 에이전트(50)로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 통신모듈(534)를 통해 WEB 플러그인 에이전트(50)로 전송할 수 있다. 또한, WEB 플러그인 에이전트(50)를 통해 차단 현황을 수신할 수 있다. 종래의 기존 보안 관제 체계는 SSL/TSL 암호화구간에서 트랜잭션 정보를 수집함으로 제한적인 정보만이 분석 가능할 뿐, 패킷 플로우의 분석이 불가능하여 통계정보 분석에 한계가 있었다. 그러나, 본 발명에서는 웹 서버(30) 메모리내의 복호화된 각종 정보를 수집할 수 있으므로, 다양한 형태의 통계 분석을 수행할 수있는 이점이 있다.
The blocking control module 533 may send a blocking policy to the WEB plug-in agent 50 via the communication module and may send a blocking command to the WEB plug-in agent 50 via the communication module 534 if an abnormal transaction is detected . In addition, the blocking status can be received through the WEB plug-in agent 50. Conventional existing security control system collects transaction information in SSL / TSL encryption section, so that only limited information can be analyzed, and analysis of packet flow is impossible. However, according to the present invention, since various types of decoded information can be collected in the memory of the web server 30, various types of statistical analysis can be performed.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.The present invention also relates to a computer readable It can be implemented as a computer-readable code on a recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) .

또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains. Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

10: IPS/IDS 20: WAF
30: 웹서버 40: 웹 애플리케이션 서버
50: WEB 플러그인 에이전트 500: 정보수집모듈
501: HTTP 헤더 정보 수집모듈
503: 웹 세션 ID 수집 모듈 505: 사용자 ID 정보 수집모듈
509: 웹 서버 정보 수집모듈
511: URI 정보 수집모듈
510: 고유세션 ID 관리모듈 520: 비정상 트랜잭션 관리모듈
530: 통신모듈
53: 관리서버 531: 탐지모듈
5311: 세션 ID 기반 탐지모듈
5313: HTTP 헤더 정보 기반 탐지모듈
5317: 통계 데이터 기반 탐지모듈
532: 통계 분석모듈 5321: 세션 ID 기반 통계 분석모듈
5323: HTTP 헤더 정보 기반 통계 분석모듈
5325: URI 성능 정보 기반 통계 분석모듈
533: 차단제어모듈 5331: 차단정책 관리모듈
5333: 차단정책 제어모듈
10: IPS / IDS 20: WAF
30: Web server 40: Web application server
50: WEB plug-in agent 500: information collecting module
501: HTTP header information collection module
503: Web session ID collecting module 505: User ID information collecting module
509: Web server information collection module
511: URI information collection module
510: unique session ID management module 520: abnormal transaction management module
530: Communication module
53: management server 531: detection module
5311: Session ID based detection module
5313: HTTP header information based detection module
5317: Statistical data based detection module
532: Statistical Analysis Module 5321: Session ID-based Statistical Analysis Module
5323: HTTP header information based statistical analysis module
5325: URI performance information based statistical analysis module
533: Blocking control module 5331: Blocking policy management module
5333: Blocking policy control module

Claims (10)

웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치에 있어서,
상기 웹 서버에 플러그인 방식으로 설치되어 동작하며, 상기 웹 서버에서 복호화된 사용자의 트랜잭션 정보를 상기 웹 서버의 메모리에서 수집하는 WEB 플러그인 에이전트; 및
상기 WEB 플러그인 에이전트로부터 트랜잭션 정보를 수신하고, 정상적인 트랜잭션 정보인지 또는 비정상적인 트랜잭션 정보인지를 분석하고, 분석결과에 따라 탐지정보를 생성하며, 상기 비정상 트랜잭션에 대한 차단 명령을 상기 WEB 플러그인 에이전트로 전송하는 관리 서버를 포함하되,
상기 WEB 플러그인 에이전트는 사용자의 웹 서버로의 서비스 요청 시, 영구 쿠키에 변하지 않는 고유세션 ID가 있는지 탐색하고, 고유세션 ID가 없는 경우, 상기 사용자에 대한 고유 세션 ID를 생성하여 사용자의 웹 클라이언트로 전송하며, 생성된 고유세션 ID를 영구 쿠키에 설정하여 이후 서비스 요청 시 고유세션 ID로 사용자를 구분할 수 있도록 하는 고유세션 ID 관리모듈을 더 포함하며,
상기 고유세션 ID는 상기 웹 클라이언트가 종료 후 재 실행 시에도 변하지 않는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
A security device using transaction information collected from a web server,
A WEB plug-in agent installed in the web server in a plug-in manner and collecting transaction information of a user decoded by the web server in a memory of the web server; And
The control unit receives the transaction information from the WEB plug-in agent, analyzes whether it is normal transaction information or abnormal transaction information, generates detection information according to the analysis result, and transmits a blocking command for the abnormal transaction to the WEB plug- Servers,
The WEB plug-in agent searches for a unique session ID that does not change in the persistent cookie when requesting a service to the web server of the user, and when there is no unique session ID, generates a unique session ID for the user, And a unique session ID management module for setting the generated unique session ID in the persistent cookie so that a user can be distinguished by a unique session ID in a subsequent service request,
Wherein the unique session ID is not changed even when the web client is restarted after being terminated.
삭제delete 제1항에 있어서,
상기 WEB 플러그인 에이전트는 상기 트랜잭션 정보에 포함된 HTTP 헤더를 분석하여 HTTP Method, URI, Query String, HTTP Protocol Version, Host, Connection, Accept, User-agent, Referer, Accept-Encoding, Accetpt-Language, Cookie, 기타 Header 정보, Attribute 정보 중 적어도 하나의 HTTP 헤더 정보를 수집하는 HTTP 헤더 정보 수집모듈;
상기 트랜잭션 정보로부터 사용자 세션 ID, 상기 고유세션 ID를 수집하는 웹 세션 ID 수집 모듈;
상기 트랜잭션 정보 및 트랜잭션 처리시에 포함된 사용자 ID 정보를 수집하는 사용자 ID 정보 수집모듈;
상기 웹 서버의 호스트네임, 웹 서버 컨테이너명 및 인스턴트 명, 서비스 포트, OS 및 웹 서버 리소스 사용량 중 적어도 하나의 웹 서버 정보를 수집하는 웹 서버 정보 수집모듈; 및
상기 트랜잭션 정보에 포함된 URI(Uniform Resource Identifier) 트랜잭션 정보 도메인 및 접속포트 정보, 접속 URI, 호출시간, 전체 응답시간, 구간별 응답시간, CPU 리소스 사용량, 처리 결과, AP 오류 및 Query String 정보 중 적어도 하나의 URI 정보를 수집하는 URI 정보 수집모듈; 중 적어도 하나의 수집모듈을 포함하는 정보수집모듈을 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method according to claim 1,
The WEB plug-in agent analyzes the HTTP header included in the transaction information and analyzes the HTTP header included in the transaction information to generate an HTTP protocol including a HTTP method, a URI, a Query String, an HTTP protocol version, a Host, a Connection, Accept, An HTTP header information collection module for collecting at least one HTTP header information among Header information and Attribute information;
A web session ID collection module for collecting a user session ID and the unique session ID from the transaction information;
A user ID information collection module for collecting the transaction information and the user ID information included in the transaction processing;
A web server information collection module for collecting web server information of at least one of a host name, a web server container name and an instant name of the web server, a service port, an OS, and a web server resource usage amount; And
At least one of URI (Uniform Resource Identifier) transaction information domain and access port information, connection URI, call time, total response time, response time per section, CPU resource usage, processing result, AP error and Query String information included in the transaction information A URI information collection module for collecting URI information; And an information collecting module including at least one collecting module for collecting transaction information collected from the web server.
제3항에 있어서,
상기 관리 서버는,
최초 트랜잭션 정보가 요청된 후 상기 사용자 세션 ID 및 상기 고유세션 ID가 생성된 이후 트랜잭션 정보가 재 요청될 시, 상기 트랜잭션 정보에 상기 사용자 세션 ID 및 고유세션 ID가 유지되지 않는 경우 DDOS 공격 또는 웹 크롤러인 것으로 탐지하는 제1 탐지,
상기 트랜잭션 정보가 재 요청될 시 상기 사용자 세션 ID만 유지되고, 상기 고유세션 ID가 유지되지 않는 경우 사용자의 웹 클라이언트가 해킹용 프로그램을 통해 동작되는 것으로 탐지하는 제2 탐지,
상기 고유 세션 ID와 상기 사용자 ID의 매핑을 통한 제3 탐지 중 적어도 하나의 탐지를 수행하는 세션 ID 기반 탐지 모듈을 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method of claim 3,
The management server includes:
When the transaction information is requested again after the initial transaction information is requested and after the user session ID and the unique session ID are generated, if the user session ID and the unique session ID are not maintained in the transaction information, the DDOS attack or web crawler The first detection to detect the presence of the < RTI ID =
A second detection that only the user session ID is maintained when the transaction information is requested again and that the web client of the user is operated through a hacking program when the unique session ID is not maintained,
And a session ID-based detection module for performing at least one of detection of the unique session ID and third detection through mapping of the unique ID to the user ID.
제4항에 있어서,
상기 세션 ID 기반 탐지 모듈은, 상기 고유세션 ID와 사용자 ID의 매핑을 통해 동일 단말기에서 다수 사용자가 접속하는 것을 탐지, 동일 사용자가 여러 개의 단말기에서 접속하는 것을 탐지, 하나의 단말기에서 Proxy를 경유하여 공격하는 것을 탐지 또는 하나의 단말기에서 IP를 변조하여 공격하는 것을 탐지하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
5. The method of claim 4,
The session ID-based detection module detects that a plurality of users access the same terminal through the mapping of the unique session ID and the user ID, detects that the same user accesses from a plurality of terminals, Detecting an attack or modifying an IP in one terminal to detect an attack; and a security device using transaction information collected from a web server.
제3항에 있어서,
상기 관리 서버는
웹 클라이언트의 종류 및 버전 정보가 담겨있는 상기 User-agent 정보를 식별하여, 상기 User-agent에 특정 문자열 존재 유무 또는 블랙 리스트 매핑을 통해 비정상 트랜잭션으로 탐지하는 제1 탐지;
상기 HTTP Method 중 허용되지 않는 Method가 포함된 경우 비정상 트랜잭션으로 탐지하는 제2 탐지;
상기 HTTP 헤더에 Proxy-connection 문자열이 존재 또는 상기 User-agent에 Proxy 서버를 식별할 수 있는 문자열이 존재하는 경우 비정상 트랜잭션으로 탐지하는 제3 탐지; 및
상기 HTTP 헤더 정보에 대한 PCRE 탐지를 수행하는 제 4 탐지 중 적어도 하나의 탐지를 포함하는 HTTP 헤더 정보 기반 탐지모듈을 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method of claim 3,
The management server
A first detection for identifying the User-agent information including the type and version information of the Web client, and detecting the existence of a specific character string or black list mapping in the User-agent as an abnormal transaction;
A second detection for detecting an unusual transaction when an unacceptable Method among the HTTP Methods is included;
Detecting a presence of a Proxy-connection string in the HTTP header or an abnormal transaction when a character string capable of identifying a proxy server exists in the User-agent; And
And a fourth detection for performing PCRE detection on the HTTP header information. The security device using the transaction information collected from the web server, comprising:
제3항에 있어서,
상기 관리 서버는,
동일 고유세션 ID 기반의 사용자 식별을 통해, 사용자별 과다 호출 탐지, 사용자별 특정 URI 반복 호출 탐지, URI 별 호출 랭킹 기반의 랭킹 급상승 탐지, 비정상 URI 호출 Flow를 탐지하는 통계 데이터 기반 탐지모듈을 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method of claim 3,
The management server includes:
And a statistical data based detection module for detecting abnormal call detection for each user, specific URI repeated call detection for each user, ranking rising detection based on URI calling ranking, and abnormal URI calling flow through the same unique session ID based user identification Wherein the transaction information is acquired from a web server.
제3항에 있어서,
상기 관리 서버는,
상기 고유세션 ID를 통한 트랜잭션 분석 연속성 제공, 정확한 시간 별, 일별 방문자수 산정, 고유세션 ID 별 트랜잭션 분포도 및 통계 분석을 수행하는 세션 ID 기반 통계 분석모듈;
상기 HTTP 헤더 정보를 이용한 호출 브라우저 별 통계 분석을 수행하는 HTTP 헤더 정보 기반 통계 분석모듈; 및
상기 URI 정보를 이용한 상기 도메인 별 각종 통계지표 및 상기 URI 별 통계정보를 분석하는 URI 성능정보 기반 통계 분석모듈을 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method of claim 3,
The management server includes:
A session ID-based statistical analysis module for providing transaction analysis continuity through the unique session ID, accurate time-based, daily visitor counting, transaction distribution by unique session ID, and statistical analysis;
An HTTP header information based statistical analysis module for performing statistical analysis for each call browser using the HTTP header information; And
And a URI performance information based statistical analysis module for analyzing various statistical indices for each domain using the URI information and statistical information for each URI.
제3항에 있어서,
상기 관리 서버는,
User-Agent 블랙리스트 관리, 차단 Method 관리, 차단 세션 ID 관리, 차단 사용자 ID 관리, 차단 사용자 IP 관리 등에 대한 차단 정책을 관리 하는 차단 정책 관리모듈;
영구 차단 제어, 시간 설정 차단 제어, 자동 차단 제어, 수동 차단 제어등의 차단 정책을 제어하는 차단 정책 제어모듈;을 포함하는 차단제어모듈을 더 포함하며,
상기 차단제어모듈은 통신 모듈을 통해 상기 WEB 플러그인 에이전트로 차단 정책을 송신하며, 비정상 트랜잭션이 탐지되는 경우 차단 명령을 상기 WEB 플러그인 에이전트로 전송하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
The method of claim 3,
The management server includes:
A blocking policy management module for managing blocking policies for user-agent black list management, blocking method management, blocking session ID management, blocking user ID management, blocking user IP management, and the like;
And a blocking policy control module for controlling a blocking policy such as permanent blocking control, time setting blocking control, automatic blocking control, manual blocking control, and the like,
Wherein the blocking control module transmits a blocking policy to the WEB plug-in agent through the communication module, and transmits a blocking command to the WEB plug-in agent when an abnormal transaction is detected. Device.
제9항에 있어서,
상기 WEB 플러그인 에이전트는,
상기 차단제어모듈로부터 차단 명령를 수신하는 경우 차단 명령에 해당하는 트랜잭션에 대한 차단 기능을 수행하는 비정상 트랜잭션 관리모듈을 더 포함하는 것을 특징으로 하는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치.
10. The method of claim 9,
The WEB plug-
Further comprising an abnormal transaction management module for performing a blocking function for a transaction corresponding to a blocking command when receiving a blocking command from the blocking control module.
KR1020160040326A 2016-04-01 2016-04-01 Security device using transaction information obtained from web server KR101650475B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160040326A KR101650475B1 (en) 2016-04-01 2016-04-01 Security device using transaction information obtained from web server
PCT/KR2016/013134 WO2017171188A1 (en) 2016-04-01 2016-11-15 Security device using transaction information collected from web application server or web server
US15/766,005 US10728267B2 (en) 2016-04-01 2016-11-15 Security system using transaction information collected from web application server or web server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160040326A KR101650475B1 (en) 2016-04-01 2016-04-01 Security device using transaction information obtained from web server

Publications (1)

Publication Number Publication Date
KR101650475B1 true KR101650475B1 (en) 2016-09-05

Family

ID=56938980

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160040326A KR101650475B1 (en) 2016-04-01 2016-04-01 Security device using transaction information obtained from web server

Country Status (1)

Country Link
KR (1) KR101650475B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210022213A (en) 2019-08-19 2021-03-03 한국전자통신연구원 Apparatus for extracting certificate reputation score and operating method thereof
CN112703496A (en) * 2018-09-16 2021-04-23 微软技术许可有限责任公司 Content policy based notification of application users about malicious browser plug-ins
KR20240009302A (en) * 2022-07-13 2024-01-22 주식회사 시큐다임 Electronic apparatus and method for analyzing http traffic thereby

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100071747A (en) * 2008-12-19 2010-06-29 주식회사 케이티 Terminal, network apparatus and method for monitoring denial of service
KR101282297B1 (en) * 2012-03-20 2013-07-10 박상현 The apparatus and method of unity security with transaction pattern analysis and monitoring in network
JP2015519776A (en) * 2012-04-01 2015-07-09 オーセンティファイ・インクAuthentify Inc. Secure authentication in multi-party systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100071747A (en) * 2008-12-19 2010-06-29 주식회사 케이티 Terminal, network apparatus and method for monitoring denial of service
KR101282297B1 (en) * 2012-03-20 2013-07-10 박상현 The apparatus and method of unity security with transaction pattern analysis and monitoring in network
JP2015519776A (en) * 2012-04-01 2015-07-09 オーセンティファイ・インクAuthentify Inc. Secure authentication in multi-party systems

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112703496A (en) * 2018-09-16 2021-04-23 微软技术许可有限责任公司 Content policy based notification of application users about malicious browser plug-ins
CN112703496B (en) * 2018-09-16 2024-03-08 微软技术许可有限责任公司 Content policy based notification to application users regarding malicious browser plug-ins
KR20210022213A (en) 2019-08-19 2021-03-03 한국전자통신연구원 Apparatus for extracting certificate reputation score and operating method thereof
KR20240009302A (en) * 2022-07-13 2024-01-22 주식회사 시큐다임 Electronic apparatus and method for analyzing http traffic thereby
KR102663914B1 (en) 2022-07-13 2024-05-13 주식회사 시큐다임 Electronic apparatus and method for analyzing http traffic thereby

Similar Documents

Publication Publication Date Title
CN112383546B (en) Method for processing network attack behavior, related equipment and storage medium
Alaca et al. Device fingerprinting for augmenting web authentication: classification and analysis of methods
CN108780485B (en) Pattern matching based data set extraction
US10447730B2 (en) Detection of SQL injection attacks
KR101010302B1 (en) Security management system and method of irc and http botnet
Bortolameotti et al. Decanter: Detection of anomalous outbound http traffic by passive application fingerprinting
CN109274637B (en) System and method for determining distributed denial of service attacks
US10728267B2 (en) Security system using transaction information collected from web application server or web server
WO2016006520A1 (en) Detection device, detection method and detection program
US11962611B2 (en) Cyber security system and method using intelligent agents
US11616812B2 (en) Deceiving attackers accessing active directory data
KR101658450B1 (en) Security device using transaction information obtained from web application server and proper session id
JP6524789B2 (en) Network monitoring method, network monitoring program and network monitoring device
KR101658456B1 (en) Security device using transaction information obtained from web application server
CN107733699B (en) Internet asset security management method, system, device and readable storage medium
KR101650475B1 (en) Security device using transaction information obtained from web server
CN114760083B (en) Method, device and storage medium for issuing attack detection file
KR101201629B1 (en) Cloud computing system and Method for Security Management for each Tenant in Multi-tenancy Environment
KR101754195B1 (en) Method for security enhancement based on multi log gathering server
JP5743822B2 (en) Information leakage prevention device and restriction information generation device
US11632393B2 (en) Detecting and mitigating malware by evaluating HTTP errors
CN112637171A (en) Data traffic processing method, device, equipment, system and storage medium
KR102070607B1 (en) Database security device based on user identification via web application server
KR100564438B1 (en) Device for detecting and preventing system hacking
CN116032500A (en) Service access flow control method, device, equipment and medium

Legal Events

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

Payment date: 20190611

Year of fee payment: 4