KR20080044145A - Anomaly detection system and method of web application attacks using web log correlation - Google Patents

Anomaly detection system and method of web application attacks using web log correlation Download PDF

Info

Publication number
KR20080044145A
KR20080044145A KR1020070059535A KR20070059535A KR20080044145A KR 20080044145 A KR20080044145 A KR 20080044145A KR 1020070059535 A KR1020070059535 A KR 1020070059535A KR 20070059535 A KR20070059535 A KR 20070059535A KR 20080044145 A KR20080044145 A KR 20080044145A
Authority
KR
South Korea
Prior art keywords
web
web log
log
correlation analysis
request
Prior art date
Application number
KR1020070059535A
Other languages
Korean (ko)
Other versions
KR100894331B1 (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 한국전자통신연구원
Publication of KR20080044145A publication Critical patent/KR20080044145A/en
Application granted granted Critical
Publication of KR100894331B1 publication Critical patent/KR100894331B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting

Abstract

A system and a method for detecting web application attacks by using a web log correlation analysis are provided to detect unknown attacks according as determining whether an access to a specific web page is normal or not, and to reduce false positive rate. A system for detecting web application attacks includes a web log preprocessor(110), a web log database(120), a web log correlation unit(130), and a correlation analysis information database(133). The web log preprocessor converts log information stored at a web log into formatted web log, constructs the formatted web log in a formatted log and stores the formatted web log at the web log database. The formatted web log stored at the web log database is transferred to a web log correlation unit. The web log correlation unit, including a connection state analysis unit(131) and a similarity measurement unit(132), calls the formatted web log, analyzes the formatted web log, and detects an intrusion with respect to a client request by using the analysis result. The connection state analysis unit manages site topology information, namely detects an abnormal access to a site by maintaining information on a state of connection between web pages. The connection state analysis unit determines an abnormal access or not by using a status code of the formatted web log in the formatted log table. Then, the connection state analysis unit stores a query string of a user to the correlation analysis information database in case of determining that an access to the web site is abnormal. The similarity measurement unit checks whether there exists string similar to query string of an attacker at the correlation analysis information database by calculating similarity of the query string of the attacker on the basis of the Ratcliff pattern matching algorithm.

Description

웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 침입 탐지 시스템 및 방법{Anomaly Detection System and Method of Web Application Attacks using Web Log Correlation}Anomaly Detection System and Method of Web Application Attacks using Web Log Correlation}

도 1은 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템을 나타내는 구성도,1 is a block diagram showing an abnormal behavior detection system of a web application attack using web log correlation analysis;

도 2는 웹 로그 상호연관기 내 유사도 측정기에서 수행하는 유사도 비교 메커니즘의 예시를 보여주는 도,2 shows an example of a similarity comparison mechanism performed by a similarity measurer in a web log correlator.

도 3은 사용자의 웹 페이지 접근 방법에 대한 설명도로서, (a)는 특정 페이지로의 순차 접근을, (b)는 특정 페이지로의 직접 접근을 보여주는 도,3 is an explanatory diagram of a user accessing a web page, (a) shows sequential access to a specific page, (b) shows direct access to a specific page,

도 4는 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템의 동작 과정을 나타낸 순서도이다.4 is a flowchart illustrating an operation process of an abnormal behavior detection system of a web application attack using web log correlation analysis according to the present invention.

<도면의 주요 구성요소에 대한 부호 설명><Description of Signs for Major Components of Drawings>

100. 웹 애플리케이션 공격의 비정상 행위 탐지 시스템100. Anomaly Detection System of Web Application Attack

110. 웹 로그 전처리기 120. 정형화된 웹 로그 DB(데이터베이스)110. Web log preprocessor 120. Standardized web log DB (database)

130. 웹 로그 상호연관기 131. 연결상태 분석기130. Web Log Correlator 131. Connection Status Analyzer

132. 유사도 측정기 133. 상호연관분석 정보 DB132. Similarity Meter 133. Correlation Analysis DB

본 발명은 웹 로그의 상호연관분석을 이용한 웹 기반 애플리케이션 공격의 비정상 행위 탐지 시스템 및 방법에 관한 것으로, 더욱 상세하게는 특정 웹 페이지로의 접근에 대한 정상 유무를 판단하기 위해 사이트 토폴로지 정보를 구축하여 사이트 토폴로지에 속하지 않는 파일 접근을 탐지하고, 또한 웹 로그의 문자열의 유사도를 이용하여 사용자의 비정상 요청을 탐지할 수 있는 시스템 및 방법에 관한 것이다.The present invention relates to a system and method for detecting abnormal behavior of a web-based application attack using correlation analysis of web logs, and more particularly, by constructing site topology information to determine whether or not access to a specific web page is normal. The present invention relates to a system and method for detecting file access that does not belong to a site topology, and detecting abnormal requests of a user by using similarity of strings in a web log.

오늘날 웹은 기업과 학교, 여러 기관의 주요 활동과 경쟁력에 큰 영향을 미치는 중요한 기반 시설로 인정받고 있다. 웹 활용의 증가와 함께 웹 애플리케이션에 대한 침해 사고 또한 급증하고 있는 추세이며 웹 애플리케이션의 공격기법은 점점 더 복잡해지고 새로워지고 있다.Today, the Web is recognized as an important infrastructure that has a major impact on the major activities and competitiveness of businesses, schools, and institutions. With the increase of web usage, the incidence of web applications is increasing rapidly, and the attack techniques of web applications are getting more complicated and new.

