KR20190038524A - Method and apparatus for monitoring users of web server - Google Patents

Method and apparatus for monitoring users of web server Download PDF

Info

Publication number
KR20190038524A
KR20190038524A KR1020190037057A KR20190037057A KR20190038524A KR 20190038524 A KR20190038524 A KR 20190038524A KR 1020190037057 A KR1020190037057 A KR 1020190037057A KR 20190037057 A KR20190037057 A KR 20190037057A KR 20190038524 A KR20190038524 A KR 20190038524A
Authority
KR
South Korea
Prior art keywords
user
information
web server
movement
determining whether
Prior art date
Application number
KR1020190037057A
Other languages
Korean (ko)
Other versions
KR102003450B1 (en
Inventor
김영주
Original Assignee
(주)이루엔테크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이루엔테크 filed Critical (주)이루엔테크
Priority to KR1020190037057A priority Critical patent/KR102003450B1/en
Publication of KR20190038524A publication Critical patent/KR20190038524A/en
Application granted granted Critical
Publication of KR102003450B1 publication Critical patent/KR102003450B1/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

According to an embodiment of the present invention, a method for monitoring a web server comprises the steps of: identifying a first user based on a unique identification means entered by the first user when the first user connects to a web server; determining whether the identified first user matches a second user that is a true user of the identification means based on at least one of a plurality of pieces of connection information including at least one piece of detailed access information among the IP address, time, and day of week stored in the user DB, and probability information about movement between internal pages of the web server; and when the first user and the second user do not match, transmitting the user inconsistency information including the determination result to a preset contact person or the second user.

Description

웹 서버 사용자의 모니터링 방법 및 장치{METHOD AND APPARATUS FOR MONITORING USERS OF WEB SERVER}[0001] METHOD AND APPARATUS FOR MONITORING USERS OF WEB SERVER [0002]

본 발명은 웹 서버 사용자의 행위를 모니터링하여 이상 징후를 탐지하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for monitoring an action of a web server user to detect an abnormal symptom.

회원제로 운영되는 웹사이트의 회원정보(주로, 사용자 아이디 및 패스워드)가 악의의 제3자에게 누출되면, 그 악의의 제3자는 정상 회원의 정보를 도용하여, 웹사이트에 접속하고, 불법적인 행위를 할 수 있다. 또한, 적법한 정상 사용자가 때때로 금지된 행위(예, 대량의 데이터베이스 내용 탈취)를 할 수도 있다.If the member information (mainly user ID and password) of a website operated by a member is leaked to a malicious third party, the malicious third party may steal information of the normal member, access the website, . In addition, legitimate normal users may occasionally perform prohibited actions (eg, large database content hijacking).

이러한 문제로 인하여, 웹사이트의 관리자는 사용자들에 대하여 아이디와 패스워드 외에도 더 많은 방법으로 정상 사용자인지를 확인하곤 한다. 그러나, 이로 인하여 정상적인 사용자가 해당 웹사이트의 접속에 어려움(예, 지정된 질문에 대한 정답을 버리는 경우)을 겪는 경우도 발생하여, 관리자가 이를 쉽게 적용을 할 수 없는 문제가 있다. Due to this problem, the administrator of the web site often confirms that the user is a normal user in addition to the ID and password. However, there is a case in which a normal user suffers difficulty in accessing the corresponding website (for example, throwing away the correct answer to the designated question), so that the administrator can not easily apply it.

따라서, 정상적으로 사용하는 각 사용자의 평상 시의 웹페이지 접속 패턴에 대하여, 통계적인 방법과 기계학습적인 방법을 적용하여 각각의 사용자의 프로파일을 생성하고, 그 생성된 프로파일을 이용하여 웹 서버 상의 사용자 행위를 모니터링하여 이상 징후를 탐지하는 방법 및 장치의 필요성이 대두되고 있다.Therefore, a statistical method and a machine learning method are applied to a normal web page connection pattern of each user to be used normally, and a profile of each user is generated. Then, a user action on the web server There is a need for a method and an apparatus for monitoring an abnormal symptom.

관련 선행기술로는 대한민국 등록특허공보 제10-1456603호(발명의 명칭: 네트워크 트래픽 모니터링 시스템, 공개일자: 2014년 10월 24일)가 이 있다.A related prior art is Korean Patent Registration No. 10-1456603 entitled " Network Traffic Monitoring System, published on Oct. 24, 2014).

본 발명의 목적은 네트워크를 통한 웹 서버 사용자의 행위를 실시간으로 모니터링하여 이상 징후를 탐지하는 방법 및 장치를 제공하는 것이다.It is an object of the present invention to provide a method and apparatus for monitoring a user behavior of a web server through a network in real time to detect an abnormal symptom.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 웹 서버의 모니터링 방법은 제1 사용자가 웹 서버에 접속하면, 상기 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 상기 제1 사용자를 식별하는 단계; 사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 상기 웹 서버 내부 페이지 간의 이동 순서를 나타내는 복수의 이동정보 중 적어도 하나에 기초하여, 상기 식별된 제1 사용자와 상기 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단하는 단계; 및 상기 판단 결과 상기 제1 사용자와 상기 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 상기 제2 사용자에게 상기 판단 결과를 포함하는 사용자불일치정보를 전송하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method for monitoring a web server, the method comprising the steps of: when a first user accesses a web server, Identifying a user; Based on at least one of a plurality of pieces of access information including at least one detailed access information among an IP address, a time and a day of the week stored in the user DB, and a plurality of pieces of movement information indicating a movement order between the pages of the web server, Determining whether a first user and a second user that are true users of the identification means coincide with each other; And transmitting the user inconsistency information including the determination result to a preset contact person or the second user when the first user and the second user do not match as a result of the determination.

바람직하게는, 상기 웹 서버에 연동된 시스템DB에게 전송된 적어도 하나의 질의의 횟수인 질의횟수 및 상기 적어도 하나의 질의에 대응하여 전송된 결과 데이터 중 적어도 하나의 세부DB정보를 포함하는 복수의 DB이용정보가 상기 사용자DB에 더 저장되어 있을 때, 상기 제2 사용자가 일치하는지 판단하는 단계는 상기 DB이용정보에 더 기초하여, 상기 제1 사용자와 상기 제2 사용자가 일치하는지 판단할 수 있다.Preferably, a plurality of DBs including at least one detailed DB information among the result data transmitted in correspondence with the at least one query and the number of queries, which is the number of times of at least one query transmitted to the system DB linked to the web server, When the utilization information is further stored in the user DB, the step of determining whether the second user is coincident may determine whether the first user and the second user are identical based on the DB utilization information.

바람직하게는, 상기 DB이용정보가 각각의 세션(session) 단위로 상기 질의횟수 및 상기 결과 데이터 중 적어도 하나의 세부DB정보를 포함하고, 상기 DB이용정보에 더 기초하여 판단할 때, 상기 제2 사용자가 일치하는지 판단하는 단계는 상기 DB이용정보에 포함된 적어도 하나의 세부DB정보 각각의 평균 및 표준편차에 기초하는 정규분포에 대하여, 상기 제1 사용자의 접속 세션 동안의 상기 질의횟수 및 상기 결과 데이터 중 적어도 하나가 상기 정규분포에 포함될 확률이 임계확률 이상인지 여부에 따라 판단할 수 있다.Preferably, the DB utilization information includes at least one detailed DB information of the number of queries and the result data in units of each session, and when it is determined based on the DB utilization information, Wherein the step of determining whether a user is matched comprises: for a normal distribution based on an average and standard deviation of each of the at least one detailed DB information included in the DB utilization information, the number of queries during the first user's access session and the result And whether or not at least one of the data is included in the normal distribution is greater than a threshold probability.

바람직하게는, 상기 복수의 접속정보에 기초하여 판단할 때, 상기 제2 사용자가 상호 일치하는지 판단하는 단계는 상기 복수의 접속정보에 포함된 적어도 하나의 세부접속정보 각각의 빈도를 산출하는 단계; 상기 적어도 하나의 세부접속정보 각각의 빈도에 기초하여, 상기 세부접속정보 각각에 대응되는 멤버쉽 함수(membership function)의 값인 멤버쉽값(membership value)을 산출하는 단계; 및 상기 제1 사용자의 접속에 대한 상기 접속정보에 포함된 적어도 하나의 세부접속정보 각각에 대응되는 멤버쉽값을 이용하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계를 포함할 수 있다.Preferably, when determining based on the plurality of pieces of connection information, the step of determining whether the second users are mutually coinciding includes: calculating a frequency of each of the at least one detailed connection information included in the plurality of pieces of connection information; Calculating a membership value that is a value of a membership function corresponding to each of the detailed access information based on the frequency of each of the at least one detailed access information; And determining whether the first user and the second user coincide with each other using a membership value corresponding to each of the at least one detailed connection information included in the connection information for the connection of the first user .

바람직하게는, 상기 멤버쉽값을 이용하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계는 상기 적어도 하나의 세부접속정보 각각에 대한 멤버쉽값을 모두 곱하여 접속정보결과값을 산출하는 단계; 및 상기 접속정보결과값이 소정의 제1 임계치 이상인지 여부에 따라, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계를 포함할 수 있다.Preferably, the step of determining whether the first user and the second user coincide using the membership value may include multiplying all the membership values for each of the at least one detailed access information to calculate an access information result value step; And determining whether the first user and the second user coincide with each other based on whether the connection information result value is equal to or greater than a predetermined first threshold value.

바람직하게는, 상기 적어도 하나의 세부접속정보 각각의 빈도를 산출하는 단계가 소정의 기간별로 나누어 상기 적어도 하나의 세부접속정보 각각의 빈도를 산출할 때, 상기 멤버쉽값을 산출하는 단계는 상기 소정의 기간별로 차등적인 가중치를 부여하여, 상기 멤버쉽값을 산출할 수 있다.The step of calculating the frequency of each of the at least one detailed access information may further include calculating a frequency of each of the at least one detailed access information by dividing the frequency of each of the at least one detailed access information by a predetermined period, The membership value can be calculated by assigning a different weight to each period.

바람직하게는, 상기 복수의 이동정보에 기초하여 판단할 때, 상기 제2 사용자가 상호 일치하는지 판단하는 단계는 상기 복수의 이동정보에 포함된 적어도 하나의 이동 각각의 빈도를 산출하는 단계; 상기 적어도 하나의 이동 각각의 빈도에 기초하여, 상기 제2 사용자가 상기 웹 서버 내부 페이지 간의 이동 확률을 나타내는 상태천이테이블을 생성하는 단계; 및 마르코프 체인(Markov chain), 상기 상태천이테이블 및 상기 제1 사용자의 접속 동안의 상기 웹 서버 내부 간의 이동에 기초하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계를 포함할 수 있다.Preferably, when determining based on the plurality of pieces of movement information, the step of determining whether the second users are mutually coinciding includes: calculating a frequency of each of the at least one movement included in the plurality of pieces of movement information; Generating a state transition table indicating a probability of movement of the web server internal pages based on the frequency of each of the at least one movement; And determining whether the first user and the second user coincide with each other based on a Markov chain, the state transition table, and the movement between the inside of the web server during connection of the first user .

바람직하게는, 상기 웹 서버 내부 간의 이동에 기초하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계는 상기 상태천이테이블을 이용하여, 상기 웹 서버 내부 페이지 간의 이동 각각에 대응되는 확률값을 모두 곱하여 이동정보결과값을 산출하는 단계; 및 상기 이동정보결과값이 소정의 제2 임계치 이상인지 여부에 따라, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계를 포함할 수 있다.Preferably, the step of determining whether the first user and the second user coincide with each other based on the movement between the inside of the web server may include using the state transition table, Calculating movement information result values by multiplying all of the probability values; And determining whether the first user and the second user coincide with each other according to whether the movement information result value is equal to or greater than a predetermined second threshold value.

바람직하게는, 상기 복수의 접속정보 및 상기 복수의 이동정보는 소정의 기간 동안, 상기 웹 서버에 접속한 로그인 데이터 및 상기 웹 서버 내부 페이지 간을 이동한 로그 데이터를 수집하여 생성될 수 있다.The plurality of pieces of connection information and the plurality of pieces of movement information may be generated by collecting login data connected to the web server and log data moved between the web server internal pages for a predetermined period.

또한, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 웹 서버의 모니터링 장치는 제1 사용자가 웹 서버에 접속하면, 상기 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 상기 제1 사용자를 식별하는 식별부; 사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 상기 웹 서버 내부 페이지 간의 이동한 순서를 나타내는 복수의 이동정보 중 적어도 하나에 기초하여, 상기 식별된 제1 사용자와 상기 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단하는 판단부; 및 상기 판단 결과 상기 제1 사용자와 상기 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 상기 제2 사용자에게 상기 판단 결과를 포함하는 사용자불일치정보를 전송하는 전송부를 포함한다.According to another aspect of the present invention, there is provided a monitoring apparatus for a web server, the apparatus comprising: a monitoring unit configured to monitor, based on a unique identification unit input by the first user when the first user accesses the web server, An identification unit for identifying a first user; Based on at least one of a plurality of pieces of access information including at least one detailed access information among an IP address, a time and a day of week stored in the user DB, and a plurality of pieces of movement information indicating the order of movement between the web server internal pages, A judging unit for judging whether the first user and the second user who are the true users of the identification means are in agreement with each other; And a transmission unit for transmitting the user inconsistency information including the determination result to a preset contact person or the second user when the first user and the second user do not match as a result of the determination.

본 발명은 웹 서버에서 사용자 행위를 모니터링함으로써, 이상 징후를 나타내는 사용자를 검출할 수 있는 효과가 있다.The present invention has the effect of detecting a user indicating an abnormal symptom by monitoring the user's action in the web server.

또한, 본 발명은 웹 서버 상의 사용자 행위를 접속 분석 단계, 이용 패턴 분석 단계 및 데이터베이스 접속 패턴 분석 단계로 나누어 각각의 단계에서의 이상 징후를 개별적으로 검출할 수 있는 효과가 있다.In addition, the present invention has an effect of separately detecting an anomaly in each step by dividing a user action on a web server into a connection analysis step, a usage pattern analysis step, and a database connection pattern analysis step.

도 1은 본 발명의 일 실시예에 따른 웹 서버의 모니터링 방법을 설명하기 위하여 도시한 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 웹 서버의 모니터링 방법을 설명하기 위하여 도시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 제1 사용자와 제2 사용자가 상호 일치하는지 판단하는 방법을 설명하기 위하여 도시한 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 제1 사용자와 제2 사용자가 상호 일치하는지 판단하는 방법을 설명하기 위하여 도시한 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 웹 서버의 모니터링 장치를 설명하기 위하여 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 웹 서버 및 웹 서버의 모니터링 장치의 연결관계를 설명하기 위하여 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 제1 사용자와 제2 사용자의 일치 여부를 판단하는 기준이 되는 임계치를 설명하기 위하여 도시한 도면이다.
도 8a 및 8b는 본 발명의 일 실시예에 따른 사용자의 URL 이동 및 상태천이테이블을 설명하기 위하여 도시한 도면이다.
1 is a flowchart illustrating a monitoring method of a web server according to an embodiment of the present invention.
2 is a flowchart illustrating a method of monitoring a web server according to another embodiment of the present invention.
FIG. 3 is a flowchart illustrating a method for determining whether a first user and a second user coincide with each other according to an exemplary embodiment of the present invention. Referring to FIG.
4 is a flowchart illustrating a method for determining whether a first user and a second user are in accordance with each other according to another embodiment of the present invention.
5 is a view for explaining a monitoring apparatus of a web server according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating a connection relationship between a web server and a web server monitoring apparatus according to an exemplary embodiment of the present invention. Referring to FIG.
FIG. 7 is a diagram for explaining a threshold that serves as a criterion for determining whether a first user and a second user match with each other according to an embodiment of the present invention.
8A and 8B are diagrams for explaining a user's URL movement and state transition table according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 웹 서버의 모니터링 방법을 설명하기 위하여 도시한 흐름도이다.1 is a flowchart illustrating a monitoring method of a web server according to an embodiment of the present invention.

단계 S110에서는, 모니터링 장치가 제1 사용자가 웹 서버에 접속하면, 그 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 그 제1 사용자를 식별한다.In step S110, when the first user connects to the web server, the monitoring device identifies the first user based on the unique identification means entered when the first user connects.

여기서, 웹 서버는 유선 또는 무선의 네트워크를 통해 컴퓨터, 스마트폰 및 태블릿PC 등과 연결되는 시스템이다. 예를 들어, 웹 서버의 기능을 포함하는 WAS(web application server)서버 또는 애플리케이션 서버가 웹 서버에 해당된다. Here, the web server is a system connected to a computer, a smart phone, a tablet PC, and the like through a wired or wireless network. For example, a web application server (WAS) server or an application server that includes the functions of a web server corresponds to a web server.

또한, 고유한 식별수단은 그 웹 서버에서 각 사용자를 식별하기 위하여 고유하게 정해진 것일 수 있다. 예를 들어, 사용자 아이디 및 패스워드가 각 사용자를 식별하기 위한 식별수단에 해당할 수 있다.In addition, the unique identification means may be uniquely defined to identify each user in the web server. For example, the user ID and password may correspond to identification means for identifying each user.

예컨대, 모니터링 장치는, 사용자DB에 각 사용자의 이름 및 아이디의 사용자 정보가 저장되어 있을 때, 제1 사용자가 A라는 아이디를 이용하여 로그인하면, 그 제1 사용자를 사용자DB에 저장된 복수의 사용자 중에서 그 A 아이디의 사용자로 식별할 수 있다.For example, when the user information of each user and the ID of the user is stored in the user DB, when the first user logs in using the ID "A", the monitoring device displays the first user among a plurality of users stored in the user DB It can be identified as the user of the A ID.

단계 S120에서는, 모니터링 장치가 사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 그 웹 서버의 페이지 사이를 이동한 순서를 나타내는 복수의 이동정보 중 적어도 하나에 기초하여, 식별된 제1 사용자와 그 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단한다.In step S120, the monitoring apparatus displays a plurality of pieces of connection information including at least one detailed access information of the IP address, time and day of week stored in the user DB, and a plurality of pieces of movement information indicating the order of movement between pages of the web server And judges whether the identified first user and the second user, which is the true user of the identification means, are in agreement with each other.

예컨대, 접속정보는, 사용자DB에 저장된 각 사용자의 아이디에 대하여, 접속이 진행된 IPv4 또는 IPv6 등의 IP(internet protocol)주소, 접속이 진행된 시간 또는 시간구간 및 접속이 진행된 요일 중 적어도 하나의 세부접속정보를 포함할 수 있다. 또한, 접속정보는 IP주소를 이용하여 획득한 접속이 진행된 국가, 접속이 진행된 기기(PC, 스마트폰, 태블릿PC 등)의 세부접속정보를 더 포함할 수 있다.For example, the connection information includes at least one of an Internet Protocol (IP) address such as IPv4 or IPv6, a time or a time period during which the connection is advanced, and a day of the connection, Information. In addition, the connection information may further include detailed connection information of the country where the connection acquired using the IP address is performed, and the device (PC, smartphone, tablet PC, etc.) on which the connection is made.

또한, 이동정보는, 사용자DB에 저장된 각 사용자의 아이디에 대하여, 접속 후 웹 서버의 페이지 사이를 이동한 순서에 대한 정보를 포함할 수 있다. 즉, 웹 서버가 A, B 및 C의 웹 페이지를 포함하는 웹 서버인 경우, 그 3개의 웹 페이지 간의 이동 순서에 대한 정보(예, A에서 B, A에서 C, B에서 C, B에서 A, C에서 A, C에서 B의 이동 횟수)를 포함할 수 있다.Also, the movement information may include information on the order of movement between pages of the web server after connection for each user's ID stored in the user DB. That is, when the web server is a web server including web pages of A, B and C, information on the movement order between the three web pages (for example, A to B, A to C, B to C, B to A , C in A, and C in B).

이때, 사용자DB에 저장된 복수의 접속정보 및 복수의 이동정보는 제1 사용자가 입력한 식별수단(예, A 아이디)의 진정사용자인 제2 사용자의 웹 서버에 대한 접속 및 웹 서버의 페이지 사이의 이동에 대한 데이터를 이용하여 생성된 것으로 가정할 수 있다. At this time, the plurality of pieces of connection information and the plurality of pieces of movement information stored in the user DB include a connection to the web server of the second user, which is a true user of the identification means (e.g., A ID) input by the first user, It can be assumed that it is generated using data on movement.

그리고, 모니터링 장치가 그 제1 사용자의 웹 서버에 대한 접속 및 웹 서버 페이지 사이의 이동에 대한 데이터 중 적어도 하나를 사용자DB에 저장된 복수의 접속정보 및 복수의 이동정보 중 적어도 하나와 비교하여, 제1 사용자가 제2 사용자와 일치하는지 판단할 수 있다.Then, the monitoring device compares at least one of the connection of the first user to the web server and the data of the movement between the web server pages with at least one of the plurality of pieces of connection information and the plurality of pieces of movement information stored in the user DB, 1 < / RTI > user is consistent with the second user.

한편, 모니터링 장치가 제1 사용자가 제2 사용자와 일치하는지 판단하는 자세한 방법에 대하여는 도 3 및 도 4에 대한 설명에서 구체적으로 후술한다.A detailed method of determining whether the first user coincides with the second user will be described later in detail with reference to FIGS. 3 and 4.

다른 실시예에서는, 복수의 접속정보 및 복수의 이동정보는 소정의 기간 동안, 그 웹 서버에 접속한 로그인 데이터 및 그 웹 서버의 페이지 사이를 이동한 로그 데이터를 수집하여 생성될 수 있다.In another embodiment, a plurality of pieces of connection information and a plurality of pieces of movement information may be generated by collecting login data connected to the web server and log data moved between pages of the web server for a predetermined period.

예컨대, 복수의 접속정보는, 4주로 설정된 학습 주기 동안 그 웹 서버에 접속한 로그인 데이터를 수집하여 생성될 수 있다. 이때, 복수의 접속정보는 사용자DB에 저장된 사용자의 전부 또는 일부에 대하여 생성될 수 있다. 구체적으로는, HTTP protocol의 IP주소, 접속 시간, 접속 요일 값으로부터 로그인 데이터가 수집될 수 있다.For example, a plurality of pieces of connection information can be generated by collecting login data connected to the web server during a learning period set for four weeks. At this time, a plurality of pieces of connection information can be generated for all or part of the user stored in the user DB. Specifically, login data can be collected from the IP address of the HTTP protocol, connection time, and connection day value.

마찬가지로, 복수의 이동정보는, 4주로 설정된 학습 주기 동안 그 웹 서버의 페이지 사이를 이동한 로그 데이터를 수집하여 생성될 수 있다. 즉, 웹 서버가 A, B 및 C의 웹페이지를 포함하는 웹 서버인 경우, 그 3개의 웹페이지 간을 이동한 로그 데이터(예, A에서 B, A에서 C, B에서 C, B에서 A, C에서 A, C에서 B의 이동)를 모두 수집하여 생성될 수 있다. 구체적으로는, HTTP protocol의 requestURL, bodyparameter로부터 로그 데이터가 수집될 수 있다.Similarly, a plurality of pieces of movement information can be generated by collecting log data moved between pages of the web server during a learning period set for four weeks. That is, when the web server is a web server including web pages of A, B and C, log data moved between the three web pages (eg, A to B, A to C, B to C, B to A , A in C, and B in C). Specifically, log data can be collected from the requestURL and bodyparameter of the HTTP protocol.

단계 S130에서는, 모니터링 장치가, 판단 결과 제1 사용자와 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 제2 사용자에게 그 판단 결과를 포함하는 사용자불일치정보를 전송한다.In step S130, if the first user and the second user do not match as a result of the determination, the monitoring device transmits the user inconsistency information including the determination result to the preset contact person or the second user.

즉, 모니터링 장치가, 제1 사용자와 제2 사용자가 일치하지 않는 것으로 판단되면, 그 사용자불일치정보를 담당자 또는 제2 사용자에게 전송할 수 있다.That is, if it is determined that the first user and the second user do not coincide with each other, the monitoring apparatus can transmit the user inconsistency information to the person in charge or the second user.

이때, 사용자불일치정보는 제1 사용자와 제2 사용자가 일치하지 않는다는 판단 결과를 포함하며, 또한 그 제1 사용자가 그 웹 서버에 접속한 로그인 데이터(예, IP주소, 시간, 요일) 및 그 웹 서버의 페이지 사이를 이동한 로그 데이터(예, 이동 이력)를 더 포함할 수 있다.At this time, the user inconsistency information includes a result of the determination that the first user and the second user do not match, and also includes the login data (e.g., IP address, time, day of week) And may further include log data (e.g., movement history) moved between pages of the server.

한편, 미리 설정된 담당자는 그 웹 서버의 관리자일 수 있으며, 그 사용자불일치정보가 전송되면, 그 담당자는 그에 대응되는 적절한 조치(예, 제1 사용자의 IP주소를 웹 서버에 접속하지 못하도록 차단, 제2 사용자에게 비밀번호를 바꾸도록 요청)를 취할 수 있다. 또한, 제2 사용자도 사용자불일치정보가 전송되면, 비밀번호를 바꾸는 등의 필요한 조치를 취할 수 있다.On the other hand, the preset contact person may be an administrator of the web server, and when the user inconsistency information is transmitted, the contact person performs an appropriate action corresponding thereto (e.g., blocking the IP address of the first user from accessing the web server, 2 requesting the user to change the password). Further, when the second user also transmits the user inconsistency information, necessary measures such as changing the password can be taken.

이와 같이, 본 발명의 일 실시예에 따른 웹 서버의 모니터링 방법은 웹 서버 상의 사용자 행위를 모니터링함으로써, 이상 징후를 나타내는 사용자를 검출할 수 있는 효과가 있다.As described above, the monitoring method of the web server according to the embodiment of the present invention has the effect of detecting the user indicating the abnormal symptom by monitoring the user activity on the web server.

도 2는 본 발명의 다른 실시예에 따른 웹 서버의 모니터링 방법을 설명하기 위하여 도시한 흐름도이다.2 is a flowchart illustrating a method of monitoring a web server according to another embodiment of the present invention.

단계 S210에서는, 모니터링 장치가 제1 사용자가 웹 서버에 접속하면, 그 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 그 제1 사용자를 식별한다.In step S210, when the first user accesses the Web server, the monitoring device identifies the first user based on the unique identification means entered when the first user connects.

단계 S220에서는, 모니터링 장치가 사용자DB에 저장된 복수의 접속정보, 복수의 이동정보 및 그 웹 서버에 연동된 시스템DB에게 전송된 적어도 하나의 질의의 횟수인 질의횟수 및 그 적어도 하나의 질의에 대응하여 전송된 결과 데이터 중 적어도 하나의 세부DB정보를 포함하는 복수의 DB이용정보 중 적어도 하나에 기초하여, 식별된 제1 사용자와 그 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단한다.In step S220, the monitoring apparatus determines whether or not the monitoring apparatus has received a plurality of pieces of connection information stored in the user DB, a plurality of pieces of movement information, a number of inquiries that is the number of at least one query sent to the system DB linked to the web server, Determines whether the identified first user and the second user who is the true user of the identification means are in agreement based on at least one of the plurality of DB usage information including at least one detailed DB information of the transmitted result data.

즉, 모니터링 장치가 웹 서버에 연동된 시스템DB의 질의횟수 및 결과 데이터 중 적어도 하나에 대한 세부DB정보를 포함하는 복수의 DB이용정보에 더 기초하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다.That is, the monitoring apparatus determines whether the first user and the second user coincide with each other based on a plurality of DB utilization information including detailed DB information about at least one of the number of queries of the system DB and the result data linked to the web server It can be judged.

보다 구체적으로는, 모니터링 장치가 사용자DB에 저장된 복수의 DB이용정보에 나타나 있는 평상 시의 시스템DB 사용 패턴과 제1 사용자의 시스템DB 사용 패턴을 비교 및 분석하여, 제1 사용자가 제2 사용자와 일치하는지 판단할 수 있다.More specifically, the monitoring apparatus compares and analyzes the system DB usage pattern in normal use indicated by a plurality of DB usage information stored in the user DB and the system DB usage pattern of the first user, It is possible to judge whether or not they match.

예컨대, 제2 사용자는 평상 시에 시스템DB에 질의횟수가 어느 수치 이하였는데, 제1 사용자가 갑자기 평상 시보다 훨씬 더 많은 질의를 시스템DB에 요청하는 경우, 모니터링 장치는 제1 사용자에 대하여 제2 사용자가 아닌 것으로 판단할 수 있다. 이에 대한 자세한 방법은 아래의 다른 실시예에 대한 설명에서 구체적으로 후술한다.For example, if the second user suddenly requests much more queries from the system DB than the normal user, the monitoring device sends a second query to the first user, It can be determined that the user is not a user. Details of this method will be described later in detail in the description of the other embodiments below.

바람직하게는, 복수의 DB이용정보에 포함되는 세부DB정보는 사전에 등록된 특정한 데이터에 대한 질의횟수 및 결과 데이터에 대한 정보일 수 있다. 즉, 모니터링 장치는, 사용자DB에 저장된 데이터별 중요도에 따라서, 사용자DB에 대한 DB사용 패턴을 선택적으로 모니터링할 수 있다.Preferably, the detailed DB information included in the plurality of DB utilization information may be information on the number of queries and result data for specific data registered in advance. That is, the monitoring apparatus can selectively monitor the DB usage pattern for the user DB according to the importance of each data stored in the user DB.

한편, 시스템DB의 질의횟수 및 결과 데이터는 시스템DB에 대한 질의가 수행될 때, 그 질의에 대응되는 SQL query에 대하여 executeSql, resultCount함수를 이용하여 획득될 수 있다. On the other hand, the query count and result data of the system DB can be obtained by using the executeSql and resultCount functions for the SQL query corresponding to the query when the query to the system DB is performed.

또한, 모니터링 장치가 제1 사용자와 제2 사용자가 상호 일치하는지 판단하기 위하여, 복수의 DB이용정보에 포함된 세부DB정보에 대한 제2 사용자의 기준 프로파일을 생성하고, 그 기준 프로파일과 제1 사용자의 세부DB정보를 비교할 수 있다. Also, in order to determine whether the first user and the second user coincide with each other, the monitoring device generates a reference profile of a second user for the detailed DB information included in the plurality of DB use information, Can be compared.

예컨대, 모니터링 장치가 최근의 n주에 대하여 각 주별로 가중치를 달리하여 기준 질의횟수 및 결과 데이터의 기준 프로파일을 생성할 수 있다. 보다 구체적으로는, 현재의 주의 가중치를 가장 높게 설정하여 기준 프로파일을 생성할 수 있다. 즉, t가 현재의 주라고 할 때, wt-n < wt-n-1 < … < wt-1 < wt으로 각 주별 가중치를 결정할 수 있다. 이때, 각 주별 가중치의 총 합은 1이 된다.For example, the monitoring device may generate a reference number of reference queries and a reference profile of result data by weighting each week for the latest n weeks. More specifically, the reference profile can be generated by setting the weight of the current attention to the highest. That is, when t is the current week, w tn <w tn-1 <... <w t-1 <w t , the weight for each week can be determined. At this time, the total sum of the weights for each week is 1.

다른 실시예에서는, 모니터링 장치가 그 적어도 하나의 세부DB정보의 평균 및 표준편차에 기초하는 정규분포를 이용하여, 제1 사용자가 제2 사용자와 상호 일치하는지 판단할 수 있다.In another embodiment, the monitoring device may use a normal distribution based on the mean and standard deviation of the at least one detailed DB information to determine whether the first user is in agreement with the second user.

이때, 정규분포는 평균(m)과 표준편차(σ)인 변량 X(예, 질의횟수 또는 결과 데이터)가 아래의 수학식 1의 확률밀도함수를 가지는 경우를 말한다. 보다 구체적으로는, 모니터링 장치가 복수의 DB이용정보를 이용하여 질의횟수 및 결과 데이터 각각의 평균과 표준편차를 산출하고, 그 평균과 표준편차를 이용하여 제1 사용자가 제2 사용자와 상호 일치하는지 판단할 수 있다. 이때, 동일한 사용자에 대한 질의횟수 및 결과 데이터는 정규분포를 따르는 것으로 가정한다.Here, the normal distribution refers to a case where a variance X (for example, the number of queries or result data) having an average (m) and a standard deviation () has a probability density function of the following equation (1). More specifically, the monitoring apparatus calculates the average and standard deviation of the number of queries and the result data using the plurality of DB usage information, and determines whether the first user is in mutual agreement with the second user It can be judged. At this time, it is assumed that the number of inquiries and the result data for the same user follow a normal distribution.

[수학식 1][Equation 1]

Figure pat00001
Figure pat00001

여기서, f(x)는 변량 X의 확률밀도함수이고, m은 변량 X의 평균값이고, σ는 변량 X의 표준편차이다.Here, f (x) is a probability density function of the variable X, m is an average value of the variance X, and? Is the standard deviation of the variance X.

예컨대, 모니터링 장치가, 정규분포에서 변량 X가 평균 m의 ±1.96σ 이내인 값일 확률은 95.0%이므로, 임계확률을 95.0%라고 한다면, m±1.96σ 범위 이내인 변량 X에 대하여 제1 사용자가 제2 사용자와 상호 일치한다고 판단할 수 있다.For example, if the monitoring device has a probability of 95.0% of the variance X within the range of ± 1.96σ of the mean m in the normal distribution, and if the threshold probability is 95.0%, the variance X within the range of m ± 1.96σ It can be determined that the second user coincides with the second user.

또 다른 실시예에서는, 모니터링 장치가 세부DB정보의 평균 및 표준편차를 이용하여 가우시안 혼합 모델(Gaussian mixed model)을 생성하고, 그 생성된 가우시안 혼합 모델을 이용하여 제1 사용자가 제2 사용자와 상호 일치하는지 판단할 수 있다.In yet another embodiment, the monitoring device generates a Gaussian mixed model using the mean and standard deviation of the detailed DB information, and uses the generated Gaussian mixed model to determine whether the first user interacts with the second user It is possible to judge whether or not they match.

이때, 가우시안 혼합 모델은 세부DB정보의 평균 및 표준편차에 기초하는 복수개의 가우시안 분포(정규분포)를 포함할 수 있다. 그리고, 세부DB정보는 특정 SQL함수(예, resultCount)의 질의횟수 및 결과 데이터에 대한 정보일 수 있다.At this time, the Gaussian mixture model may include a plurality of Gaussian distributions (normal distributions) based on the average and standard deviation of the detailed DB information. The detailed DB information may be the number of queries of a specific SQL function (e.g., resultCount) and information on result data.

보다 구체적으로는, 모니터링 장치가 일정한 시간 동안 resultCount함수의 질의횟수의 평균값의 분포를 산출하여, 확률분포가 2개 이상으로 나올 경우, 비교대상이 되는 질의횟수(n개의 질의횟수)의 평균값이 복수개의 가우시안 분포 중 하나에 대하여 아래의 수학식 2를 충족하는지를 판단함으로써, 제1 사용자가 제2 사용자와 상호 일치하는지 판단할 수 있다.More specifically, the monitoring apparatus calculates the distribution of the average value of the number of queries of the resultCount function for a predetermined time, and when the probability distribution is two or more, the average value of the number of queries (n number of queries) It is possible to judge whether the first user is in agreement with the second user by judging whether or not one of the two Gaussian distributions satisfies the following expression (2).

[수학식 2]&Quot; (2) &quot;

Figure pat00002
Figure pat00002

여기서, μi는 복수개의 가우시안 분포 중 i번째 분포의 평균이고, Zα/2는 α유의수준의 정규 가우시안값이고, σi는 복수개의 가우시안 분포 중 i번째 분포의 표준편차이고, n은 질의횟수(샘플)의 개수이고,

Figure pat00003
는 일정한 시간 동안 resultCount함수의 질의횟수의 평균값이다.Where, μ i is the mean of a plurality of Gaussian distribution of the i-th distribution, and Z α / 2 is the normal Gaussian value of α significance level, σ i is the standard deviation of the i-th distributed plurality of Gaussian distribution, n is the query The number of times (samples)
Figure pat00003
Is the average value of the number of queries of the resultCount function over a certain period of time.

한편, 각각의 DB이용정보는 각각의 세션 단위로 질의횟수 및 결과 데이터 중 적어도 하나의 세부DB정보를 수집하여 생성될 수 있다. 이때, 세션은 네트워크 상에서 컴퓨터와 컴퓨터가 논리적으로 연결된 상태를 말하며, 물리적인 또는 논리적인 연결 종료가 발생하는 경우 해당 세션은 종료될 수 있다.Meanwhile, each DB utilization information can be generated by collecting at least one detailed DB information among the number of queries and result data for each session. In this case, a session refers to a state where a computer and a computer are logically connected to each other on a network, and a session may be terminated when a physical or logical connection is terminated.

단계 S230에서는, 모니터링 장치가, 판단 결과 제1 사용자와 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 제2 사용자에게 그 판단 결과를 포함하는 사용자불일치정보를 전송한다.In step S230, if the first user and the second user do not match as a result of the determination, the monitoring device transmits the user inconsistency information including the determination result to the preset contact person or the second user.

도 3은 본 발명의 일 실시예에 따른 제1 사용자와 제2 사용자가 상호 일치하는지 판단하는 방법을 설명하기 위하여 도시한 흐름도이다.FIG. 3 is a flowchart illustrating a method for determining whether a first user and a second user coincide with each other according to an exemplary embodiment of the present invention. Referring to FIG.

단계 S310에서는, 모니터링 장치가 복수의 접속정보에 포함된 적어도 하나의 세부접속정보 각각의 빈도를 산출한다.In step S310, the monitoring device calculates the frequency of each of the at least one detailed access information included in the plurality of access information.

예컨대, 모니터링 장치가 IP주소의 세부접속정보에 대하여 빈도를 산출할 수 있다. 즉, 총 20회의 접속이 있었고, 그 접속이 총 3개의 IP주소를 통해서 수행되었다면, 모니터링 장치가 표 1과 같이 세부접속정보의 빈도를 산출할 수 있다.For example, the monitoring device can calculate the frequency of detailed access information of the IP address. That is, if there are 20 connections in total and the connection is performed through 3 IP addresses in total, the monitoring device can calculate the frequency of detailed connection information as shown in Table 1.

IP 주소IP address 128.125.103.3128.125.103.3 128.125.323.8128.125.323.8 128.125.333.5128.125.333.5 빈도frequency 1One 1414 55

또한, 총 20회의 접속이 있었고, 그 접속을 요일 단위로 나누면, 모니터링 장치가 표 2와 같이 세부접속정보의 빈도를 산출할 수 있다.Also, if there are 20 connections in total, and the connection is divided by the day of the week, the monitoring device can calculate the frequency of detailed connection information as shown in Table 2.

접속 요일Connection day Work month anger Number neck gold Sat 빈도frequency 00 44 33 1010 22 1One 00

또한, 총 20회의 접속이 있었고, 그 접속의 시간을 2시간 단위로 나누면, 모니터링 장치가 표 3과 같이 세부접속정보의 빈도를 산출할 수 있다.In addition, a total of 20 connections were made, and the monitoring device could calculate the frequency of detailed connection information as shown in Table 3 if the connection time is divided by 2 hours.

접속 시간Access time 00 22 44 66 88 1010 빈도frequency 00 00 00 00 55 22 접속 시간Access time 1212 1414 1616 1818 2020 2222 빈도frequency 22 44 55 22 00 00

단계 S320에서는, 모니터링 장치가 그 적어도 하나의 세부접속정보 각각의 빈도에 기초하여, 세부접속정보 각각에 대응되는 멤버쉽 함수(membership function)의 값인 멤버쉽값(membership value)을 산출한다.In step S320, the monitoring device calculates a membership value, which is a value of a membership function corresponding to each of the detailed connection information, based on the frequency of each of the at least one detailed connection information.

멤버쉽 함수는 퍼지(fuzzy)이론 등에서 사용되는 함수로, 어느 요소의 성질(degree of truth)을 0에서 1사이의 값으로 나타낸다. 또한, 멤버쉽값은 그 세부접속정보에 대한 해당 집합에 어느 정도로 속하는가를 값으로 나타낸다. The membership function is a function used in the fuzzy theory or the like and indicates the degree of truth of an element as a value between 0 and 1. In addition, the membership value indicates to what extent the membership of the detailed connection information belongs to the value.

즉, 모니터링 장치가 적어도 하나의 세부접속정보 각각의 빈도를 이용하여 멤버쉽 함수를 생성하고, 그 함수로부터 각각의 세부접속정보에 대응되는 멤버쉽값을 산출할 수 있다.That is, the monitoring device can generate the membership function using the frequency of each of the at least one detailed access information, and calculate the membership value corresponding to each detailed access information from the function.

이때, 이 발명 명세서에서 사용되는 멤버쉽값은 수학식 3으로 나타낼 수 있다.At this time, the membership value used in the present invention can be expressed by Equation (3).

[수학식 3]&Quot; (3) &quot;

Figure pat00004
Figure pat00004

여기서, mij는 멤버쉽값이고, i는 적어도 하나의 세부접속정보의 인덱스이고, Imax는 세부접속정보의 종류의 총 개수이고, ij는 i번째 세부접속 정보내의 j 번째 카테고리를 지칭하는 인덱스이고, Ni max는 i번째 세부접속정보에 포함된 값들의 총합이고, αi는 i번째 세부접속정보에서 특정 정보(j)번째 의 빈도가 0일 때 할당되는 멤버쉽값이고, βi min은 i번째 세부접속정보에 포함된 값 중 빈도가 최소인 인덱스에 할당되는 멤버쉽값이고, βi max는 i번째 세부접속정보에 포함된 값 중 빈도가 최대인 인덱스에 할당되는 멤버쉽값(여기서는 1)이고 이다.Herein, m ij is a membership value, i is an index of at least one detailed access information, I max is a total number of types of detailed access information, ij is an index indicating a jth category in the i-th detailed access information, , N i max is a sum of values included in the i-th detailed access information, α i is a membership value assigned when the frequency of the specific information (j) is 0 in the i-th detailed access information, and β i min is i I is the membership value assigned to the index with the smallest frequency among the values included in the i-th detailed access information, and? I max is a membership value (here, 1) assigned to the index having the greatest frequency among the values included in the i- to be.

예컨대, 표 1 내지 표 3을 참조하면, Imax는 IP주소, 요일 및 시간을 포함하는 3이고, 표 1에 대응되는 N1 max는 3이고, 표 2에 대응되는 N2 max는 7이고, 표 3에 대응되는 N3 max는 12이고, α는 0.1이고, βmin은 0.5이고, βmax는 1이다. 또한, 각 멤버쉽값은 수학식 3에 의해 산출된다.For example, referring to Tables 1 to 3, I max is 3, including IP address, day and time, N 1 max corresponding to Table 1 is 3, N 2 max corresponding to Table 2 is 7, N 3 max corresponding to Table 3 is 12,? Is 0.1,? Min is 0.5, beta max is one. In addition, each membership value is calculated by Equation (3).

또한, 이때, α 및 βmin는 Imax에 따라서 표 4와 같이 결정된다.At this time,? And? Min are determined as shown in Table 4 according to I max .

II maxmax 22 33 44 55 αalpha 0.10.1 0.10.1 0.10.1 0.050.05 βmin β min 0.40.4 0.50.5 0.60.6 0.650.65

따라서, 수학식 3과 표 4(Imax = 3)의 α와 βmin에 의해 세부접속정보(표 1, 2, 3) 각 빈도에 해당하는 멤버쉽값은 표 5, 6, 7과 같이 산출된다.Therefore, the membership values corresponding to the frequencies of detailed access information (Tables 1, 2 and 3) are calculated as shown in Tables 5, 6 and 7 by? And? Min of Equation 3 and Table 4 (I max = 3) .

IP 주소IP address 128.125.103.3128.125.103.3 128.125.323.8128.125.323.8 128.125.333.5128.125.333.5 빈도frequency 1One 1414 55 멤버쉽값Membership Value 0.50.5 1One 0.750.75

접속 요일Connection day Work month anger Number neck gold Sat 빈도frequency 00 44 33 1010 22 1One 00 멤버쉽값Membership Value 0.10.1 0.8750.875 0.750.75 1One 0.6250.625 0.50.5 0.10.1

접속 시간Access time 00 22 44 66 88 1010 빈도frequency 00 00 00 00 55 22 멤버쉽값Membership Value 0.10.1 0.10.1 0.10.1 0.10.1 1One 0.50.5 접속 시간Access time 1212 1414 1616 1818 2020 2222 빈도frequency 22 44 55 22 00 00 멤버쉽값Membership Value 0.50.5 0.750.75 1One 0.50.5 0.10.1 0.10.1

다른 실시예에서는, 모니터링 장치가 소정의 기간별로 차등적인 가중치를 부여하여, 멤버쉽값을 산출할 수 있다.In another embodiment, the monitoring device may assign a different weight to a predetermined period of time to calculate the membership value.

예컨대, 모니터링 장치가 지난 2주간을 1주일 단위의 기간별로 차등적인 가중치를 부여하여 멤버쉽값을 산출할 수 있다. 이때, 표 8는 지난 주의 멤버쉽값을 나타내고, 표 9은 이번 주의 멤버쉽값을 나타낸다For example, the monitoring device may calculate the membership value by assigning a different weight to each week for a period of two weeks. At this time, Table 8 shows the membership value of last week, and Table 9 shows the membership value of this week

IP 주소IP address aa bb cc 빈도(xFrequency (x t-1t-1 )) 1One 1414 55 멤버쉽값Membership Value 0.50.5 1One 0.750.75

IP 주소IP address aa bb cc 빈도(xFrequency (x tt )) 33 88 99 멤버쉽값Membership Value 0.50.5 0.750.75 1One

이때, 모니터링 장치가 지난 주와 이번 주의 빈도에 대하여 각각 0.3과 0.7의 가중치를 부여하여 표 10과 같이 멤버쉽값을 산출할 수 있다. 한편, 이번 주의 빈도에 더 큰 가중치가 부여되는 것은, 현재와 가까운 데이터일수록 사용자의 성향을 보다 정확하게 반영하기 때문일 수 있다. 이 계산 방법은 수학식 4를 이용한다.At this time, the monitoring device can calculate the membership value as shown in Table 10 by assigning weights of 0.3 and 0.7 to the frequencies of the last week and the present week, respectively. On the other hand, a greater weight is given to the frequency of this week, because the closer the data is to the present, the more accurately the user's tendency is reflected. This calculation method uses Equation (4).

IP 주소IP address aa bb cc 빈도(0.7*xFrequency (0.7 * x tt +0.3*x+ 0.3 * x t-1t-1 )) 2.42.4 9.89.8 7.87.8 멤버쉽값Membership Value 0.50.5 1One 0.750.75

[수학식 4]&Quot; (4) &quot;

Figure pat00005
Figure pat00005

여기서, pt는 차등적인 가중치가 부여된 결과를 나타내는 빈도이고, T는 차등적인 가중치가 부여되는 기간의 총 개수이고, t-i는 오늘부터 i번째 전 기간이고, wi는 i번째 기간에 대한 차등적인 가중치이고, xi는 i번째 기간에 대한 빈도이고, i 및 j는 i > j 인 관계이다.Here, p t is a frequency indicating a result of being given a different weight, T is a total number of periods in which a different weight is given, t i is an i th whole period from today, w i is a difference X i is the frequency for the i-th period, and i and j are relationships where i > j.

단계 S330에서는, 모니터링 장치가 그 제1 사용자의 접속에 대한 접속정보에 포함된 적어도 하나의 세부접속정보 각각에 대응되는 멤버쉽값을 이용하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단한다.In step S330, the monitoring device uses the membership value corresponding to each of the at least one detailed connection information contained in the connection information for the connection of the first user to determine whether the first user and the second user are in agreement with each other.

예컨대, 수학식 3을 참조하면, 세부접속정보 각각의 값들에 대한 멤버쉽값은 그 빈도에 비례한다. 따라서, 그 세부접속정보의 각각의 멤버쉽값이 커질수록 제1 사용자와 제2 사용자가 상호 일치할 가능성도 커질 수 있다. 이는, 제1 사용자의 웹 서버에 대한 접속 패턴이, 제2 사용자의 웹 서버에 대한 접속 패턴에 가까워지는 것을 의미하기 때문이다.For example, referring to Equation (3), the membership value for each of the values of the detailed connection information is proportional to the frequency. Therefore, the larger the membership value of the detailed access information, the greater the possibility that the first user and the second user coincide with each other. This is because the connection pattern of the first user to the web server is close to the connection pattern of the second user to the web server.

다른 실시예에서는, 모니터링 장치가 접속정보결과값을 산출하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다.In another embodiment, the monitoring device may calculate connection information result values to determine if the first user and the second user are in agreement.

접속정보결과값은 수학식 5에 의해 산출될 수 있다. 즉, 제1 사용자의 접속에 대한 각각의 세부접속정보가 주어지면, 이 정보를 사용하여, 각 세부정보 인덱스별로 멤버쉽값을 구하고(mi) 이들을 곱하여 산출될 수 있다.The connection information resultant value can be calculated by Equation (5). That is, if each detailed access information on the connection of the first user is given, it can be calculated by using this information, obtaining membership values for each detailed information index, and multiplying them by m i .

[수학식 5]&Quot; (5) &quot;

Figure pat00006
Figure pat00006

여기서, Rc는 접속정보결과값이고, k는 세부접속정보의 개수이고, mi는 제1 사용자의 접속에 대한 i번째 세부접속정보의 멤버쉽값이다.Wherein, R c is a connection information result value, k is the number of detailed access information, i m is the membership value of the i-th detailed contact information for a contact of the first user.

그리고, 모니터링 장치가 그 산출된 접속정보결과값을 소정의 제1 임계치와 비교하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다. 예컨대, 그 접속정보결과값이 제1 임계치 이상인 경우, 제1 사용자가 제2 사용자와 일치하고, 그 접속정보결과값이 제1 임계치 미만인 경우, 제1 사용자가 제2 사용자가 아닌 이상 징후가 있는 사용자인 것으로 판단할 수 있다.Then, the monitoring apparatus compares the calculated connection information result value with a predetermined first threshold value to determine whether the first user and the second user coincide with each other. For example, when the result of the connection information is equal to or greater than the first threshold, if the first user coincides with the second user and the result of the connection information is less than the first threshold, It can be determined that the user is a user.

한편, 제1 임계치는 아래의 수학식 6의 범위에서 결정될 수 있다. On the other hand, the first threshold value can be determined in the range of the following expression (6).

[수학식 6]&Quot; (6) &quot;

Figure pat00007
Figure pat00007

여기서, θ는 제1 임계치이고, α는 세부접속정보에 포함된 값에 대응되는 빈도가 0일 때 할당되는 멤버쉽값이고, βmin은 세부접속정보에 포함된 값 중 빈도가 최소일 때 할당되는 멤버쉽값이고, βmax는 세부접속정보에 포함된 값 중 빈도가 최대일 때 할당되는 멤버쉽값(여기서는 1)이고 이다.Here,? Is a first threshold value,? Is a membership value assigned when the frequency corresponding to the value included in the detailed connection information is 0, and? Min is allocated when the frequency among the values included in the detailed access information is minimum Membership value, and β max is a membership value (here, 1) assigned when the frequency among the values included in the detailed connection information is the maximum.

즉, 제1 임계치는 α와 γ의 사이에서 결정될 수 있으며, 바람직하게는, 그 평균값인 (α+γ)/2로 결정될 수 있다.That is, the first threshold value may be determined between? And?, And preferably, the average value may be determined as? +? / 2.

예컨대, 제1 임계치 결정 수식 (α+γ)/2과 수학식 6의 γ는 앞서 결정된 표 4의 Imax, α, βmin 에 적용한다면 다음 표 11과 같이 산출된다.For example, if the first threshold value determining equation (? +?) / 2 and the? In Equation 6 are applied to I max ,?, And? Min in Table 4,

II maxmax 22 33 44 55 αalpha 0.10.1 0.10.1 0.10.1 0.050.05 θθ 0.130.13 0.1130.113 0.1150.115 0.0830.083 γgamma 0.160.16 0.1250.125 0.12960.1296 0.1170.117 βmin β min 0.40.4 0.50.5 0.60.6 0.650.65

도 4는 본 발명의 다른 실시예에 따른 제1 사용자와 제2 사용자가 상호 일치하는지 판단하는 방법을 설명하기 위하여 도시한 흐름도이다.4 is a flowchart illustrating a method for determining whether a first user and a second user are in accordance with each other according to another embodiment of the present invention.

단계 S410에서는, 모니터링 장치가 복수의 이동정보에 포함된 적어도 하나의 이동 각각의 빈도를 산출한다.In step S410, the monitoring device calculates the frequency of each of the at least one movement included in the plurality of pieces of movement information.

예컨대, 모니터링 장치가, 도 8a를 참조하면, 특정한 웹페이지 (news.naver.com)로부터 다른 웹페이지 각각으로 이동하는 빈도를 산출할 수 있다. 즉, 모니터링 장치가 그 특정한 웹페이지로부터 그 웹페이지를 통해 이동할 수 있는 다른 웹페이지로 이동하는 빈도를 모두 산출할 수 있다. 웹 페이지 간의 이동은 사용자가 웹 브라우저에 표현된 화면에서 하나의 링크를 마우스를 이용하여 클릭함으로써 발생할 수 있다.For example, referring to FIG. 8A, the monitoring apparatus can calculate a frequency of moving from a specific web page (news.naver.com) to each of other web pages. That is, the monitoring device can calculate all the frequencies of moving from the particular web page to another web page that can be moved through the web page. Movement between web pages can occur when a user clicks a link on a screen displayed in a web browser using a mouse.

단계 S420에서는, 모니터링 장치가 그 적어도 하나의 이동 각각의 빈도에 기초하여, 제2 사용자가 그 웹 서버의 페이지 간의 이동 확률을 나타내는 상태천이테이블을 생성한다.In step S420, based on the frequency of each of the at least one move, the monitoring device generates a state transition table in which a second user indicates a probability of movement between pages of the web server.

예컨대, 모니터링 장치가, 도 8b를 참조하면, 그 적어도 하나의 이동 각각의 빈도를 이용하여, 그 각 이동에 대한 상태천이테이블을 생성할 수 있다. 즉, www.naver.com에서 news.naver.com으로 이동하는 확률이 0.2153이고, new.naver.com에서 sports.news.naver.com/main/index.nhn으로 이동할 확률이 0.0508이다.For example, referring to FIG. 8B, the monitoring device may use the frequency of each of its at least one move to generate a state transition table for each move. That is, the probability of moving from www.naver.com to news.naver.com is 0.2153, and the probability of moving from new.naver.com to sports.news.naver.com/main/index.nhn is 0.0508.

이때, 상태천이테이블에 포함된 각각의 확률은 특정한 웹페이지 A로부터 그와 연결되는 다른 웹페이지인 A1, A2, A3, A4로 이동한 빈도를 모두 합한 값을 분모로 하고, A로부터 A1, A2, A3, A4로 이동한 빈도를 각각 분자로 하여 산출할 수 있다. 예를 들어, A로부터 A1, A2, A3, A4로 이동한 빈도가 각각 50, 50, 200, 100이라고 가정하면, A로부터 A1, A2, A3, A4로 이동할 확률은 50/400, 50/400, 200/400, 100/400으로 산출된다.At this time, each probability included in the state transition table is a denominator which is a denominator of the sum of the frequencies of moving from the specific web page A to the other web pages A 1 , A 2 , A 3 , and A 4 connected thereto, To A 1 , A 2 , A 3 , and A 4 , respectively. For example, assuming that the frequencies from A to A 1 , A 2 , A 3 and A 4 are 50, 50, 200 and 100, respectively, the probability of moving from A to A 1 , A 2 , A 3 and A 4 50/400, 50/400, 200/400, 100/400.

이때, 모니터링 장치가 웹페이지 A로부터 연결되는 웹페이지 A5가 존재하지만, A에서 A5로 이동한 빈도가 0인 경우, 향후에 곱셈에 의해 산출될 확률값이 0이 되지 않도록 하기 위하여 임의의 작은 수를 상수로 지정한다.At this time, if there is a web page A 5 connected from the web page A, but the frequency at which the monitoring device moves from A to A 5 is 0, in order to prevent the probability value to be calculated by multiplying in the future, Specify the number as a constant.

단계 S430에서는, 모니터링 장치가 마르코프 체인(Markov chain), 상태천이테이블 및 제1 사용자의 접속 동안의 그 웹 서버 페이지 간의 이동에 기초하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단한다.In step S430, the monitoring device determines whether the first user and the second user coincide based on a Markov chain, a state transition table, and a movement between the web server pages during connection of the first user.

마르코프 체인은 하나의 상태에서 또 다른 상태로 천이하는 무작위의 과정을 확률로 나타낼 수 있다. 이때, 각각의 천이 과정은 서로 영향을 미치지 않아 독립적이다. 특히, 마르코프 체인은 연속적인 이동을 확률의 곱으로 표현한다.The Markov chain can represent a random process that transitions from one state to another. At this time, the respective transition processes do not affect each other and are independent. In particular, the Markov chain expresses continuous motion as a product of probabilities.

이때, 마르코프 체인을 이용하여, 제1 사용자에 의한 웹 서버 페이지 간의 이동(x1, x2,… , xt-1)이 시간 T=1,2,…,t에서 발생할 확률을 계산하면, 아래의 수학식 7과 같다.At this time, the movement (x 1 , x 2 , ..., x t-1 ) between the web server pages by the first user is time T = 1, 2 , ..., x t-1 using the Markov chain. , the probability of occurrence at t is calculated as shown in Equation (7) below.

[수학식 7]&Quot; (7) &quot;

Figure pat00008
Figure pat00008

여기서, P는 제1 사용자에 의한 웹 서버 페이지 간의 전체 이동이 발생할 확률이고, T는 제1 사용자에 의한 웹 서버 내부 간의 이동 횟수이고, P(x1)은 초기 페이지 상태(T=1)의 확률이고, P(xi+1|xi)는 xi사건(웹페이지)이 발생하였을 때 xi+1사건(웹페이지)이 발생할 확률이다.P is the probability of total movement between Web server pages by the first user, T is the number of movements within the web server by the first user, P (x 1 ) and the probability, P (x i + 1 | x i) x i is the incident x i + 1 case (web page) probability to occur when the generated Web pages.

예컨대, 제1 사용자가 웹페이지를 T회에 걸쳐 이동하는 경우에, P(x1)은 초기 화면이 나타날 확률이고, P(xi+1|xi)은 T=i+1일 때, 그전 xi 웹페이지에서 xi+1웹페이지로 이동할 확률이다. 즉, 웹페이지를 이동하는 것은 이전의 이동이 다음번의 이동에 영향을 미치지 않으므로, 마르코프 체인이 적용될 수 있다.For example, when the first user moves through the web page T times, P (x 1 ) is the probability of the initial screen appearing, and P (x i + 1 | x i ) The probability of moving from the previous x i web page to the x i + 1 web page. That is, moving a web page can be applied to a Markov chain since the previous move has no effect on the next move.

그리고, 모니터링 장치가 상태천이테이블에서 각각의 xi웹페이지에서 xi+1웹페이지로 이동할 확률에 대한 정보를 획득하여, 제1 사용자에 의한 웹 서버 페이지 간의 이동이 발생할 확률을 산출할 수 있다. 또한, 초기 화면 P(x1)이 나타날 확률은 1일 수 있다. 모니터링 장치가 그 산출된 확률을 이용하여 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다.Then, the monitoring apparatus obtains information on the probability that the monitoring apparatus moves from the respective x i web pages to the x i + 1 web pages in the state transition table, and calculates the probability of the movement of the web server pages by the first user . In addition, the probability that the initial screen P (x 1 ) appears may be one. The monitoring apparatus can determine whether the first user and the second user coincide using the calculated probability.

다른 실시예에서는, 모니터링 장치가 이동정보결과값을 산출하여, 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다.In another embodiment, the monitoring device may calculate movement information result values to determine if the first user and the second user are in agreement.

예컨대, 모니터링 장치가 제1 사용자가 웹페이지를 T회에 걸쳐 이동하였을 때, 그 각각의 이동에 대응되는 확률을 상태천이테이블로부터 획득하고, 그 획득한 확률을 모두 곱하여 이동정보결과값을 산출할 수 있다.For example, when the first user moves the web page through T times, the monitoring device obtains the probabilities corresponding to the respective movements from the state transition table, multiplies all of the obtained probabilities, and calculates the movement information resultant value .

그리고, 그 이동정보결과값이 소정의 제2 임계치 이상인지 여부에 따라, 이용하여 제1 사용자와 제2 사용자가 상호 일치하는지 판단할 수 있다. 예컨대, 그 이동정보결과값이 제2 임계치 이상인 경우, 제1 사용자가 제2 사용자와 일치하고, 그 이동정보결과값이 제2 임계치 미만인 경우, 제1 사용자가 제2 사용자가 아닌 이상 징후가 있는 사용자인 것으로 판단할 수 있다.Then, it is possible to determine whether the first user and the second user coincide with each other according to whether the movement information result value is equal to or greater than a predetermined second threshold value. For example, when the movement information resultant value is equal to or greater than the second threshold, when the first user coincides with the second user and the movement information resultant value is less than the second threshold, It can be determined that the user is a user.

한편, 제2 임계치는 아래의 수학식 8의 범위에서 결정될 수 있다. On the other hand, the second threshold value can be determined in the range of the following equation (8).

[수학식 8]
&Quot; (8) &quot;

Figure pat00009
Figure pat00009

여기서, θ는 제2 임계치이고, αj는 상태천이테이블에서 해당 이동에 대응되는 확률이 존재하지 않을 경우에 부여되는 값으로, 모든 αj = α로 하나의 값으로 하고, πmin i는 i번째 이동에 대응되는 상태천이테이블에서 가장 작은 확률의 값이고, πmax i는 i번째 이동에 대응되는 상태천이테이블에서 가장 큰 확률의 값이고, N은 제1 사용자의 웹 서버 페이지 간의 이동 횟수이다.Here,? Is a second threshold value,? J is a value given when there is no probability corresponding to the movement in the state transition table, and all? J = ?, And? Min i is i Is the smallest probability value in the state transition table corresponding to the i &lt; th &gt; movement, [pi] maxi is the largest probability value in the state transition table corresponding to the i-th movement, and N is the number of movements between the web server pages of the first user .

제2 임계치는 아래의 수학식 9의 범위에서 결정될 수 있다. 이때, 수학식 8에 따라 α는

Figure pat00010
을 만족해야 하기 때문에,
Figure pat00011
의 형태로 지정하는 것이 바람직하다. 따라서, 아래 수학식 9를 얻을 수 있다.The second threshold can be determined in the range of the following equation (9). At this time, according to Equation (8),?
Figure pat00010
Lt; / RTI &gt;
Figure pat00011
It is preferable to designate it in the form of. Therefore, the following equation (9) can be obtained.

[수학식 9]
&Quot; (9) &quot;

Figure pat00012
Figure pat00012

한편, 도 7을 참조하면, 모니터링 장치가 산출한 이동정보결과값과 제2 임계치를 서로 비교하여, 5단계의 경고 레벨로 판별결과를 산출할 수 있다. Referring to FIG. 7, the movement information result value calculated by the monitoring apparatus and the second threshold value may be compared with each other, and the determination result may be calculated using the warning level of five levels.

1단계(정상)는 올바른 사용자로 판단할 수 있는 결과 값 중에서 가장 작은 값보다 큰 경우로, 탐지 결과 및 행위 로그데이터를 DB에 저장할 수 있다.If the first step (normal) is larger than the smallest value among the result values that can be judged as a correct user, the detection result and the action log data can be stored in the DB.

2단계(관심)는 각 모델별 탐지 결과 값이 제2 임계치로부터 67 ~ 100% 이내 값을 갖는 경우로, 탐지 결과 및 행위 로그데이터를 관리자에게 알리고, DB에 저장할 수 있다.The second stage (interest) is a case in which the detection result value of each model has a value within 67-100% from the second threshold value, and the detection result and activity log data can be notified to the administrator and stored in the DB.

3단계(주의)는 각 모델별 탐지 결과 값이 제2 임계치로부터 34 ~ 66% 이내에 값을 갖는 경우로, 탐지 결과 및 행위 로그데이터를 관리자에게 알리고, DB에 저장할 수 있다. Step 3 (Note) is a case where the detection result value of each model has a value within 34 to 66% from the second threshold value, and the detection result and activity log data can be notified to the administrator and stored in the DB.

4단계(경계)는 각 모델별 탐지 결과 값이 제2 임계치로부터 0 ~ 33% 이내에 값을 갖는 경우로, 탐지 결과 및 행위 로그데이터를 관리자에게 알리고, DB에 저장할 수 있다.Step 4 (boundary) is a case in which the detection result value of each model has a value within 0 ~ 33% from the second threshold value, and the detection result and activity log data can be notified to the administrator and stored in the DB.

5단계(심각)는 각 모델별 탐지 결과 값이 제2 임계치 범위보다 작은 값을 갖는 경우로, 탐지 결과 및 행위 로그데이터를 관리자에게 알리고, DB에 저장할 수 있다.Step 5 (serious) is a case in which the detection result value of each model has a value smaller than the second threshold value range, and the detection result and action log data can be notified to the administrator and stored in the DB.

도 5는 본 발명의 일 실시예에 따른 웹 서버의 모니터링 장치를 설명하기 위하여 도시한 도면이다.5 is a view for explaining a monitoring apparatus of a web server according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일 실시예에 따른 웹 서버의 모니터링 장치(500)는 식별부(510), 판단부(520) 및 전송부(530)를 포함할 수 있다.Referring to FIG. 5, the web server monitoring apparatus 500 according to an embodiment of the present invention may include an identification unit 510, a determination unit 520, and a transmission unit 530.

한편, 웹 서버의 모니터링 장치(500)는 웹 서버에 직접 연동되거나, 또는 웹 서버와 유선 또는 무선으로 연결된 서버, PC, 스마트폰 및 태블릿PC 등에 탑재될 수 있다.Meanwhile, the monitoring device 500 of the web server may be directly connected to the web server, or may be installed in a server connected to the web server by wired or wireless, a PC, a smart phone, and a tablet PC.

보다 구체적으로는, 도 6을 참조하면, 제1 사용자(603) 및 제2 사용자(606)가 웹 서버(609)(예, WAS서버)에 접속할 때, 에이전트(612)가 제1 사용자(603) 및 제2 사용자(606)의 웹 서버(609)에 대한 접속 로그인 데이터 및 웹 서버(609) 내부의 이동 로그 데이터를 사용자DB(615)에 저장할 수 있다. 그리고, 웹 서버의 모니터링 장치(500)가 탑재된 서버(618)가 그 사용자DB(615)에 저장된 데이터를 이용하여, 제1 사용자(603)와 제2 사용자(606)가 상호 일치하는지 판단할 수 있다. 그리고, 그 결과를 담당자(621)에게 전송할 수 있다.6, when a first user 603 and a second user 606 connect to a web server 609 (e.g., a WAS server), the agent 612 sends a request to the first user 603 And login log data for the web server 609 of the second user 606 and movement log data in the web server 609 in the user DB 615. [ The server 618 on which the monitoring device 500 of the web server is installed uses the data stored in the user DB 615 to determine whether the first user 603 and the second user 606 coincide with each other . Then, the result can be transmitted to the person in charge 621.

식별부(510)는 제1 사용자(603)가 웹 서버(609)에 접속하면, 그 제1 사용자(603)가 접속할 때 입력한 고유한 식별수단에 기초하여, 그 제1 사용자(603)를 식별한다.The identification unit 510 identifies the first user 603 based on the unique identification means that the first user 603 has accessed when the first user 603 connects to the web server 609 .

판단부(520)는 사용자DB(615)에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 그 웹 서버(609)의 내부의 페이지 간을 이동한 순서를 나타내는 복수의 이동정보 중 적어도 하나에 기초하여, 그 식별된 제1 사용자(603)와 그 식별수단의 진정사용자인 제2 사용자(606)가 상호 일치하는지 판단한다.The determination unit 520 determines a plurality of access information including at least one detailed access information among the IP address, the time and the day of the week stored in the user DB 615 and the order in which the pages within the web server 609 are moved And determines whether the identified first user 603 and the second user 606, which are the true users of the identification means, coincide with each other.

마지막으로 전송부(530)는 그 판단 결과, 제1 사용자(603)와 제2 사용자(606)가 불일치하면, 미리 설정된 담당자(621) 또는 제2 사용자(606)에게 그 판단 결과를 포함하는 사용자불일치정보를 전송한다.If the first user 603 and the second user 606 do not coincide with each other as a result of the determination, the transmitting unit 530 notifies the predetermined person in charge 621 or the second user 606, And transmits inconsistency information.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.The above-described embodiments of the present invention can be embodied in a general-purpose digital computer that can be embodied as a program that can be executed by a computer and operates the program using a computer-readable recording medium.

상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 를 포함한다.The computer readable recording medium includes a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), optical reading medium (e.g., CD ROM, DVD, etc.).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다.The present invention has been described with reference to the preferred embodiments.

본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

Claims (9)

제1 사용자가 웹 서버에 접속하면, 상기 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 상기 제1 사용자를 식별하는 단계;
사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 상기 웹 서버 내부 페이지 간의 이동에 대한 확률정보 중 적어도 하나에 기초하여, 상기 식별된 제1 사용자와 상기 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단하는 단계; 및
상기 판단 결과 상기 제1 사용자와 상기 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 상기 제2 사용자에게 상기 판단 결과를 포함하는 사용자불일치정보를 전송하는 단계
를 포함하고,
상기 복수의 접속정보에 기초하여 판단할 때,
상기 제2 사용자가 상호 일치하는지 판단하는 단계는
상기 복수의 접속정보에 포함된 적어도 하나의 세부접속정보 각각의 빈도를 산출하는 단계;
상기 적어도 하나의 세부접속정보 각각의 빈도에 기초하여, 상기 세부접속정보 각각에 대응되는 멤버쉽 함수(membership function)의 값인 멤버쉽값(membership value)을 산출하는 단계; 및
상기 제1 사용자의 접속에 대한 상기 접속정보에 포함된 적어도 하나의 세부접속정보 각각에 대응되는 멤버쉽값을 이용하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계
를 포함하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
Identifying the first user based on unique identification means entered by the first user when the first user connects to the web server;
Based on at least one of a plurality of pieces of connection information including at least one detailed access information among the IP address, time, and day of week stored in the user DB, and probability information about movement between the web server internal pages, Determining whether a second user who is a true user of the identification means is in agreement with each other; And
When the first user and the second user do not coincide with each other, transmitting the user inconsistency information including the determination result to a preset contact person or the second user
Lt; / RTI &gt;
When judging based on the plurality of pieces of connection information,
The step of determining whether the second users are mutually coincident
Calculating frequency of each of at least one detailed access information included in the plurality of access information;
Calculating a membership value that is a value of a membership function corresponding to each of the detailed access information based on the frequency of each of the at least one detailed access information; And
Determining whether the first user and the second user coincide with each other using a membership value corresponding to each of at least one detailed connection information included in the connection information for connection of the first user
And monitoring the web server.
제1항에 있어서,
상기 웹 서버에 연동된 시스템DB에게 전송된 적어도 하나의 질의의 횟수인 질의횟수 및 상기 적어도 하나의 질의에 대응하여 전송된 결과 데이터 중 적어도 하나의 세부DB정보를 포함하는 복수의 DB이용정보가 상기 사용자DB에 더 저장되어 있을 때,
상기 제2 사용자가 일치하는지 판단하는 단계는
상기 DB이용정보에 더 기초하여, 상기 제1 사용자와 상기 제2 사용자가 일치하는지 판단하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
The method according to claim 1,
A plurality of DB utilization information including at least one detailed DB information among a query number which is the number of queries transmitted to the system DB linked to the web server and result data transmitted corresponding to the at least one query, When stored further in the user DB,
The step of determining whether the second user is coincident
Further comprising determining whether the first user matches the second user based on the DB usage information.
제2항에 있어서,
상기 DB이용정보가 각각의 세션(session) 단위로 상기 질의횟수 및 상기 결과 데이터 중 적어도 하나의 세부DB정보를 포함하고, 상기 DB이용정보에 더 기초하여 판단할 때,
상기 제2 사용자가 일치하는지 판단하는 단계는
상기 DB이용정보에 포함된 적어도 하나의 세부DB정보 각각의 평균 및 표준편차에 기초하는 정규분포에 대하여, 상기 제1 사용자의 접속 세션 동안의 상기 질의횟수 및 상기 결과 데이터 중 적어도 하나가 상기 정규분포에 포함될 확률이 임계확률 이상인지 여부에 따라 판단하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
3. The method of claim 2,
Wherein the DB utilization information includes at least one detailed DB information of the number of inquiries and the result data in each session, and when it is determined further based on the DB utilization information,
The step of determining whether the second user is coincident
Wherein at least one of the number of queries and the result data during a first user's connection session is a normal distribution based on an average and a standard deviation of each of at least one detailed DB information included in the DB utilization information, And determining whether or not the probability of being included in the web page is greater than a threshold probability.
제1항에 있어서,
상기 멤버쉽값을 이용하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계는
상기 적어도 하나의 세부접속정보 각각에 대한 멤버쉽값을 모두 곱하여 접속정보결과값을 산출하는 단계; 및
상기 접속정보결과값이 소정의 제1 임계치 이상인지 여부에 따라, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계
를 포함하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
The method according to claim 1,
The step of determining whether the first user and the second user coincide using the membership value
Calculating connection information result values by multiplying all the membership values for each of the at least one detailed access information; And
Determining whether the first user and the second user coincide with each other according to whether the connection information result value is equal to or greater than a predetermined first threshold value
And monitoring the web server.
제1항에 있어서,
상기 적어도 하나의 세부접속정보 각각의 빈도를 산출하는 단계가 소정의 기간별로 나누어 상기 적어도 하나의 세부접속정보 각각의 빈도를 산출할 때,
상기 멤버쉽값을 산출하는 단계는
상기 소정의 기간별로 차등적인 가중치를 부여하여, 상기 멤버쉽값을 산출하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
The method according to claim 1,
When the frequency of each of the at least one detailed access information is calculated by dividing the frequency of each of the at least one detailed access information by a predetermined period,
The step of calculating the membership value
Wherein the membership value is calculated by assigning a different weight to each predetermined period.
제1 사용자가 웹 서버에 접속하면, 상기 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 상기 제1 사용자를 식별하는 단계;
사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 상기 웹 서버 내부 페이지 간의 이동에 대한 확률정보 중 적어도 하나에 기초하여, 상기 식별된 제1 사용자와 상기 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단하는 단계; 및
상기 판단 결과 상기 제1 사용자와 상기 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 상기 제2 사용자에게 상기 판단 결과를 포함하는 사용자불일치정보를 전송하는 단계
를 포함하고,
상기 확률정보에 기초하여 판단할 때,
상기 제2 사용자가 상호 일치하는지 판단하는 단계는
상기 웹 서버 내부 페이지 간의 이동에 관한 정보에 포함된 적어도 하나의 이동 각각의 빈도를 산출하는 단계;
상기 적어도 하나의 이동 각각의 빈도에 기초하여, 상기 제2 사용자가 상기 웹 서버의 내부 페이지 간을 이동할 확률을 나타내는 상태천이테이블을 생성하는 단계; 및
마르코프 체인(Markov chain), 상기 상태천이테이블 및 상기 제1 사용자의 접속 동안의 상기 웹 서버의 내부 페이지 간의 이동에 기초하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계
를 포함하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
Identifying the first user based on unique identification means entered by the first user when the first user connects to the web server;
Based on at least one of a plurality of pieces of connection information including at least one detailed access information among the IP address, time, and day of week stored in the user DB, and probability information about movement between the web server internal pages, Determining whether a second user who is a true user of the identification means is in agreement with each other; And
When the first user and the second user do not coincide with each other, transmitting the user inconsistency information including the determination result to a preset contact person or the second user
Lt; / RTI &gt;
When judging based on the probability information,
The step of determining whether the second users are mutually coincident
Calculating a frequency of each of the at least one movement included in the information about movement between the web server internal pages;
Generating a state transition table indicating a probability that the second user moves between the internal pages of the web server based on the frequency of each of the at least one movement; And
Determining whether the first user and the second user coincide based on a movement between a Markov chain, the state transition table, and an internal page of the web server during connection of the first user
And monitoring the web server.
제6항에 있어서,
상기 웹 서버 내부 페이지 간의 이동에 기초하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계는
상기 상태천이테이블을 이용하여, 상기 웹 서버 내부 페이지 간의 이동 각각에 대응되는 확률값을 모두 곱하여 이동정보결과값을 산출하는 단계; 및
상기 이동정보결과값이 소정의 제2 임계치 이상인지 여부에 따라, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 단계
를 포함하는 것을 특징으로 하는 웹 서버의 모니터링 방법.
The method according to claim 6,
Determining whether the first user and the second user coincide based on the movement between the web server internal pages,
Calculating a movement information result value by multiplying all probability values corresponding to movements between the internal pages of the web server by using the state transition table; And
Determining whether the first user and the second user coincide with each other according to whether the movement information result value is equal to or greater than a predetermined second threshold value
And monitoring the web server.
제1항에 있어서,
상기 복수의 접속정보 및 상기 확률정보는
소정의 기간 동안, 상기 웹 서버에 접속한 로그인 데이터 및 상기 웹 서버 내부 페이지 간을 이동한 로그 데이터를 수집하여 생성되는 것을 특징으로 하는 웹 서버의 모니터링 방법.
The method according to claim 1,
The plurality of pieces of connection information and the probability information
Wherein the login information is generated by collecting login data connected to the web server and log data moved between the web server internal pages for a predetermined period.
제1 사용자가 웹 서버에 접속하면, 상기 제1 사용자가 접속할 때 입력한 고유한 식별수단에 기초하여, 상기 제1 사용자를 식별하는 식별부;
사용자DB에 저장된 IP주소, 시간 및 요일 중 적어도 하나의 세부접속정보를 포함하는 복수의 접속정보 및 상기 웹 서버의 내부 페이지 간의 이동에 대한 확률정보 중 적어도 하나에 기초하여, 상기 식별된 제1 사용자와 상기 식별수단의 진정사용자인 제2 사용자가 상호 일치하는지 판단하는 판단부; 및
상기 판단 결과 상기 제1 사용자와 상기 제2 사용자가 불일치하면, 미리 설정된 담당자 또는 상기 제2 사용자에게 상기 판단 결과를 포함하는 사용자불일치정보를 전송하는 전송부
를 포함하고,
상기 판단부가 상기 확률정보에 기초하여 상기 제2 사용자가 상호 일치하는지 판단할 때,
상기 웹 서버 내부 페이지 간의 이동에 관한 정보에 포함된 적어도 하나의 이동 각각의 빈도를 산출하고,
상기 적어도 하나의 이동 각각의 빈도에 기초하여, 상기 제2 사용자가 상기 웹 서버의 내부 페이지 간을 이동할 확률을 나타내는 상태천이테이블을 생성하고,
마르코프 체인(Markov chain), 상기 상태천이테이블 및 상기 제1 사용자의 접속 동안의 상기 웹 서버의 내부 페이지 간의 이동에 기초하여, 상기 제1 사용자와 상기 제2 사용자가 상호 일치하는지 판단하는 것을 특징으로 하는 웹 서버의 모니터링 장치.

An identification unit for identifying the first user based on a unique identification unit input by the first user when the first user accesses the web server;
Based on at least one of a plurality of pieces of connection information including at least one detailed connection information among an IP address, a time and a day of week stored in the user DB, and probability information about movement between inner pages of the web server, And a second user who is a true user of the identification means are mutually coincident with each other; And
If it is determined that the first user and the second user do not coincide with each other, a transmission unit that transmits user inconsistency information including the determination result to a preset contact person or the second user
Lt; / RTI &gt;
When the determination unit determines that the second users are mutually consistent based on the probability information,
Calculating a frequency of each of at least one movement included in the information about the movement between pages in the web server,
Generating a state transition table indicating a probability that the second user moves between the internal pages of the web server based on the frequency of each of the at least one movement,
Characterized in that it is determined whether the first user and the second user coincide with each other based on a movement between a Markov chain, the state transition table, and an internal page of the web server during connection of the first user A monitoring device for a web server.

KR1020190037057A 2019-03-29 2019-03-29 Method and apparatus for monitoring users of web server KR102003450B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190037057A KR102003450B1 (en) 2019-03-29 2019-03-29 Method and apparatus for monitoring users of web server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190037057A KR102003450B1 (en) 2019-03-29 2019-03-29 Method and apparatus for monitoring users of web server

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160154169A Division KR20180056208A (en) 2016-11-18 2016-11-18 Method and apparatus for monitoring users of web server

Publications (2)

Publication Number Publication Date
KR20190038524A true KR20190038524A (en) 2019-04-08
KR102003450B1 KR102003450B1 (en) 2019-10-17

Family

ID=66164892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190037057A KR102003450B1 (en) 2019-03-29 2019-03-29 Method and apparatus for monitoring users of web server

Country Status (1)

Country Link
KR (1) KR102003450B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102124189B1 (en) 2020-03-02 2020-06-17 주식회사 솔텍크 Apparatus for Monitoring Shutdown of Server and Driving Method Thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000063739A (en) * 1999-09-30 2000-11-06 김형태 System and method for monitoring fraudulent use of id and media for storing program source thereof
KR101619414B1 (en) * 2015-01-06 2016-05-10 한국인터넷진흥원 System for detecting abnomal behaviors using personalized early use behavior pattern analsis

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000063739A (en) * 1999-09-30 2000-11-06 김형태 System and method for monitoring fraudulent use of id and media for storing program source thereof
KR101619414B1 (en) * 2015-01-06 2016-05-10 한국인터넷진흥원 System for detecting abnomal behaviors using personalized early use behavior pattern analsis

Also Published As

Publication number Publication date
KR102003450B1 (en) 2019-10-17

Similar Documents

Publication Publication Date Title
US10924514B1 (en) Machine learning detection of fraudulent validation of financial institution credentials
US10515328B2 (en) Non-intrusive techniques for discovering and using organizational relationships
CN106534392B (en) Positioning information acquisition method, positioning method and device
Hao et al. Understanding the domain registration behavior of spammers
US8589694B2 (en) System, method, and apparatus for graduated difficulty of human response tests
US8966036B1 (en) Method and system for website user account management based on event transition matrixes
EP1275053B1 (en) A system and method to determine the validity of an interaction on a network
US20210360322A1 (en) Methods and apparatus to categorize media impressions by age
CN107305611B (en) Method and device for establishing model corresponding to malicious account and method and device for identifying malicious account
US20210313074A1 (en) Automatic contact tracing
CN105930727A (en) Web-based crawler identification algorithm
CA2397757C (en) System and method for controlling access to internet sites
US20160241576A1 (en) Detection of anomalous network activity
WO2009077193A2 (en) Systems and methods for detecting click fraud
CN110830445B (en) Method and device for identifying abnormal access object
WO2010062759A2 (en) Online identity management and identity verification
CN108366012B (en) Social relationship establishing method and device and electronic equipment
CN108924120B (en) Multi-dimensional state perception dynamic access control method
CN105824805B (en) Identification method and device
JP5981036B2 (en) Automatic scanning action determination method and apparatus
US10324956B1 (en) Automatically mapping organizations to addresses
Drutsa et al. Practical aspects of sensitivity in online experimentation with user engagement metrics
US10805377B2 (en) Client device tracking
KR20190038524A (en) Method and apparatus for monitoring users of web server
US20140180765A1 (en) Web-based survey verification

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant