KR100745613B1 - Apparatus and recording medium storing program for monitoring network - Google Patents
Apparatus and recording medium storing program for monitoring network Download PDFInfo
- Publication number
- KR100745613B1 KR100745613B1 KR1020060025307A KR20060025307A KR100745613B1 KR 100745613 B1 KR100745613 B1 KR 100745613B1 KR 1020060025307 A KR1020060025307 A KR 1020060025307A KR 20060025307 A KR20060025307 A KR 20060025307A KR 100745613 B1 KR100745613 B1 KR 100745613B1
- Authority
- KR
- South Korea
- Prior art keywords
- traffic
- matrix
- network
- value
- inflow
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
도 1은 본 발명의 제1 실시예에 따른 네트워크 감시 장치를 도시한 블록도이다.1 is a block diagram showing a network monitoring apparatus according to a first embodiment of the present invention.
도 2는 본 발명의 실시예에 따라 IP 주소를 통해 생성한 트래픽 행렬을 도시한 도면이다.2 is a diagram illustrating a traffic matrix generated through an IP address according to an embodiment of the present invention.
도 3은 랜덤 행렬의 랭크값의 확률 분포를 도시한 그래프이다.3 is a graph showing a probability distribution of rank values of a random matrix.
도 4는 본 발명의 제2 실시예에 따른 네트워크 감시 장치를 도시한 블록도이다.4 is a block diagram showing a network monitoring apparatus according to a second embodiment of the present invention.
도 5는 본 발명의 실시예에 따른 네트워크 상태 판단 기준을 나타낸다.5 illustrates network state determination criteria according to an embodiment of the present invention.
도 6은 본 발명의 제3 실시예에 따른 네트워크 감시 장치를 도시한 블록도이다.6 is a block diagram showing a network monitoring apparatus according to a third embodiment of the present invention.
도 7은 시간의 경과에 따라 서브네트워크 별로 네트워크의 랭크값의 추이를 나타낸 그래프이다.FIG. 7 is a graph illustrating a trend of rank values of networks for each subnetwork as time passes.
본 발명은 네트워크 감시를 수행하는 장치 및 프로그램이 저장된 기록 매체에 관한 것이다. 특히 본 발명은 네트워크가 웜에 감염되어 있는지를 판단하는 장치 및 프로그램이 저장된 기록 매체에 관한 것이다.The present invention relates to a recording medium storing an apparatus and a program for performing network monitoring. In particular, the present invention relates to a recording medium storing an apparatus and a program for determining whether a network is infected with a worm.
1988년 Morris 웜이 처음으로 출현한 이래로 인터넷에서의 웜에 의한 피해사고는 끊임없이 증가하고 있다. Code Red와 Nimda 웜은 인터넷 상의 수십만 대의 컴퓨터를 감염시켰으며, 공공분야에서부터 개인의 시스템까지 수백만 달러의 피해를 가져다 주었다. 이러한 인터넷 웜은 자기 자신을 복제하여 네트워크 상의 컴퓨터들을 감염시키는 독립된 프로그램이다. 웜은 인터넷 상에 있는 수많은 컴퓨터들을 감염시키기 위하여, 네트워크 조사, 취약점 검사, 자가 복제 등을 자동으로 수행한다. 현재까지 보고된 웜 중 가장 빠른 웜으로 기록되어있는 SQL_Overflow 웜은 10여분 만에 전 세계의 취약한 서버의 90%를 감염시켰으며, 감염된 서버는 매 8.5초마다 2배의 수치로 증가하였다. 이러한 수치로 볼 때 SQL_Overflow 웜은 이전의 Code Red 웜에 감염된 서버가 매 37분마다 2배로 늘어났던 것에 비해 엄청난 속도로 컴퓨터들을 감염시켰다는 것을 쉽게 알 수 있다. 이렇게 빠른 전염 속도로 파급되는 인터넷 웜에 대응하기 위해서는 웜이 네트워크의 컴퓨터들을 감염시키는 초기 단계를 탐지하여 웜의 확산을 예방하는 것이 제일 중요하다.Since the Morris worm first appeared in 1988, the damage caused by worms on the Internet has been constantly increasing. The Code Red and Nimda worms have infected hundreds of thousands of computers on the Internet, causing millions of dollars in damage from the public sector to personal systems. These worms are independent programs that replicate themselves and infect computers on a network. Worms automatically perform network investigations, vulnerability scans, and self-replicating to infect thousands of computers on the Internet. The SQL_Overflow worm, the fastest reported worm reported to date, infected 90% of vulnerable servers around the world in just 10 minutes, and the number of infected servers doubled every 8.5 seconds. It is easy to see that the SQL_Overflow worm infects computers at a tremendous rate, compared to a server that was previously infected with the Code Red worm doubled every 37 minutes. In order to cope with the rapid spread of Internet worms, it is most important to prevent the spread of worms by detecting the early stages of worms infecting computers on the network.
웜을 탐지하는 기법들 중에는 크게 두 가지로 구분할 수 있다. 트래픽의 임계치를 이용하는 방법과 웜의 행동 양상을 이용하여 탐지하는 방법들이 있다. 트래픽의 임계치를 사용하는 방법들은 정상적인 트래픽과 비 정상적인 트래픽의 구분을 명확하게 할 수 없기 때문에 잘못된 탐지를 하는 비율이 높다. 한편, 신종 웜의 출 현 주기가 짧아지고 종류도 다양해짐에 따라서 기존의 웜의 행동 양상을 이용한 웜의 탐지는 네트워크를 보호하는 대에 있어서 더 이상 충분하지 않다.There are two major techniques for detecting worms. There are methods of using traffic thresholds and methods of detecting using worm behavior. The methods that use the threshold of traffic cannot detect the difference between normal traffic and abnormal traffic, so the rate of false detection is high. On the other hand, as the emergence cycle of new worms becomes shorter and more diverse, the detection of worms using the behavior of existing worms is no longer sufficient in protecting the network.
본 발명이 이루고자 하는 기술적 과제는 네트워크가 웜에 감염되어 있는지를 판단하는 장치 및 프로그램이 저장된 기록 매체를 제공하는 것이다.It is an object of the present invention to provide a recording medium storing an apparatus and a program for determining whether a network is infected with a worm.
본 발명의 한 특징에 따른 네트워크 감시 장치는 트래픽 수집부, 유입 트래픽 행렬 생성부, 유출 트래픽 행렬 생성부, 정상 트래픽 소거부, 랭크값 계산부 및 네트워크 상태 판단부를 포함한다. 이때 트래픽 수집부는 네트워크로 유입되는 유입 트래픽 및 상기 네트워크로부터 유출되는 유출 트래픽을 수집한다. 그리고 유입 트래픽 행렬 생성부는 제1 시간 영역에서 상기 유입 트래픽의 특성을 제1 유입 트래픽 행렬에 나타내고 제2 시간 영역에서 상기 유입 트래픽의 특성을 제2 유입 트래픽 행렬에 나타내고, 유출 트래픽 행렬 생성부는 제1 시간 영역에서 상기 유출 트래픽의 특성을 제1 유출 트래픽 행렬에 나타내고 제2 시간 영역에서 상기 유출 트래픽의 특성을 제2 유출 트래픽 행렬에 나타낸다. 정상 트래픽 소거부는 상기 제1 유입 트래픽 행렬 및 상기 제2 유입 트래픽 행렬을 XOR하여 정상 유입 트래픽 소거 행렬을 생성하고 상기 제1 유출 트래픽 행렬 및 상기 제2 유출 트래픽 행렬을 XOR하여 정상 유출 트래픽 소거 행렬을 생성하고, 랭크값 계산부는 상기 정상 유입 트래픽 소거 행렬의 랭크값인 유입 랭크값 및 상기 정상 유출 트래픽 소거 행렬의 랭크값인 유출 랭크값을 계산하며, 네트워크 상태 판단부는 상기 유입 랭크값이 소 정의 값보다 크면 상기 네트워크가 웜으로부터 공격받고 있다고 판단하고 상기 유출 랭크값이 소정의 값보다 크면 상기 네트워크가 웜에 감염되어 있다고 판단한다.A network monitoring apparatus according to an aspect of the present invention includes a traffic collector, an inflow traffic matrix generator, an outflow traffic matrix generator, a normal traffic canceller, a rank value calculator, and a network state determiner. At this time, the traffic collection unit collects inflow traffic flowing into the network and outflow traffic flowing out of the network. And the inflow traffic matrix generator indicates the property of the inflow traffic in the first inflow traffic matrix in the first time domain and the property of the inflow traffic in the second inflow traffic matrix in the second time domain, and the outflow traffic matrix generator in the first time domain. The characteristics of the outgoing traffic in the time domain are represented in a first outflow traffic matrix and the characteristics of the outflow traffic in a second time domain are shown in a second outflow traffic matrix. A normal traffic canceling unit generates a normal inflow traffic cancellation matrix by XORing the first inflow traffic matrix and the second inflow traffic matrix, and XORs the first outflow traffic matrix and the second outflow traffic matrix to generate a normal outflow traffic cancellation matrix. And a rank value calculation unit calculates an inflow rank value that is a rank value of the normal inflow traffic cancellation matrix and an outflow rank value that is a rank value of the normal outflow traffic cancellation matrix, and a network state determination unit defines a small inflow rank value. If it is greater than the value, it is determined that the network is attacked by the worm. If the leak rank value is greater than a predetermined value, it is determined that the network is infected with the worm.
본 발명의 다른 특징에 따른 네트워크 감시 장치는 복수의 서브네트워크를 포함하는 네트워크를 감시하는 장치로서, 상기 네트워크의 트래픽을 수집하는 트래픽 수집부와, 제1 시간 영역에서 상기 트래픽의 IP 주소를 상기 서브네트워크 별로 제1 시간의 트래픽 행렬들에 나타내고 제2 시간 영역에서 상기 트래픽의 IP 주소를 상기 서브네트워크 별로 제2 시간의 트래픽 행렬들에 나타내는 트래픽 행렬 생성부와, 상기 서브네트워크 별로 상기 제1 시간의 트래픽 행렬들 및 상기 제2 시간의 트래픽 행렬들을 XOR하여 복수의 정상 트래픽 소거 행렬을 생성하는 정상 트래픽 소거부와, 상기 서브네트워크 별로 상기 복수의 정상 트래픽 소거 행렬의 랭크값을 계산하는 랭크값 계산부 및 상기 복수의 랭크값 중 소정의 값보다 큰 랭크값이 존재하는 지 검색하여 상기 소정의 값보다 큰 랭크값에 해당하는 서브네트워크가 웜에 감염되어 있거나 웜에 의해 공격받고 있다고 판단하는 감염 서브네트워크 판단부를 포함한다.A network monitoring apparatus according to another aspect of the present invention is a device for monitoring a network including a plurality of sub-networks, the traffic collecting unit for collecting the traffic of the network, and the sub-address IP address of the traffic in the first time domain A traffic matrix generator for representing traffic matrices of a first time for each network and representing an IP address of the traffic in a second time domain for traffic matrices of a second time for each subnetwork; A normal traffic cancellation unit for generating a plurality of normal traffic cancellation matrices by XORing the traffic matrices and the traffic matrices of the second time, and a rank value calculation unit for calculating rank values of the plurality of normal traffic cancellation matrices for each subnetwork. Searching for whether a rank value larger than a predetermined value exists among the plurality of rank values Group is infected with a sub-network is a worm, which corresponds to the largest rank value than the predetermined value, or includes portions infection subnetwork determining determines that being attacked by the worm.
본 발명의 한 특징에 따른 프로그램이 저장된 기록 매체는 네트워크를 감시하는 프로그램이 저장된 기록 매체로서, 상기 네트워크로 유입되는 유입 트래픽 및 상기 네트워크로부터 유출되는 유출 트래픽을 수집하는 기능과, 제1 시간 영역에서 상기 유입 트래픽의 특성을 제1 유입 트래픽 행렬에 나타내고 제2 시간 영역에서 상기 유입 트래픽의 특성을 제2 유입 트래픽 행렬에 나타내는 기능과, 제1 시간 영역에서 상기 유출 트래픽의 특성을 제1 유출 트래픽 행렬에 나타내고 제2 시간 영 역에서 상기 유출 트래픽의 특성을 제2 유출 트래픽 행렬에 나타내는 기능과, 상기 제1 유입 트래픽 행렬 및 상기 제2 유입 트래픽 행렬을 XOR하여 정상 유입 트래픽 소거 행렬을 생성하고 상기 제1 유출 트래픽 행렬 및 상기 제2 유출 트래픽 행렬을 XOR하여 정상 유출 트래픽 소거 행렬을 생성하는 기능과, 상기 정상 유입 트래픽 소거 행렬의 랭크값인 유입 랭크값 및 상기 정상 유출 트래픽 소거 행렬의 랭크값인 유출 랭크값을 계산하는 기능과, 상기 유입 랭크값이 제1 값보다 크고 상기 유출 랭크값이 제2 값보다 작으면 상기 네트워크가 웜으로부터 공격받고 있다고 판단하는 기능, 및 상기 유입 랭크값이 제3 값보다 작고 상기 유출 랭크값이 제4 값보다 크면 상기 네트워크가 웜에 감염되어 있다고 판단하는 기능을 포함한다.According to an aspect of the present invention, a recording medium having a program stored therein is a recording medium storing a program for monitoring a network, and has a function of collecting inflow traffic flowing into and out of the network; A function of representing the characteristic of the incoming traffic in a first inflow traffic matrix and a characteristic of the inflow traffic in a second inflow traffic matrix in a second time domain; and a characteristic of the outflow traffic in a first time domain in a first outflow traffic matrix. And a function of representing the characteristics of the outgoing traffic in a second outflow traffic matrix in a second time domain, and generating a normal inflow traffic cancellation matrix by XORing the first inflow traffic matrix and the second inflow traffic matrix. XOR the 1 outgoing traffic matrix and the second outgoing traffic matrix to normal traffic flow Generating a pick cancellation matrix; calculating an intake rank value that is a rank value of the normal inflow traffic cancellation matrix; and an outgoing rank value that is a rank value of the normal outflow traffic cancellation matrix; and the inflow rank value being a first value. A function that determines that the network is under attack from a worm if greater and less than the second rank value, and the network is a worm if the inflow rank value is less than a third value and the outflow rank value is greater than a fourth value. Includes the ability to determine that it is infected.
본 발명의 다른 특징에 따른 프로그램이 저장된 기록 매체는 복수의 서브네트워크를 포함하는 네트워크를 감시하는 프로그램이 저장된 기록 매체로서, 상기 네트워크의 트래픽을 수집하는 기능과, 제1 시간 영역에서 상기 트래픽의 IP 주소를 상기 서브네트워크 별로 제1 시간의 트래픽 행렬들에 나타내는 기능과, 제2 시간 영역에서 상기 트래픽의 IP 주소를 상기 서브네트워크 별로 제2 시간의 트래픽 행렬들에 나타내는 기능과, 상기 서브네트워크 별로 상기 제1 시간의 트래픽 행렬들 및 상기 제2 시간의 트래픽 행렬들을 XOR하여 복수의 정상 트래픽 소거 행렬을 생성하는 기능과, 상기 서브네트워크 별로 상기 복수의 정상 트래픽 소거 행렬의 랭크값을 계산하는 기능, 및 상기 복수의 랭크값 중 소정의 값보다 큰 랭크값이 존재하는 지 검색하여 상기 소정의 값보다 큰 랭크값에 해당하는 서브네트워크가 웜에 감염되어 있거나 웜에 의해 공격받고 있다고 판단하는 기능을 포함한다.According to another aspect of the present invention, a recording medium having a program stored therein is a recording medium storing a program for monitoring a network including a plurality of subnetworks. A function of indicating an address to traffic matrices of a first time for each subnetwork, a function of indicating an IP address of the traffic to second traffic matrices of a second time for each subnetwork in a second time domain, and the per network Generating a plurality of normal traffic cancellation matrices by XORing the traffic matrices of the first time and the traffic matrices of the second time, calculating a rank value of the plurality of normal traffic cancellation matrices for each of the sub-networks, and Search for the existence of a rank value greater than a predetermined value among the plurality of rank values; It includes a function that determines that the subnetwork corresponding to the rank value larger than the defined value is infected by the worm or is attacked by the worm.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.
웜은 랜덤하게 IP 주소를 생성하여 감염 대상을 결정한다. 따라서 웜에 감염되어 있거나 웜에 의해 공격받고 있는 네트워크 상에는 랜덤한 IP를 가진 트래픽이 많이 존재하게 된다. 본 발명의 실시예에 따른 웜 탐지 징치는 이와 같은 웜의 특징을 활용한다.The worm randomly generates an IP address to determine the target of infection. Therefore, there is a lot of traffic with random IP on the network that is infected or attacked by the worm. Worm detection sign according to an embodiment of the present invention utilizes the features of such a worm.
다음은 도 1 내지 도 7를 참고하여 본 발명의 다양한 실시예에 따른 웜 탐지 장치에 대하여 설명한다.Next, a worm detection apparatus according to various embodiments of the present disclosure will be described with reference to FIGS. 1 to 7.
도 1은 본 발명의 제1 실시예에 따른 네트워크 감시 장치(100)를 도시한 블록도이다.1 is a block diagram showing a
도 1에 도시된 바와 같이 본 발명의 제1 실시예에 따른 네트워크 감시 장치(100)는 제1 네트워크(10)와 연동하며, 트래픽 수집부(110), 트래픽 행렬 생성부(120), 정상 트래픽 소거부(130), 랭크값 계산부(140), 웜 존재 판단부(150)를 포함한다.As shown in FIG. 1, the
트래픽 수집부(110)는 제1 네트워크(10) 상의 트래픽을 수집한다.The
트래픽 행렬 생성부(120)는 트래픽 수집부(110)가 수집한 트래픽의 특성을 행렬로 표현한다. 트래픽 행렬 생성부(120)는 트래픽에 포함되어 있는 IP(Internet Protocol) 주소로 행렬을 생성할 수도 있다. IP 주소를 통한 행렬 생성 방법에 대하여 도 2를 참고하여 설명한다.The
도 2는 본 발명의 실시예에 따라 IP 주소를 통해 생성한 트래픽 행렬을 도시한 도면이다.2 is a diagram illustrating a traffic matrix generated through an IP address according to an embodiment of the present invention.
본 발명의 실시를 위해서 반드시 IPv4를 사용할 필요는 없지만, 본 발명의 실시예를 설명하기 위하여 IPv4를 사용하겠다. IPv4에서 IP 주소는 32비트로 구성되고, 보통 8비트씩 나뉘어 표현되는데, 설명의 편의를 위하여 IP 주소의 각 8비트를 IP1, IP2, IP3, IP4라고 하도록 한다. 이때 IP1은 IP 주소의 상위 8비트이고, IP4는 IP 주소의 하위 8비트이다.Although it is not necessary to use IPv4 for the practice of the present invention, IPv4 will be used to describe the embodiment of the present invention. In IPv4, an IP address is composed of 32 bits and is usually divided into 8 bits. For convenience of description, each 8 bit of an IP address is referred to as IP 1 , IP 2 , IP 3 , and IP 4 . IP 1 is the upper 8 bits of the IP address and IP 4 is the lower 8 bits of the IP address.
트래픽 행렬은 64개의 행과 64개의 열로 되어 있으며, 트래픽 행렬의 각 원소(element)는 1비트의 크기를 갖는다. 트래픽 행렬은 4*4의 크기의 부분 행렬 256개로 표현될 수 있다. 각 부분 행렬의 (1, 1)의 위치는 트래픽 행렬의 (i, j)가 되는데, (i, j)는 다음의 수학식 1에 의해 결정된다.The traffic matrix has 64 rows and 64 columns, and each element of the traffic matrix has a size of 1 bit. The traffic matrix may be represented by 256 submatrices having a size of 4 * 4. The position of (1, 1) of each partial matrix becomes (i, j) of the traffic matrix, and (i, j) is determined by the following equation (1).
j = (IP4 mod 16) * 4j = (IP 4 mod 16) * 4
여기서 수식 (IP4 mod 16)는 IP4를 16으로 나눈 나머지를 의미한다. 한편, 트래픽 행렬의 (i, j)에 위치하는 부분 행렬을 Mi,j라고 표시하도록 한다.The equation (IP 4 mod 16) is the remainder of IP 4 divided by 16. Meanwhile, the partial matrix located at (i, j) of the traffic matrix is denoted by M i, j .
부분 행렬(Mi,j)의 k번째 열인 mk는 다음 수학식 2에 의해 결정된다.The k-th column m k of the partial matrix M i, j is determined by Equation 2 below.
m2 = first 4bit of IP3 m 2 = first 4 bit of IP 3
m3 = first 4bit of IP4 m 3 = first 4 bit of IP 4
m4 = first 4bit of IP4 m 4 = first 4 bit of IP 4
다시 도 1에 대해 설명한다.1 will be described again.
트래픽 행렬 생성부(120)는 도 2에 도시된 방법에 따라 트래픽 수집부(110)가 수집하는 t-1초에서 t초 사이의 트래픽을 트래픽 행렬 M(t)에 표시한다. t-1초에서 t초 사이에서 트래픽 행렬의 (i, j)에 위치될 트래픽이 2회 이상 수집된다면, 트래픽 행렬 생성부(120)는 나중에 수집된 트래픽으로 덮어쓰기를 반복한다. 한편 트래픽 행렬 생성부(120)는 t-2초에서 t-1초 사이의 트래픽을 트래픽 행렬 M(t-1)에 표시한다.The
정상 트래픽 소거부(130)는 트래픽 행렬 생성부(120)가 생성한 트래픽 행렬에서 정상 트래픽 특성을 소거한다. 정상 트래픽 소거부(130)는 트래픽 행렬 생성 부(120)가 생성한 두 개의 행렬인 M(t-1)와 M(t)에 대해 다음 수학식 3에서 보여주는 것과 같이 Exclusive OR(XOR)를 수행하여 M'(t)를 생성함으로써 용이하게 정상 트래픽 특성을 소거할 수 있다.The
정상 트래픽의 IP 주소는 t-2초에서 t-1초 사이에서와 t-1초에서 t초 사이에서 변하지 않을 가능성이 높으므로 트래픽 행렬 생성부(120)가 M(t-1)와 M(t)에 대해 Exclusive OR를 수행하여 M'(t)를 생성하는 경우 M'(t)에서는 정상 트래픽이 대부분 제거된다. 이하에서는 M'(t)를 정상 트래픽 소거 행렬이라 부르도록 한다.Since the IP address of the normal traffic is unlikely to change between t-2 seconds and t-1 seconds and between t-1 seconds and t seconds, the
랭크값 계산부(140)는 정상 트래픽 소거 행렬 M'(t)의 랜덤의 정도를 계산하기 위하여 랭크값(rank)을 계산한다.The
랜덤한 m*n 이진 행렬의 랭크값은 다음 수학식 4에 따르는 확률을 가지고 r=1, 2, ..., min(m,n)을 갖는다.The rank value of the random m * n binary matrix has r = 1, 2, ..., min (m, n) with probability according to the following equation (4).
수학식 4를 그래프로 표시한 도면이 도 3과 같다.3 is a
도 3은 랜덤 행렬의 랭크값의 확률 분포를 도시한 그래프이다.3 is a graph showing a probability distribution of rank values of a random matrix.
수학식 4의 결과와 도 3에 의하면 랜덤한 64*64 이진 행렬은 99.999%의 확률 로 60 이상의 랭크값을 갖는다.According to the result of
이와 같은 결과에 따라, 웜 존재 판단부(150)는 정상 트래픽 소거 행렬 M'(t)의 랭크값이 60이상인지 판단한다. 만약 정상 트래픽 소거 행렬 M'(t)의 랭크값이 60 이상이면, 정상 트래픽 소거 행렬 M'(t)은 99.999%의 확률로 랜덤한 이진 행렬이므로 제1 네트워크(10) 상에 웜이 존재할 확률이 매우 높아진다. 따라서 이 경우 웜 존재 판단부(150)는 제1 네트워크(10)상에 웜이 존재한다고 판단할 수 있다.According to this result, the worm
다음은 도 4를 참고하여 본 발명의 제2 실시예에 따른 네트워크 감시 장치(200)에 대해 설명한다.Next, a
도 4는 본 발명의 제2 실시예에 따른 네트워크 감시 장치(200)를 도시한 블록도이다.4 is a block diagram showing a
도 4에 도시된 바와 같이 본 발명의 제2 실시예에 따른 네트워크 감시 장치(200)는 제2 네트워크(20)과 제3 네트워크(30) 사이에 존재하는 게이트웨이(40)와 연결되어 제3 네트워크(30)의 상태를 감시하며, 트래픽 수집부(210), 트래픽 행렬 생성부(220), 정상 트래픽 소거부(230), 랭크값 계산부(240), 네트워크 상태 판단부(250)를 포함한다. 네트워크 감시 장치(200)는 게이트웨이(40) 대신에 방화벽 등과 연결될 수도 있다.As shown in FIG. 4, the
트래픽 수집부(220)는 유입 트래픽 수집부(211), 유출 트래픽 수집부(212)를 포함한다. 유입 트래픽 수집부(211)는 제2 네트워크(20)에서 제3 네트워크(30)로 유입되는 유입 트래픽을 수집하고, 유출 트래픽 수집부(212)는 제3 네트워크(30)에 서 제2 네트워크(20)로 나가는 트래픽인 유출 트래픽을 수집한다.The
트래픽 행렬 생성부(220)는 유입 트래픽 행렬 생성부(221), 유출 트래픽 행렬 생성부(222)를 포함한다. 유입 트래픽 행렬 생성부(221)는 t-1초에서 t초 사이의 유입 트래픽으로 유입 트래픽 행렬 MI(t)를 생성하고, t-2초에서 t-1초 사이의 유입 트래픽으로 유입 트래픽 행렬 MI(t-1)를 생성한다. 유출 트래픽 행렬 생성부(222)는 t-1초에서 t초 사이의 유출 트래픽으로 유출 트래픽 행렬 MO(t)를 생성하고, t-2초에서 t-1초 사이의 유출 트래픽으로 유출 트래픽 행렬 MO(t-1)를 생성한다.The
정상 트래픽 소거부(230)는 정상 유입 트래픽 소거부(231) 및 정상 유출 트래픽 소거부(232)를 포함한다. 정상 유입 트래픽 소거부(231)는 MI(t-1)와 MI(t)에 대하여 XOR을 수행하여 정상적인 유입 트래픽이 소거된 MI'(t)를 생성하고, 정상 유출 트래픽 소거부(232)는 MO(t-1)와 MO(t)에 대하여 XOR을 수행하여 정상적인 유출 트래픽이 소거된 MO'(t)를 생성한다. 이를 수학식으로 나타내면 수학식 5와 같다.The
랭크값 계산부(240)는 유입 랭크값 계산부(241) 및 유출 랭크값 계산부(242) 를 포함한다. 유입 랭크값 계산부(241)는 MI'(t)의 랭크값인 유입 랭크값(RI)을 계산하고, 유출 랭크값 계산부(242)는 MO'(t)의 랭크값인 유출 랭크값(RO)을 계산한다. 이를 수학식으로 나타내면 수학식 6과 같다.The
네트워크 상태 판단부(250)는 유입 랭크값(RI) 및 유출 랭크값(RO)의 값에 따라 네트워크의 상태를 파악한다. 네트워크 상태 판단부(250)는 유입 랭크값(RI) 및 유출 랭크값(RO)이 모두 소정의 값(예를 들어, 20)보다 낮은 경우라면, 제3 네트워크(30)가 웜에 영향을 받고 있지 않는다고 판단한다. 또한 네트워크 상태 판단부(250)는 유입 랭크값(RI)이 소정의 값(예를 들어, 60)보다 크고, 유출 랭크값(RO)이 20보다 낮으면 제3 네트워크(30)가 웜에 의해 공격을 받고 있다고 판단한다. 그리고 네트워크 상태 판단부(250)는 유입 랭크값(RI)이 20보다 작고, 유출 랭크값(RO)이 60보다 크면 제3 네트워크(30)가 웜에 감염되어 있다고 판단한다. 한편, 네트워크 상태 판단부(250)는 유입 랭크값(RI) 및 유출 랭크값(RO)이 60보다 크면 제3 네트워크(30)가 웜에 감염되어 있으며 또한 제2 네트워크(20)로부터 웜에 의한 공격을 받고 있다고 판단한다. 네트워크 상태 판단부(250)의 네트워크 상태 판단 기준을 도 5에 도시하였다.The network
도 5는 본 발명의 실시예에 따른 네트워크 상태 판단 기준을 나타낸다. 도 5에서 RI,min과 RO,min은 각각 유입 트래픽 및 유출 트래픽에 웜에 의한 트래픽이 섞여 있지 않음을 나타내는 행렬 MI'(t)와 행렬 MO'(t)의 랭크값이고, RI,max과 RO,max는 각각 유입 트래픽 및 유출 트래픽에 웜에 의한 트래픽이 섞여 있음을 나타내는 행렬 MI'(t)와 행렬 MO'(t)의 랭크값이다.5 illustrates network state determination criteria according to an embodiment of the present invention. In FIG. 5, R I, min and R O, min are rank values of the matrix M I '(t) and the matrix M O ' (t) indicating that the incoming traffic and the outgoing traffic are not mixed with the worm traffic, respectively. R I, max and R O, max are rank values of the matrix M I '(t) and the matrix M O ' (t) indicating that the incoming and outgoing traffic are mixed with the worm traffic.
도 6은 본 발명의 제3 실시예에 따른 네트워크 감시 장치(300)를 도시한 블록도이다.6 is a block diagram showing a
도 6에 도시된 바와 같이 본 발명의 제3 실시예에 따른 네트워크 감시 장치(300)는 제4 네트워크(50)의 웜의 활동을 감시하며, 트래픽 수집부(310), 트래픽 행렬 생성부(320), 정상 트래픽 소거부(330), 랭크값 계산부(340), 감염 서브네트워크 판단부(350)을 포함한다.As shown in FIG. 6, the
제4 네트워크(50)는 복수의 서브네트워크(subnetwork)(51)를 포함한다. 예를 들어 제4 네트워크(50)는 /16 네트워크일 수 있고, 서브네트워크(51)는 /24 네트워크일 수 있다. 여기서 /16 네트워크는 네트워크의 주소가 32비트의 IP 주소 중 상위 16비트에 의해 결정되는 네트워크이고, /24 네트워크는 네트워크의 주소가 32비트의 IP 주소 중 상위 24비트에 의해 결정되는 네트워크이다. 따라서 /16 네트워크는 216개의 네트워크 노드를 포함할 수도 있고, 또는 28개의 /24 네트워크를 포함할 수 있다. /24 네트워크는 28개의 네트워크 노드를 포함할 수 있다.The
트래픽 수집부(310)는 제4 네트워크(50) 상의 트래픽을 수집한다.The
트래픽 행렬 생성부(320)는 제1 시간(예를 들어 t-2초에서 t-1초 사이의 시간) 및 제2 시간(예를 들어 t-1초에서 t초 사이의 시간)에서 서브네트워크(51) 별로 각각 트래픽 행렬을 생성한다. 제4 네트워크(50)가 /16 네트워크이고 서브네트워크(51)가 /24 네트워크라면 제4 네트워크(50)는 256개의 서브네트워크(51)를 포함하므로, 트래픽 행렬 생성부(320)는 제1 시간에서 256개의 트래픽 행렬을 생성하고, 제2 시간에서 256개의 트래픽 행렬을 생성한다.The
정상 트래픽 소거부(330)는 트래킥 행렬 생성부(320)가 생성한 제1 시간에서의 트래픽 행렬 및 제2 시간에서의 트래픽 행렬에 대해 XOR을 수행하여 서브네트워크(51) 별로 정상 트래픽 소거 행렬을 생성한다. 즉, 제4 네트워크(50)가 /16 네트워크이고 서브네트워크(51)가 /24 네트워크인 경우 정상 트래픽 소거부(330)는 256개의 정상 트래픽 소거 행렬을 생성한다.The
랭크값 계산부(340)는 서브네트워크(51) 별로 생성된 정상 트래픽 소거 행렬의 랭크값을 계산한다.The
감염 서브네트워크 판단부(350)는 랭크값 계산부(340)에서 계산된 복수개의 랭크값 중에서 소정의 값(예를 들어 60)을 초과하는 랭크값이 있는 경우 해당 서브네트워크(51)가 웜에 감염되어 있거나 웜에 의해 공격받고 있다고 판단한다.If there is a rank value exceeding a predetermined value (for example, 60) among the plurality of rank values calculated by the
도 7은 시간의 경과에 따라 서브네트워크 별로 네트워크의 랭크값의 추이를 나타낸 그래프이다.FIG. 7 is a graph illustrating a trend of rank values of networks for each subnetwork as time passes.
도 7에 따르면, 48번째의 서브네트워크가 웜에 감염되어 있음을 알 수 있다.According to Figure 7, it can be seen that the 48th subnetwork is infected with the worm.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiments of the present invention described above are not implemented only through the apparatus and the method, but may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded. Implementation may be easily implemented by those skilled in the art from the description of the above-described embodiments.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.
본 발명에 따르면 네트워크 감시 장치는 유입 트래픽의 특성이 반영된 행렬의 랭크값과 유출 트래픽의 특성이 반영된 행렬의 랭크값을 이용하여 네트워크의 구체적인 상태를 파악할 수 있다. 특히 유입 트래픽의 특성이 반영된 행렬의 랭크값이 정상 범위를 초과하는 경우 네트워크 감시 장치는 네트워크가 웜으로부터 공격받고 있음을 조기에 발견하여 웜에 대해 대응할 수 있따.According to the present invention, the network monitoring apparatus can grasp the specific state of the network by using the rank value of the matrix reflecting the characteristics of the incoming traffic and the rank value of the matrix reflecting the characteristics of the outgoing traffic. In particular, when the rank value of the matrix reflecting the characteristics of the incoming traffic exceeds the normal range, the network monitoring device may detect that the network is attacked by the worm and respond to the worm early.
또한 본 발명에 따르면 네트워크 감시 장치는 서브네트워크별로 트래픽의 IP 주소가 반영된 행렬의 랭크값을 이용하여 감염된 서브네트워크를 파악할 수 있다.In addition, according to the present invention, the network monitoring apparatus may identify an infected subnetwork by using a rank value of a matrix in which IP addresses of traffic are reflected for each subnetwork.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060025307A KR100745613B1 (en) | 2006-03-20 | 2006-03-20 | Apparatus and recording medium storing program for monitoring network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060025307A KR100745613B1 (en) | 2006-03-20 | 2006-03-20 | Apparatus and recording medium storing program for monitoring network |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100745613B1 true KR100745613B1 (en) | 2007-08-02 |
Family
ID=38601740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060025307A KR100745613B1 (en) | 2006-03-20 | 2006-03-20 | Apparatus and recording medium storing program for monitoring network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100745613B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100972206B1 (en) * | 2008-11-03 | 2010-07-23 | 고려대학교 산학협력단 | Method and apparatur for detecting distributed denial of service attack |
KR101009482B1 (en) * | 2008-11-03 | 2011-01-25 | 고려대학교 산학협력단 | Method and apparatus for early detecting unknown internet worms |
US8151350B2 (en) * | 2008-11-03 | 2012-04-03 | Korea University Industry And Academy Collaboration Foundation | Method and device for detecting unknown network worms |
KR101455293B1 (en) * | 2013-03-28 | 2014-10-31 | 고려대학교 산학협력단 | Device and method for detecting cache attack |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030063949A (en) * | 2002-01-24 | 2003-07-31 | 박정현 | The method and system for preventing and curing computer virus |
KR20030087583A (en) * | 2003-05-23 | 2003-11-14 | 김성호 | A system for detecting hacker invasion of personal computer |
-
2006
- 2006-03-20 KR KR1020060025307A patent/KR100745613B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030063949A (en) * | 2002-01-24 | 2003-07-31 | 박정현 | The method and system for preventing and curing computer virus |
KR20030087583A (en) * | 2003-05-23 | 2003-11-14 | 김성호 | A system for detecting hacker invasion of personal computer |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100972206B1 (en) * | 2008-11-03 | 2010-07-23 | 고려대학교 산학협력단 | Method and apparatur for detecting distributed denial of service attack |
KR101009482B1 (en) * | 2008-11-03 | 2011-01-25 | 고려대학교 산학협력단 | Method and apparatus for early detecting unknown internet worms |
US8151350B2 (en) * | 2008-11-03 | 2012-04-03 | Korea University Industry And Academy Collaboration Foundation | Method and device for detecting unknown network worms |
KR101455293B1 (en) * | 2013-03-28 | 2014-10-31 | 고려대학교 산학협력단 | Device and method for detecting cache attack |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3394783B1 (en) | Malicious software identification | |
EP3394784B1 (en) | Malicious software identification | |
US10931689B2 (en) | Malicious network traffic identification | |
Zou et al. | The monitoring and early detection of internet worms | |
Zou et al. | Monitoring and early warning for internet worms | |
Berk et al. | Designing a framework for active worm detection on global networks | |
Bailey et al. | A survey of botnet technology and defenses | |
JP5242775B2 (en) | Method and system for identifying corporate network hosts infected with slow and / or distributed scanning malware | |
GB2545910A (en) | Malicious software identification | |
EP3395035B1 (en) | Malicious network traffic identification | |
Bou-Harb et al. | Multidimensional investigation of source port 0 probing | |
KR100745613B1 (en) | Apparatus and recording medium storing program for monitoring network | |
Bou-Harb et al. | Csc-detector: A system to infer large-scale probing campaigns | |
Shahzad et al. | Towards automated distributed containment of zero-day network worms | |
Malliga et al. | A proposal for new marking scheme with its performance evaluation for IP traceback | |
Jin et al. | Gray’s anatomy: Dissecting scanning activities using IP gray space analysis | |
Tubi et al. | Deployment of DNIDS in social networks | |
Vasilomanolakis et al. | On probe-response attacks in collaborative intrusion detection systems | |
Park et al. | Detecting unknown worms using randomness check | |
Anbar et al. | Investigating study on network scanning techniques | |
Tayal et al. | Communication recurrence and similarity detection in network flows | |
Sørensen et al. | An Approach to Detect and Prevent Cybercrime in Large Complex Networks | |
GB2545745A (en) | Malicious software identification | |
Emara et al. | A novel traceback model for DDoS attacks using modified Floyd-Warshall algorithm | |
Adebayo et al. | A model for computer worm detection in a computer network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120615 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130621 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140827 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20151026 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170403 Year of fee payment: 10 |
|
R401 | Registration of restoration | ||
FPAY | Annual fee payment |
Payment date: 20170707 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20180702 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20190715 Year of fee payment: 13 |