이러한 침해사고를 예방하기 위해 각종 웹 애플리케이션 보안 대책이 적용되고 있다. 웹 애플리케이션 침입 탐지 시스템은 이러한 보안대책 중 하나로서, 웹 보안 위협이 발생하였을 경우 이를 사전에 탐지함으로써 사고를 예방한다.In order to prevent such a breach, various web application security measures are applied. Web application intrusion detection system is one of such security measures, and prevents accidents by detecting web security threats in advance.

웹 애플리케이션 침입 탐지 시스템의 접근 방법은 기존의 전통적인 네트워크 기반의 침입 탐지 기법과 동일하게 특정한 시그너쳐의 패턴을 탐지하는 오용 탐지 기법들이 주로 활용되었다.In the web application intrusion detection system approach, the misuse detection technique that detects a specific signature pattern is mainly used like the traditional network-based intrusion detection technique.

오용 탐지 기술은 다음의 두 가지 이유로 웹 애플리케이션 공격의 위협에 적용하기에 적합하지 않다. 첫째, 오용 탐지는 기술적인 한계가 있다. 오직 알려진 공격과 고정된 패턴만 탐지할 수 있으며 오용 탐지를 우회하는 기술이 존재한다. 그리고 암호화된 공격들을 탐지할 수 없다. 둘째, 관리 운용상의 한계가 있다. 일반 도메인에 가용한 공격 시그너쳐 대부분이 보호하고자 하는 웹 서버 및 웹 애플리케이션에는 부적절하다. 웹 서버 및 웹 애플리케이션의 환경을 고려하지 않은 침입 탐지 시스템은 많은 침입 판단 오류를 발생한다.Misuse detection technology is not suitable for use in web application attack threats for two reasons: First, misuse detection has technical limitations. Only known attacks and fixed patterns can be detected, and techniques exist to circumvent misuse detection. And encrypted attacks cannot be detected. Second, there are limitations in management operation. Most of the attack signatures available on common domains are inappropriate for web servers and web applications that you want to protect. Intrusion detection systems that do not consider the environment of web servers and web applications generate many intrusion determination errors.

이러한 오용 탐지 기술의 한계를 극복하기 위하여 오용 탐지 기술은 비정상행위 탐지 기술과의 융합이 필요하다.In order to overcome this limitation of misuse detection technology, misuse detection technology needs to be fused with abnormal behavior detection technology.

본 발명은 상기한 바와 같이 오용탐지 기술의 문제점을 해결하기 위한 것으로, 본 발명의 목적은 알려지지 않은 새로운 공격이 발생하더라도 공격자의 시행착오 정보가 남아있는 웹 로그에 대한 웹 로그 상호연관분석을 적용하여 웹 기반 애플리케이션 공격의 비정상 행위를 탐지할 수 있는 시스템 및 방법을 제공하는 것이다.The present invention is to solve the problem of the misuse detection technology as described above, the object of the present invention is to apply a web log correlation analysis on the web log that remains the attacker's trial and error information even if a new unknown attack occurs It provides a system and method for detecting abnormal behavior of web-based application attacks.

따라서 상기한 본 발명의 목적을 이루기 위해 본 발명의 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템은 특정 웹 페이지로 의 접근에 대한 정상 유무를 판단하기 위해 Ratcliff의 패턴 매칭 알고리즘을 이용하여 웹 로그에 저장된 질문 문자열(query string)과 요청 질문 문자열 간의 유사도를 비교해 비정상 요청 행위를 탐지하는 것을 특징으로 한다.Therefore, in order to achieve the above object of the present invention, the abnormal behavior detection system of web application attack using the web log correlation analysis of the present invention uses Ratcliff's pattern matching algorithm to determine whether or not access to a specific web page is normal. By comparing the similarity between the query string stored in the web log and the request query string to detect abnormal request behavior.

한편, 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 방법은 (a) 특정 웹 페이지에 대한 접근 요청에 대해 정형화된 웹 로그와 요청 질문 문자열을 웹 로그 상호연관분석을 수행하여 유사도를 비교하는 단계와, (b) 상기 비교 결과, 유사 질문 문자열의 유무에 따라 정상 접근 및 비정상 접근을 판단하는 단계를 포함하는 것을 특징으로 한다.Meanwhile, the method for detecting abnormal behavior of a web application attack using web log correlation analysis according to the present invention includes (a) performing web log correlation analysis on a web log and a request question string for a web page access request. Comparing the similarities, and (b) determining normal access and abnormal access according to the presence or absence of a similar question string.

본 발명에서 제시하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템 및 방법에서는 공격자가 목적 시스템의 환경을 모르기 때문에 발생하는 시행착오의 흔적이 비정상 행위 탐지를 위한 단서로 이용된다.In the system and method for detecting abnormal behavior of web application attacks using the web log correlation analysis proposed in the present invention, the trace of trial and error that occurs because the attacker does not know the environment of the target system is used as a clue for detecting the abnormal behavior.

또한, 본 발명은 비정상 요청 행위를 탐지하기 위해 Apache나 ⅡS와 같은 일반적인 웹 서버의 로그를 분석하고, 또한, 웹 서버 자체의 취약점을 이용한 공격이 아닌 웹 애플리케이션의 취약점을 이용한 공격에 초점을 맞추고 있다.In addition, the present invention analyzes the logs of general web servers such as Apache and IIS to detect abnormal request behaviors, and also focuses on attacks using web application vulnerabilities rather than attacks using the web server's own vulnerabilities. .

이하 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템에 대하여 첨부된 도면을 이용하여 상세하게 설명한다.Hereinafter, a system for detecting abnormal behavior of a web application attack using web log correlation analysis according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템의 전체 구성을 나타낸 것이다.Figure 1 shows the overall configuration of the abnormal behavior detection system of web application attack using web log correlation analysis according to the present invention.

본 발명의 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)은 웹 공격 자들이 공격 대상 컴퓨터의 환경적 요인을 모르기 때문에, 공격을 성공시키기 위해서는 여러 번 공격 시도를 해야 한다는 점을 이용하여, 웹 로그에 남아 있는 상태코드 상에 여러 번 비정상 처리된 웹 페이지 요청과 유사도가 높은 웹 페이지 요청이 있으면 이를 공격으로 판단한다.The abnormal behavior detection system 100 of the web application attack according to the present invention uses the fact that web attackers do not know the environmental factors of the target computer, so that the attack must be attempted several times in order to succeed. If there is a web page request with high similarity to the web page request that has been abnormally processed several times on the remaining status code, it is determined as an attack.

즉, 본 발명의 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)은 웹 페이지 요청간의 유사도 비교에 의해 이루어지는 웹 로그 상호연관분석을 이용한다.That is, the abnormal behavior detection system 100 of the web application attack of the present invention uses the web log correlation analysis made by comparing the similarity between web page requests.

도 1을 참조하면, 사용자(10)가 임의의 사이트에 접속할 경우, 해당 사이트의 웹 애플리케이션(30)은 웹 서버(40)상에서 사용자(10)의 요청을 처리한 후 발생하는 로그를 웹 로그(50)에 저장한다.Referring to FIG. 1, when a user 10 accesses an arbitrary site, the web application 30 of the site may log a log generated after processing the request of the user 10 on the web server 40. 50).

그런 다음, 본 발명에 따른 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)이 웹 로그(50)에 저장된 로그 정보를 이용해 사용자의 비정상 요청 행위를 탐지한다.Then, the abnormal behavior detection system 100 of the web application attack according to the present invention detects the abnormal request behavior of the user using log information stored in the web log 50.

구체적으로, 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)은 웹 로그 전처리기(110), 정형화된 웹 로그 DB(데이터베이스)(120), 웹 로그 상호연관기(130), 상호연관분석 정보 DB(133)를 포함하여 구성되며, 웹 로그 상호연관기(130)는 연결상태 분석기(131)와 유사도 측정기(132)를 포함하여 구성된다.Specifically, the abnormal behavior detection system 100 of a web application attack includes a web log preprocessor 110, a formal web log DB (database) 120, a web log correlator 130, and a correlation analysis information DB ( 133, the web log correlator 130 includes a connection state analyzer 131 and a similarity measurer 132.

웹 로그 전처리기(110)는 웹 로그(50)에 저장된 로그 정보를 정형화한 웹 로그로 변환하는 작업을 수행한다. 그런 다음, 정형화된 웹 로그를 아래 [표]와 같이 정형화된 로그 테이블로 구성하여 정형화된 웹 로그 DB(120)에 저장한다. 이후에 정형화된 웹 로그 DB(120)에 저장된 정형화된 웹 로그는 웹 로그 상호연관기(130)로 전달되어 분석된다.The web log preprocessor 110 converts the log information stored in the web log 50 into a formatted web log. Then, the structured web log is organized into a structured log table as shown in the following [Table] and stored in the structured web log DB (120). After that, the structured web log stored in the structured web log DB 120 is transmitted to the web log correlator 130 for analysis.

[표] 정형화된 로그 테이블[Table] Formatted Log Table

Figure 112007043946861-PAT00001
Figure 112007043946861-PAT00001

웹 로그 상호연관기(130)는 연결상태 분석기(131)와 유사도 측정기(132)로 구성되며, 정형화된 웹 로그를 호출하여 분석한 후, 분석한 결과를 가지고 클라이언트 요청에 대한 침입을 탐지한다.The web log correlator 130 is composed of a connection state analyzer 131 and a similarity measurer 132. The web log correlator 130 detects an invasion of a client request with the analyzed result by calling and analyzing a standardized web log.

연결상태 분석기(131)는 사이트 토폴로지 정보를 관리한다. 즉, 웹 페이지 간 연결관계에 대한 정보를 유지함으로써 사이트의 비정상 접근을 탐지한다. 또한, [표]의 정형화된 로그 테이블에서 정형화된 웹 로그의 상태 코드(status code)를 이용해 비정상 접근 유무를 판단한다.The connection state analyzer 131 manages site topology information. That is, it detects abnormal access of the site by maintaining information about the connection relations between web pages. Also, in the standardized log table of [Table], the presence or absence of abnormal access is determined using the status code of the standardized web log.

즉, 연결상태 분석기(131)는 사용자가 웹 사이트 내 페이지로 질문 문자열을 전송했을 때, 상태 코드가 2xx이면 정상 접근으로 판단하고, 상태 코드가 2xx가 아닌 4xx, 5xx이면 비정상 접근으로 판단한다.That is, when the user transmits a question string to the page in the web site, the connection state analyzer 131 determines that the access code is normal when the status code is 2xx, and the abnormal access when the status code is 4xx and 5xx instead of 2xx.

그런 다음, 웹 사이트로 비정상 접근으로 판단된 경우의 해당 사용자의 요청 정보(질문 문자열)를 상호연관분석 정보 데이터베이스(133)에 저장한다.Then, the request information (question string) of the user when it is determined that the abnormal access to the web site is stored in the correlation analysis information database 133.

유사도 측정기(132)는 공격자가 전체 공격 흐름 내에서 조금씩 질문 문자열을 변경해 가면서 목표 사이트를 공격하기 때문에, 공격자의 질문 문자열에 대해 Ratcliff의 패턴 매칭 알고리즘(J.,W.Ratcliff and D.Metzener의 "Pattern Matching: The Gestalt Approach", Dr. Dobb's Journal, July 1988. 참조)을 사용해 질문 문자열의 유사도를 계산함으로써 상호연관분석 정보 데이터베이스(133)에 공격자의 질문 문자열과 유사한 문자열이 존재하는지 검사한다.The similarity measurer 132 attacks the target site as the attacker changes the question string little by little within the overall attack flow, so that Ratcliff's pattern matching algorithm (J., W.Ratcliff and D.Metzener's " Pattern Matching: The Gestalt Approach ", Dr. Dobb's Journal, July 1988.) to determine the similarity of question strings to check if a string similar to the attacker's question string exists in the correlation information database (133).

즉, 공격자가 요청한 질문 문자열과 상호연관분석 정보 데이터베이스(133)에 저장된 질문 문자열 간의 유사도 검사를 수행하여 비정상적인 사이트 접근을 탐지한다.That is, the similarity check is performed between the question string requested by the attacker and the question string stored in the correlation analysis information database 133 to detect abnormal site access.

검사결과, 유사한 문자열이 존재하면, 공격자의 웹 사이트로의 접근을 비정상 요청 행위로 간주하고, 공격자의 해당 요청에 대한 요청 정보(질문 문자열)와 해당 로그 정보 및 해당 IP의 모든 로그를 상호연관분석 정보 데이터베이스(133)에 저장한다.If a similar string is found, the attacker's access to the web site is regarded as an abnormal request behavior, and the request information (question string), the log information, and all logs of the IP for the attacker's request are correlated. The information is stored in the database 133.

또는 상호연관분석 정보 데이터베이스(133)에서 유사한 문자열이 존재하지 않더라도 요청하는 웹 로그의 상태코드가 2xx가 아니면 비정상 요청으로 간주하고 해당 요청에 대한 로그 정보 및 해당 IP의 모든 로그를 상호연관분석 정보 데이터베이스(133)에 저장한다.Alternatively, even if a similar string does not exist in the correlation information database 133, if the status code of the requesting web log is not 2xx, it is regarded as an abnormal request, and log information about the request and all logs of the corresponding IP are related to the correlation information database. Save to (133).

이 저장된 웹 로그 상호연관분석 정보는 이후 사용자 요청이 정상인지 비정 상인지 판단하는 요소로 이용된다.The stored web log correlation analysis information is then used as an element to determine whether the user request is normal or abnormal.

도 2는 웹 로그 상호연관기(130) 내 유사도 측정기(132)에서 수행하는 유사도 비교 메커니즘의 일실시예로써 순차 접근으로 공격자가 웹 사이트에 접근하는 과정을 보여준다. 그리고 순차 접근에 대해서는 도 3에서 설명한다.FIG. 2 illustrates an example of a similarity comparison mechanism performed by the similarity measurer 132 in the web log correlator 130, in which an attacker accesses a web site using a sequential approach. And the sequential approach is demonstrated in FIG.

먼저, 공격자가 웹 사이트를 공격하기 위해 공격을 진행하는 동안에 웹 로그에는 공격자에 의한 웹 사이트에 대한 정보 수집 행위의 흔적, 다양한 웹 사이트의 환경 요인에 의한 시행착오의 흔적, 취약점을 공격하여 성공한 흔적들이 남게 된다.First, while an attacker is attempting to attack a web site, the web log contains traces of information gathering activities by the attacker, trial and error caused by environmental factors of various websites, and successes by attacking vulnerabilities. Will remain.

여기서 중요한 점은 공격자가 웹 서버 및 웹 애플리케이션의 환경을 모르기 때문에 공격이 성공하여 웹 사이트에 침입하기 위해서는 여러 번의 공격 시도가 반복된다는 것이다.The important point here is that because the attacker does not know the environment of the web server and web application, several attack attempts are repeated in order for the attack to succeed and break into the web site.

즉, 공격자가 최근 자동화된 도구를 사용하여 웹 사이트를 공격할 경우, 특정 환경에 맞추어 제작된 자동화 공격 도구를 이용한 공격이 성공하기 위해서는 여러 번의 시행착오를 거쳐야 한다. 그리고 자동화 공격 도구를 사용하지 않더라도 이러한 시행착오는 발생한다.In other words, if an attacker recently attacks a web site using an automated tool, an attack using an automated attack tool designed for a specific environment requires several trial and error. And even without the use of automated attack tools, this trial and error occurs.

공격자가 공격에 성공하기 전의 이러한 시행착오는 이후 공격자가 알려지지 않은 새로운 공격이 성공하더라도 공격자의 시행착오의 흔적들이 웹 로그에 남게 되고, 이 웹 로그에 남아 있는 정보는 공격자의 침입을 탐지할 수 있는 중요한 정보가 된다.This trial and error before the attacker succeeds, but even after a new unknown attacker succeeds, traces of the attacker's trial and error remain in the web log, and the information left in this web log can detect the attacker's intrusion. This is important information.

도 2를 참조하면, 공격자는 1, 2, 3번 요청과 같이 취약한 웹 페이지에 접근하기 전까지 정상적인 웹 페이지 요청을 수행한다. 공격자가 취약한 웹 페이지에 접근했을 때 4번 요청과 같이 비정상 문자열을 목표 웹 페이지로 전송한다.Referring to FIG. 2, an attacker performs a normal web page request until the vulnerable web page is accessed, such as requests 1, 2, and 3. When an attacker accesses a vulnerable web page, it sends an abnormal string to the target web page, as in request # 4.

공격자는 목표 웹 서버 및 웹 애플리케이션의 환경을 모르기 때문에 4번 요청과 같이 취약한 웹 페이지에 대한 공격이 실패하게 된다. 이때 공격자는 질문 문자열을 수정하여 재공격하게 되고, 4-2번 요청과 같이 공격이 성공할 때까지 공격 시도는 반복된다.Since the attacker does not know the target web server and web application environment, the attack on the vulnerable web page such as request 4 will fail. At this time, the attacker will attack again by modifying the question string, and the attack attempt will be repeated until the attack is successful as in 4-2 request.

4-2번과 4-3번 요청은 공격이 성공한 요청이므로 연결상태 분석기(131)에서는 정상 접근으로 판단한다. 그러나 이전의 4번 요청과 4-1번 요청에서 공격자가 요청한 질문 문자열과 4-2번과 4-3번 요청에서 공격자가 요청한 질문 문자열 사이에는 높은 유사도를 가지게 되므로 유사도 측정기(132)에서 문자열의 유사도를 검사하여 비정상 접근 탐지가 가능하다.Since the 4-2 and 4-3 requests are successful attacks, the connection state analyzer 131 determines that the access is normal. However, there is a high similarity between the question string requested by the attacker in previous requests 4 and 4-1 and the question string requested by the attacker in requests 4-2 and 4-3. By checking similarity, abnormal access detection is possible.

왜냐하면 공격자는 전체 공격 흐름 내에서 조금씩 질문 문자열을 변경해 가며 목표 사이트를 공격하기 때문에 HTTP 상태 코드가 정상 접근으로 나타나더라도 질문 문자열의 유사도를 검사하여 비정상 문자열로 판단될 수 있다.Because the attacker attacks the target site by changing the question string little by little within the whole attack flow, even if the HTTP status code appears to be normal access, it can be judged as an abnormal string by checking the similarity of the question string.

본 발명에서 유사도 측정에는 Ratcliff의 패턴 매칭 알고리즘을 사용하였고, 생명정보학(Bioinformatics) 분야의 유사도 검사 알고리즘 등을 활용할 수도 있다.In the present invention, Ratcliff's pattern matching algorithm is used for similarity measurement, and similarity checking algorithms in the field of bioinformatics may be used.

참고로 사용자의 웹 페이지 접근 과정에 대해 알아보면, 도 3은 사용자의 웹 페이지 접근 방법에 대한 설명도로서, 웹 페이지 접근 방법은 특정 페이지로의 순 차 접근과 특정 페이지로의 직접 접근으로 나뉜다.For reference, referring to a user's web page access process, FIG. 3 is an explanatory diagram of a user's web page access method. The web page access method is divided into a sequential access to a specific page and a direct access to a specific page.

도 3의 (a)는 K 페이지(특정 페이지)로 접근하기 위해 주 화면부터 링크를 따라 순차적으로 K 페이지에 접근하는 순차 접근과정을 나타낸다. 즉, 특정 페이지로의 순차 접근은 사용자가 특정 페이지를 요청했을 경우 사이트의 주 화면부터 특정 페이지 사이의 페이지들을 거쳐 순차적으로 접근하는 것이다.3 (a) shows a sequential access process of sequentially accessing K pages along a link from a main screen to access K pages (specific pages). That is, sequential access to a specific page is sequentially accessed through pages between the main screen of the site and the specific page when the user requests a specific page.

도 3의 (b)는 K 페이지(특정 페이지)로 바로 접근하는 것을 나타낸다. 즉, 특정 페이지로의 직접 접근은 사용자가 특정 페이지를 요청했을 경우 사이트의 주 화면부터 특정 페이지 사이의 페이지들을 거쳐 순차적으로 접근하는 것이 아니라 바로 특정 페이지로 접근하는 것이다.3 (b) shows direct access to a K page (specific page). In other words, when a user requests a specific page, the direct access to the specific page is to access the specific page instead of sequentially accessing the pages between the main screen and the specific page of the site.

그러면 이상과 같이 설명한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)의 동작에 의해 비정상 요청 행위를 탐지하는 침입 탐지 방법에 대해 첨부된 도면을 이용하여 설명한다.Next, an intrusion detection method for detecting an abnormal request behavior by the operation of the abnormal behavior detection system 100 of the web application attack described above will be described with reference to the accompanying drawings.

도 4는 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템(100)의 동작 과정을 나타낸 순서도이다.4 is a flowchart illustrating an operation process of an abnormal behavior detection system 100 of a web application attack using web log correlation analysis according to the present invention.

웹 로그 전처리기(110)에서 웹 로그(50)에 저장된 로그 정보를 정형화된 웹 로그로 변환하여 저장한다(S400).The web log preprocessor 110 converts the log information stored in the web log 50 into a standardized web log and stores the converted log information (S400).

그런 다음, 공격자의 특정 웹사이트에 대한 요청이 있으면, 웹 로그 상호연관기(130)는 정형화된 웹 로그와 상호연관분석 정보 DB(133)에 저장된 요청 질문 문자열을 비교하고, 상태코드를 확인한다(S401).Then, if there is a request for an attacker's specific website, the web log correlator 130 compares the formatted question log with the request question string stored in the correlation information DB 133 and checks the status code. (S401).

구체적으로 유사도 측정기(132)에서 웹 로그 상호연관분석을 통해 유사한 질문 문자열이 존재하는지 검사한다(S402). 검사결과, 유사한 질문 문자열이 존재하면(YES), 비정상 요청 행위로 판단하고, 해당 요청에 대한 로그 정보 및 해당 IP의 모든 로그를 상호연관분석 정보 데이터베이스(133)에 저장한다(S405).In detail, the similarity measurer 132 checks whether a similar question string exists through web log correlation analysis (S402). As a result of the check, if a similar question string exists (YES), it is determined as an abnormal request behavior, and log information about the request and all logs of the corresponding IP are stored in the correlation analysis information database 133 (S405).

한편, 유사한 질문 문자열이 존재하지 않으면(NO), 연결상태 분석기(131)에서 요청 질문 문자열의 상태 코드가 2xx인지 확인한다(S403). 상태 코드가 2xx이면(YES) 정상 요청 행위로 판단하고(S404), 상태 코드가 2xx이 아니면(NO) 비정상 요청 행위로 판단하여 해당 요청에 대한 로그 정보 및 해당 IP의 모든 로그를 상호연관분석 정보 데이터베이스(133)에 저장한다(S405).On the other hand, if a similar question string does not exist (NO), the connection state analyzer 131 checks whether the status code of the request question string is 2xx (S403). If the status code is 2xx (YES), it is determined to be a normal request behavior (S404), and if the status code is not 2xx (NO), it is determined to be an abnormal request behavior and correlates log information about the request and all logs of the corresponding IP. The data is stored in the database 133 (S405).

이상에서 몇 가지 실시예를 들어 본 발명을 더욱 상세하게 설명하였으나, 본 발명은 이러한 실시예로 국한되는 것이 아니고 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다.Although the present invention has been described in more detail with reference to some embodiments, the present invention is not limited to these embodiments, and various modifications can be made without departing from the spirit of the present invention.

상술한 바와 같이, 본 발명에 따른 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템 및 방법은 알려지지 않은 새로운 공격이 발생하더라도 공격자의 시행착오 정보가 남아있는 웹 로그를 이용함으로써 알려지지 않은 새로운 공격을 탐지할 수 있으며, 공격자가 웹 애플리케이션 공격을 시작할 시점부터 실제 유사도 측정을 위한 비교 정보가 생성되기 때문에 기존 침입 탐 지 시스템의 학습에 의한 비교 정보 생성보다 오탐지(false positive)율을 낮출 수 있다.As described above, the system and method for detecting abnormal behavior of a web application attack using the web log correlation analysis according to the present invention uses an unknown web log by using the web log in which the attacker's trial and error information remains even if a new unknown attack occurs. Attacks can be detected and the false positive rate can be lower than the comparison information generated by learning of the existing intrusion detection system because the comparison information is generated from the time when the attacker starts the web application attack. have.

Claims (11)

웹 로그에 저장된 로그 정보를 정형화된 웹 로그로 변환하는 웹 로그 전처리기;A web log preprocessor for converting log information stored in the web log into a standardized web log; 상기 정형화된 웹 로그를 저장하는 정형화된 웹 로그 데이터베이스; 및A structured web log database for storing the structured web log; And 상기 정형화된 웹 로그의 상태 코드(status code) 확인과 사용자의 요청 질문 문자열의 유사도를 검사하는 웹 로그 상호연관분석을 통해 사용자의 요청에 대한 비정상 행위를 판단하는 웹 로그 상호연관기Web log correlator for determining abnormal behavior for the user's request through web log correlation analysis that checks the status code of the web log and the similarity of the user's request question string 를 포함하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.Abnormal behavior detection system of a web application attack using web log correlation analysis comprising a. 제1항에 있어서, 상기 웹 로그 상호연관기는,The web log correlator of claim 1, 상기 정형화된 웹 로그의 상태 코드(status code)를 이용하여 사용자의 요청에 대한 비정상 행위를 판단하는 연결상태 분석기; 및A connection state analyzer for determining abnormal behavior for a user's request by using a status code of the web log; And ratcliff의 패턴 매칭 알고리즘을 이용한 웹 로그 상호연관분석을 수행하여 상기 정형화된 웹 로그의 요청 질문 문자열과 상호연관분석 정보 데이터베이스에 저장된 질문 문자열 간의 유사도 검사를 수행하여 상기 사용자의 요청에 대한 비정상 행위를 판단하는 유사도 측정기Web log correlation using ratcliff's pattern matching algorithm is performed to determine similarity between the request question string of the standardized web log and the question string stored in the correlation analysis information database to determine abnormal behavior for the user's request. Similarity Meter 를 포함하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.Abnormal behavior detection system of a web application attack using web log correlation analysis comprising a. 제2항에 있어서, 상기 시스템은, 상기 웹 로그 상호연관기의 판단 결과 및 비정상 행위로 판단되는 경우의 상기 사용자의 요청 정보를 저장하는 상호연관분석 정보 데이터베이스를 더 포함하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.The web log according to claim 2, wherein the system further comprises a correlation analysis information database for storing the user's request information when the determination result of the web log correlator and the abnormal behavior are determined. An Anomaly Detection System of Web Application Attack Using Correlation Analysis. 제2항에 있어서, 상기 유사도 측정기에서 유사도 검사에 이용하는 질문 문자열(Query string)은 가변 길이 문자열로 특정 패턴을 가지지 않는 것을 이용하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.The abnormality detection of a web application attack using web log correlation analysis according to claim 2, wherein the query string used for the similarity check in the similarity measurer is a variable length string that does not have a specific pattern. system. 제2항에 있어서,The method of claim 2, 상기 연결상태 분석기는 상기 정형화된 웹 로그의 상태 코드가 2xx이면 정상 접근으로, 상태 코드가 2xx가 아닌 4xx, 5xx이면 비정상 접근으로 판단하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.The connection state analyzer determines that the normal web log is a normal access when the status code is 2xx, and an abnormal access when the status code is 4xx and 5xx instead of 2xx. Anomaly Detection System. 제5항에 있어서,The method of claim 5, 상기 비정상 접근으로 판단되는 경우, 해당 사용자의 요청 정보는 상호연관분석 정보 데이터베이스에 저장되는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 시스템.If it is determined that the abnormal access, the request information of the user is stored in the correlation analysis information database, characterized in that the abnormal behavior detection system for web application attack using the web log correlation analysis. (a) 특정 웹페이지에 대한 접근 요청에 대해 정형화된 웹 로그의 요청 질문 문자열에 대해 웹 로그 상호연관분석을 수행하여 상호연관분석 정보 DB에 저장된 요청 질문 문자열과 유사도를 비교하는 단계; 및(a) comparing the similarity with the request question string stored in the correlation analysis information DB by performing web log correlation analysis on the request question string of the web log formatted for the access request to a specific web page; And (b) 상기 비교 결과, 유사 문자열의 유무에 따라 정상 접근 및 비정상 접근을 판단하는 단계(b) determining normal access and abnormal access according to the presence or absence of a similar character string as a result of the comparison; 를 포함하여 구성되는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 방법.Method for detecting abnormal behavior of web application attacks using web log correlation analysis, characterized in that configured to include. 제7항에 있어서, 상기 (b)단계에서, 유사 문자열이 존재하면, 비정상 접근으로 판단하여 해당 사용자의 요청 정보를 상호연관분석 정보 데이터베이스에 저장하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 방법.The web using the web log correlation analysis according to claim 7, wherein in step (b), if a similar character string is present, it is determined as abnormal access and the request information of the user is stored in a correlation analysis information database. How to detect anomalous behavior in application attacks. 제8항에 있어서, 상기 (b)단계에서, 상기 유사 문자열이 존재하지 않으면, 정형화된 웹 로그의 요청 질문 문자열에 대한 상태 코드를 확인하여 2xx이면 정상 접근으로 판단하는 것을 특징으로 하는 웹 애플리케이션 공격의 비정상 행위 탐지 방법.The web application attack according to claim 8, wherein in step (b), if the similar string does not exist, the status code of the request question string of the standard web log is checked to determine normal access if 2xx. How to detect abnormal behaviors. 제9항에 있어서, 상기 (b)단계에서, 상기 유사 문자열이 존재하지 않으며, 상태 코드가 2xx가 아니면, 비정상 접근으로 판단하여 해당 사용자의 요청 정보를 상호연관분석 정보 데이터베이스에 저장하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 방법.10. The method of claim 9, wherein in step (b), if the similar string does not exist and the status code is not 2xx, it is determined that the access is abnormal and the request information of the user is stored in the correlation analysis information database. A method for detecting abnormal behavior of web application attack using web log correlation analysis. 제7항에 있어서, 상기 방법은, 특정 웹페이지에 대한 접근 요청을 처리한 후 웹 로그에 저장된 정보를 정형화된 웹 로그로 변환하여 저장하는 단계를 상기 (a) 단계 이전에 포함하는 것을 특징으로 하는 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의 비정상 행위 탐지 방법.The method of claim 7, wherein the method comprises converting and storing the information stored in the web log into a formal web log after the access request for a specific web page, before the step (a). A method for detecting abnormal behavior of web application attack using web log correlation analysis.
KR1020070059535A 2006-11-15 2007-06-18 Anomaly Detection System and Method of Web Application Attacks using Web Log Correlation KR100894331B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060112518 2006-11-15
KR20060112518 2006-11-15

Publications (2)

Publication Number Publication Date
KR20080044145A true KR20080044145A (en) 2008-05-20
KR100894331B1 KR100894331B1 (en) 2009-04-24

Family

ID=39662204

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070059535A KR100894331B1 (en) 2006-11-15 2007-06-18 Anomaly Detection System and Method of Web Application Attacks using Web Log Correlation

Country Status (1)

Country Link
KR (1) KR100894331B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100937020B1 (en) * 2007-12-04 2010-01-15 (주)모니터랩 Integration security system and method by tracking web-database attack detection log data
KR100989320B1 (en) * 2008-09-03 2010-10-25 충남대학교산학협력단 B-Tree Index Vector Based Web-Log High-Speed Search Method For Huge Web Log Mining And Web Attack Detection and B-tree based indexing log processor
KR101005871B1 (en) * 2010-06-01 2011-01-06 충남대학교산학협력단 B-Tree Index Vector Based Web-Log Restoration Method For Huge Web Log Mining And Web Attack Detection
KR101388090B1 (en) * 2013-10-15 2014-04-22 펜타시큐리티시스템 주식회사 Apparatus for detecting cyber attack based on analysis of event and method thereof
KR101428740B1 (en) * 2012-12-27 2014-08-08 부산대학교 산학협력단 System and Method for Automatic generating of behavioral model using web server log
KR20140106837A (en) * 2013-02-27 2014-09-04 한국전자통신연구원 Game characteristics detection apparatus and method for illegal user detection using game characteristics
WO2018016669A3 (en) * 2016-07-19 2018-03-08 주식회사 파수닷컴 Method and apparatus for generating attack string
CN108512704A (en) * 2018-04-09 2018-09-07 网易(杭州)网络有限公司 The processing method and processing device of daily record
CN114006766A (en) * 2021-11-04 2022-02-01 杭州安恒信息安全技术有限公司 Network attack detection method and device, electronic equipment and readable storage medium

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101194392B1 (en) * 2010-02-01 2012-10-24 주식회사 위즈디엔에스코리아 A real user searching system using database log information and application log information and method thereof
KR101542534B1 (en) * 2013-11-07 2015-08-06 유넷시스템주식회사 Unusual action decision system
KR101646644B1 (en) * 2015-01-26 2016-08-10 (주) 다이퀘스트 Method and system for infering associated tasks
KR102275179B1 (en) * 2015-04-24 2021-07-08 에스케이플래닛 주식회사 Method for monitoring web server based on cloud streaming service and apparatus for the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4188203B2 (en) * 2003-10-27 2008-11-26 Kddi株式会社 Log analysis apparatus, log analysis method, and log analysis program
KR20070061017A (en) * 2005-12-08 2007-06-13 한국전자통신연구원 Apparatus and method for blocking attack into web-application
KR20070077517A (en) * 2006-01-24 2007-07-27 박재철 Profile-based web application intrusion detection system and the method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100937020B1 (en) * 2007-12-04 2010-01-15 (주)모니터랩 Integration security system and method by tracking web-database attack detection log data
KR100989320B1 (en) * 2008-09-03 2010-10-25 충남대학교산학협력단 B-Tree Index Vector Based Web-Log High-Speed Search Method For Huge Web Log Mining And Web Attack Detection and B-tree based indexing log processor
KR101005871B1 (en) * 2010-06-01 2011-01-06 충남대학교산학협력단 B-Tree Index Vector Based Web-Log Restoration Method For Huge Web Log Mining And Web Attack Detection
KR101428740B1 (en) * 2012-12-27 2014-08-08 부산대학교 산학협력단 System and Method for Automatic generating of behavioral model using web server log
KR20140106837A (en) * 2013-02-27 2014-09-04 한국전자통신연구원 Game characteristics detection apparatus and method for illegal user detection using game characteristics
KR101388090B1 (en) * 2013-10-15 2014-04-22 펜타시큐리티시스템 주식회사 Apparatus for detecting cyber attack based on analysis of event and method thereof
WO2018016669A3 (en) * 2016-07-19 2018-03-08 주식회사 파수닷컴 Method and apparatus for generating attack string
US11496502B2 (en) 2016-07-19 2022-11-08 Sparrow Co., Ltd. Method and apparatus for generating attack string
CN108512704A (en) * 2018-04-09 2018-09-07 网易(杭州)网络有限公司 The processing method and processing device of daily record
CN114006766A (en) * 2021-11-04 2022-02-01 杭州安恒信息安全技术有限公司 Network attack detection method and device, electronic equipment and readable storage medium

Also Published As

Publication number Publication date
KR100894331B1 (en) 2009-04-24

Similar Documents

Publication Publication Date Title
KR100894331B1 (en) Anomaly Detection System and Method of Web Application Attacks using Web Log Correlation
KR102046789B1 (en) Deep-learning-based intrusion detection method, system and computer program for web applications
US8024804B2 (en) Correlation engine for detecting network attacks and detection method
US10721245B2 (en) Method and device for automatically verifying security event
CN104468477B (en) A kind of WebShell detection method and system
CN113660224B (en) Situation awareness defense method, device and system based on network vulnerability scanning
CN112003838B (en) Network threat detection method, device, electronic device and storage medium
CN105491053A (en) Web malicious code detection method and system
WO2007120383A2 (en) Client side attack resistant phishing detection
EP3566166B1 (en) Management of security vulnerabilities
US10505986B1 (en) Sensor based rules for responding to malicious activity
CN108337269B (en) WebShell detection method
KR20160140316A (en) Method and system for detecting a malicious code
CN107733699B (en) Internet asset security management method, system, device and readable storage medium
WO2017056121A1 (en) Method for the identification and prevention of client-side web attacks
CN107426196B (en) Method and system for identifying WEB invasion
US9230105B1 (en) Detecting malicious tampering of web forms
CN113055399A (en) Attack success detection method, system and related device for injection attack
CN113190839A (en) Web attack protection method and system based on SQL injection
CN113411297A (en) Situation awareness defense method and system based on attribute access control
CN114024773B (en) Webshell file detection method and system
JP2013152497A (en) Black list extraction device, extraction method and extraction program
Roopak et al. On effectiveness of source code and SSL based features for phishing website detection
KR101464736B1 (en) Security Assurance Management System and Web Page Monitoring Method
CN111131166B (en) User behavior prejudging method and related equipment

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130410

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140326

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160411

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee