[go: up one dir, main page]

KR100930902B1 - Attack traceback method in mobile adhook network - Google Patents

Attack traceback method in mobile adhook network Download PDF

Info

Publication number
KR100930902B1
KR100930902B1 KR1020080027180A KR20080027180A KR100930902B1 KR 100930902 B1 KR100930902 B1 KR 100930902B1 KR 1020080027180 A KR1020080027180 A KR 1020080027180A KR 20080027180 A KR20080027180 A KR 20080027180A KR 100930902 B1 KR100930902 B1 KR 100930902B1
Authority
KR
South Korea
Prior art keywords
node
cluster
entry
bloom filter
network
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020080027180A
Other languages
Korean (ko)
Other versions
KR20090102001A (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 KR1020080027180A priority Critical patent/KR100930902B1/en
Publication of KR20090102001A publication Critical patent/KR20090102001A/en
Application granted granted Critical
Publication of KR100930902B1 publication Critical patent/KR100930902B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • H04W12/122Counter-measures against attacks; Protection against rogue devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/146Tracing the source of attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

MANET이 가지는 자원 제약사항을 고려하여 각 클러스터에 포함된 헤드 노드가 모든 패킷들을 다이제스트화하여 블룸 필터에 저장하는 본 발명의 일 측면에 따른 공격 근원 노드를 역추적하는 방법은 복수개의 노드들이 WCA(Weighted Clustering Algorithm)를 이용하여 클러스터링되어 있는 이동 애드훅 네트워크(Mobile Ad-hoc Network)에서 공격 근원 노드를 역추적하는 방법으로서, (a) 각 클러스터(Cluster)의 헤드 노드가 헤드 노드에 탑재된 NIDS(Network-Based Intrusion Detection) 모듈을 활성화하여 모든 패킷들을 모니터링하는 단계; (b) 각 클러스터의 헤드 노드가 모니터링된 패킷들에 대한 다이제스트를 블룸 필터(Bloom Filter)에 저장하는 단계; (c) 각 클러스터의 헤드 노드가 클러스터에 포함된 구성원 노드에 의해 발생된 역추적 메시지가 수신되면, 인접한 클러스터의 헤드 노드로 상기 역추적 메시지에 포함된 공격 패킷과 관련된 다이제스트를 포함하고 있는지 여부에 대한 확인을 요청하는 단계; (d) 인접한 클러스터의 헤드 노드들로부터 수신되는 응답 확인 메시지를 이용하여 공격 근원 노드를 역추적하는 단계; 및 (e) 공격 근원 노드로부터 발생되는 모든 트래픽을 필터링하는 단계를 포함한다.In consideration of the resource constraints of the MANET, the method of backtracking an attack source node according to an aspect of the present invention in which a head node included in each cluster digests all packets and stores them in a bloom filter is performed by a plurality of nodes. A method of backtracking an attack source node in a clustered Mobile Ad-hoc Network using a Weighted Clustering Algorithm, comprising: (a) NIDS in which the head node of each cluster is mounted on the head node. Activating a Network-Based Intrusion Detection module to monitor all packets; (b) the head node of each cluster storing a digest for the monitored packets in a Bloom Filter; (c) if the head node of each cluster receives a backtrace message generated by a member node included in the cluster, whether the head node of an adjacent cluster includes a digest associated with the attack packet included in the backtrace message. Requesting confirmation; (d) backtracking the attack source node using response acknowledgment messages received from head nodes of adjacent clusters; And (e) filtering all traffic originating from the attack source node.

이동, 애드훅, MANET, Bloom Filter, 역추적  Go, Adhook, MANET, Bloom Filter, Traceback

Description

이동 애드훅 네트워크에서의 공격 근원 노드 역추적 방법{Method for Traceback for Attacked Node in Mobile Ad-hoc Network}Method for Traceback for Attacked Node in Mobile Ad-hoc Network}

본 발명은 이동 애드훅 네트워크 보안에 관한 것으로서 보다 상세하게는 이동 애드훅 네트워크 상에서 최초 공격 노드를 역추적 하는 방법에 관한 것이다.The present invention relates to mobile adhook network security, and more particularly, to a method for backtracking an initial attack node on a mobile adhook network.

일반적으로 이동 애드혹 네트워크(Mobile Ad-hoc Network, 이하 'MANET'이라 함)는 기존의 통신 기반 시설이 존재하지 않는 상황에서 이동 노드들이 자율적으로 다수의 홉(Hop)을 통해 통신하는 네트워크로 정의된다.In general, a mobile ad-hoc network (hereinafter referred to as 'MANET') is defined as a network in which mobile nodes autonomously communicate through a number of hops in the absence of an existing communication infrastructure. .

이러한 MANET는 동적 위상 변화, 네트워크의 제한된 대역폭, 호스트의 제한된 에너지, 및 제한된 물리적 보안 등 기존 네트워크와는 구별되는 특징들을 가진다. 이와 같은 특성으로 인해 MANET은 태생적으로 다수의 악의적인 공격에 대해 취약할 수 밖에 없다.This MANET has distinct characteristics from existing networks, such as dynamic topology changes, limited bandwidth of the network, limited energy of the host, and limited physical security. These characteristics make MANET inherently vulnerable to many malicious attacks.

특히, 원격 호스트 혹은 네트워크의 자원을 소비시킴으로써 합법적인 사용자들에 대한 서비스를 감소 또는 거부시키도록 만드는 DoS(Denial of Service) 공격이 MANET에 적용되는 경우, 자원 제약을 가지는 노드들의 지속적인 통신 참여로 인한 에너지 소모의 문제는 더욱 심각해 진다.In particular, when a Denial of Service (DoS) attack is applied to MANET, which reduces or denies service to legitimate users by consuming resources of a remote host or network, The problem of energy consumption is even worse.

이러한 공격에 대한 근본적인 해결책은 공격의 근원지를 추적하여 해당 위치에서 공격을 중지시키는 것이므로 공격 근원지를 추적하기 위해 다양한 공격 근원지 역추적(Traceback) 방법이 제안되었다. 이러한 역추적 방법 중 대표적인 것으로는 PPM(Probabilistic Packet Marketing) 방법, ITrace(ICMP Traceback) 방법, 및 Logging 방법이 있다.Since the fundamental solution to such an attack is to track the source of the attack and stop the attack at the location, various traceback methods have been proposed to track the source of the attack. Representative examples of such traceback methods include Probabilistic Packet Marketing (PPM), ITrace (ICMP Traceback), and Logging.

하지만, 상술한 종래의 공격 근원지 역추적 방법은 대부분 고정된 유선 네트워크에 적합한 방법으로 이러한 방법을 바로 MANET에 적용하는 것은 다음과 같은 문제점이 있다.However, the above-described conventional attack source traceback method is most suitable for fixed wired networks, and applying such a method directly to a MANET has the following problems.

첫째, 유선 네트워크 환경에서는 단일 공격 흐름을 구성하는 모든 패킷들이 동일한 라우팅 경로를 사용하지만, MANET에서는 네트워크를 구성하는 모든 노드들이 자유롭게 이동할 수 있고 이로 인해 네트워크의 위상이 수시로 변경되므로, 공격 패킷의 라우팅 경로 역시 수시로 변경될 수 있어 종래의 역추적 방법을 이용하여 MANET 환경에서의 공격 근원지를 찾는 것은 한계가 있다는 문제점이 있다.First, in a wired network environment, all packets constituting a single attack flow use the same routing path, but in MANET, all nodes constituting the network can move freely and the topology of the network changes from time to time. It can also be changed from time to time, there is a problem that it is limited to find the source of the attack in the MANET environment using the conventional traceback method.

둘째, 종래의 역추적 기법은 네트워크를 구성하는 대부분의 라우터가 안전하다는 가정하에 제안되었지만, MANET에서 라우터의 역할을 수행하는 노드들은 그 특성상 쉽게 공격 당할 수 있기 때문에 공격 근원지를 정확하게 역추적할 수 없다는 문제점이 있다.Second, the conventional traceback method is proposed under the assumption that most routers in the network are secure, but the nodes acting as routers in MANET cannot be traced back to the origin of attack because they are easily attacked by their characteristics. There is a problem.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, MANET이 가지는 자원 제약사항을 고려하여 각 클러스터에 포함된 헤드 노드가 모든 패킷들을 다이제스트화하여 블룸 필터에 저장하는 이동 애드훅 네트워크에서의 공격 근원 노드 역추적 방법을 제공하는 것을 기술적 과제로 한다.The present invention is to solve the above-described problem, in consideration of the resource constraints of the MANET, the head node included in each cluster digests all the packets to store in the bloom filter reverse attack source node inverse It is a technical task to provide a tracking method.

또한, 본 발명은 동적 위상을 가지는 MANET의 특성을 고려하여 블룸 필터에 저장된 정보를 최신 상태로 유지할 수 있는 이동 애드훅 네트워크에서의 공격 근원 노드 역추적 방법을 제공하는 것을 다른 기술적 과제로 한다.Another object of the present invention is to provide a method for backtracking an attack source node in a mobile adhook network that can keep information stored in a bloom filter up to date in consideration of characteristics of a MANET having a dynamic topology.

상술한 목적을 달성하기 위한 본 발명의 일 측면에 따른 공격 근원 노드를 역추적하는 방법은 복수개의 노드들이 WCA(Weighted Clustering Algorithm)를 이용하여 클러스터링되어 있는 이동 애드훅 네트워크(Mobile Ad-hoc Network)에서 공격 근원 노드를 역추적하는 방법으로서, (a) 각 클러스터(Cluster)의 헤드 노드가 헤드 노드에 탑재된 NIDS(Network-Based Intrusion Detection) 모듈을 활성화하여 모든 패킷들을 모니터링하는 단계; (b) 각 클러스터의 헤드 노드가 모니터링된 패킷들에 대한 다이제스트를 블룸 필터(Bloom Filter)에 저장하는 단계; (c) 각 클러스터의 헤드 노드가 클러스터에 포함된 구성원 노드에 의해 발생된 역추적 메시지가 수신되면, 인접한 클러스터의 헤드 노드로 상기 역추적 메시지에 포함된 공격 패킷과 관련된 다이제스트를 포함하고 있는지 여부에 대한 확인을 요청하는 단계; (d) 인접한 클러스터의 헤드 노드들로부터 수신되는 응답 확인 메시지를 이용하여 공격 근원 노드를 역추적하는 단계; 및 (e) 공격 근원 노드로부터 발생되는 모든 트래픽을 필터링하는 단계를 포함한다.A method for backtracking an attack source node according to an aspect of the present invention for achieving the above object is a mobile ad-hoc network in which a plurality of nodes are clustered using a WCA (Weighted Clustering Algorithm) A method of backtracking an attack source node in a network, the method comprising: (a) activating a network-based intrusion detection (NIDS) module mounted on a head node by a head node of each cluster to monitor all packets; (b) the head node of each cluster storing a digest for the monitored packets in a Bloom Filter; (c) if the head node of each cluster receives a backtrace message generated by a member node included in the cluster, whether the head node of an adjacent cluster includes a digest associated with the attack packet included in the backtrace message. Requesting confirmation; (d) backtracking the attack source node using response acknowledgment messages received from head nodes of adjacent clusters; And (e) filtering all traffic originating from the attack source node.

이때, 상기 (b)단계는, (b1) k개의 해쉬 함수에 대해 상기 모니터링된 패킷 중 일부 비트 크기의 데이터를 입력함으로써 n비트 크기의 다이제스트들을 생성하는 단계; (b2) 2n개의 엔트리로 구성된 블룸 필터의 각 엔트리의 크기를 n비트로 확장하는 단계; (b3) 상기 블룸 필터의 엔트리 중 상기 다이제스트와 관련된 엔트리의 모든 비트를 제1 값으로 설정하는 단계; 및 (b4) 시간의 경과에 따라 상기 각 엔트리의 비트들 중 최상위 비트를 제외한 비트에 상응하는 값을 감소시킴으로써 최상위 비트를 제외한 비트의 값이 제2 값이 되는 경우 해당 엔트리를 상기 블룸 필터에서 삭제하는 단계를 포함하는 것을 특징으로 한다.In this case, step (b) comprises: (b1) generating digests of n bit size by inputting some bit size data of the monitored packet for k hash functions; (b2) expanding the size of each entry of the bloom filter of 2 n entries to n bits; (b3) setting all bits of the entry associated with the digest of the bloom filter to a first value; And (b4) when the value of the bit except the most significant bit becomes a second value by decreasing a value corresponding to a bit except the most significant bit among the bits of each entry as time passes, deleting the corresponding entry from the bloom filter. Characterized in that it comprises a step.

일 실시예에 있어서, 상기 (b) 단계는 상기 블룸 필터의 엔트리들 중 이전 입력에 상응하는 엔트리와 현재 입력에 상응하는 엔트리가 중복되는 경우, 해당 엔트리의 비트들 중 최상위 비트를 제외한 모든 비트를 제1 값으로 재설정하는 단계를 더 포함하는 것을 특징으로 한다.In one embodiment, the step (b), if the entry corresponding to the previous input and the entry corresponding to the current input of the bloom filter entries overlap, all bits except the most significant bit of the bits of the entry And resetting to a first value.

한편, 상기 (b1) 단계에서, 상기 모니터링된 패킷 중 일부 비트 크기의 데이터는 해당 패킷 중 20바이트 크기의 IP헤더와 IP 데이터 중 최초 8바이트를 결합함에 의해 생성되는 것을 특징으로 하며, 이때, 상기 IP 헤더 중 각 노드를 통해 각 패킷이 전달될 때 변경될 수 있는 값들을 제2 값으로 설정하는 것을 특징으로 한 다.Meanwhile, in the step (b1), some bit size data of the monitored packet is generated by combining an IP header having a size of 20 bytes of the packet and the first 8 bytes of the IP data. It is characterized by setting a value that can be changed when each packet is transmitted through each node of the IP header as a second value.

상술한 바와 같이 본 발명에 따르면, MANET이 가지는 자원 제약사항을 고려하여 각 클러스터에 포함된 헤드 노드가 모든 패킷들을 다이제스트화하여 블룸 필터에 저장하기 때문에, 전체 네트워크에서 교환되는 정보를 효율적으로 관리할 수 있다는 효과가 있다.As described above, according to the present invention, since the head node included in each cluster digests all packets and stores them in a bloom filter in consideration of resource constraints of the MANET, information exchanged in the entire network can be efficiently managed. It can be effective.

또한, 본 발명에 따르면 블룸 필터의 각 엔트리에 타임태그를 추가함으로써 오래된 데이터가 블룸 필터 내에서 삭제될 수 있도록 함으로써 블룸 필터에 저장된 정보를 최신 상태로 유지할 수 있다는 효과가 있다. In addition, according to the present invention, by adding a time tag to each entry of the bloom filter, old data can be deleted in the bloom filter, thereby keeping the information stored in the bloom filter up to date.

이하 첨부된 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 이동 애드훅 네트워크에서의 공격 근원 노드 역추적을 위한 패킷 저장 방법을 보여주는 플로우차트이다.1 is a flowchart illustrating a packet storage method for backtracking an attack source node in a mobile adhook network according to an embodiment of the present invention.

먼저, 도시된 바와 같이 이동 애드훅 네트워크(Mobile Ad-hoc Network, 이하 'MANET'라 함)에 포함된 노드들을 WCA(Weighted Clustering Algorithm)을 이용하여 클러스터링한다(제100단계). 이때, 각 노드들을 클러스터링함과 동시에 각 클러스터 내에 포함된 노드들 중 헤드 노드와 구성원 노드를 결정한다. 여기서, 헤드 노드라 함은 후술할 패킷들을 모니터링함으로써 모니터링된 패킷들을 저장하는 역할을 수행하는 것을 의미하고, 구성원 노드라 함은 각 클러스터 내에서 헤드 노드를 제외한 다른 모든 노드를 의미한다.First, as illustrated, nodes included in a mobile ad-hoc network (hereinafter referred to as 'MANET') are clustered using a WCA (Weighted Clustering Algorithm) (step 100). At this time, each node is clustered and head nodes and member nodes are determined among the nodes included in each cluster. Here, the head node means serving to store the monitored packets by monitoring packets to be described later, and the member node means all other nodes except the head node in each cluster.

일 실시예에 있어서, 각 헤드 노드에는 NIDS(Network-Based Intrusion Detection System)모듈이 탑재되어 있다. NIDS 모듈은 네트워크를 통해 전송되는 패킷들을 모니터링해서 외부자의 침입이나 내부자에 의한 데이터의 유출을 감시하는 시스템 모듈을 의미하는 것으로서, 이러한 NIDS 모듈은 소정의 침입 패턴을 분석하여 데이터베이스에 저장하고 데이터베이스에 저장된 침입 패턴을 토대로 외부자의 침입이나 내부자에 의한 데이터의 유출을 모니터링을 통해 감시하는 기능을 수행한다.In one embodiment, each head node is equipped with a Network-Based Intrusion Detection System (NIDS) module. The NIDS module refers to a system module that monitors packets transmitted through the network and monitors intrusion of outsiders or leakage of data by insiders.These NIDS modules analyze and store certain intrusion patterns in a database. Based on the intrusion pattern, it monitors the intrusion of outsiders or the leakage of data by insiders through monitoring.

이후, 각 클러스터의 헤드 노드가 NIDS 모듈을 활성화함으로써 모든 패킷들을 모니터링한다(제110단계). 다음으로, 각 클러스터의 헤드 노드는 모니터링한 패킷들의 다이제스트를 저장한다(제120단계). 이때, 각 헤드 노드가 모니터링한 패킷을 저장하는 경우 막대한 저장 공간이 필요하기 때문에, 일 실시예에 있어서 헤드 노드는 해당 패킷들의 다이제스트를 생성한 후, 생성된 다이제스트를 블룸 필터(Bloom Filter)에 저장한다.Thereafter, the head node of each cluster monitors all packets by activating the NIDS module (step 110). Next, the head node of each cluster stores the digest of the monitored packets (step 120). At this time, since each head node stores a large amount of storage space when storing the monitored packet, in one embodiment, the head node generates a digest of the corresponding packets, and then stores the generated digest in a bloom filter. do.

블룸 필터란 저장 공간 문제를 효과적으로 다룰 수 있는 자료구조로써 특정 집합의 포함 여부를 검사하는데 사용되는 것으로서, 도 2에 도시된 바와 같이 저장할 데이터를 k개의 독립적인 해쉬(Hash)함수를 이용하여 크기가 n 비트인 각각의 다이제스트를 생성하고, 이를 2n 크기의 비트 테이블의 인덱스로 사용하는 일종의 해쉬 테이블이라고 할 수 있다. 이러한 비트 테이블의 값은 모두 0으로 초기화 되어 있고, 다이제스트와 관련된 비트 필드는 1로 설정된다.The bloom filter is a data structure that can effectively deal with storage space problems. It is used to check whether a specific set is included. As shown in FIG. 2, the size of the data filter is stored using k independent hash functions. It is a kind of hash table that creates each digest of n bits and uses it as an index of a 2 n size bit table. The values of these bit tables are all initialized to zero, and the bit fields associated with the digest are set to one.

이후, 어떤 정보가 테이블 상에 존재하는지 체크하기 위해 해당 정보를 다시 k개의 해쉬 함수를 이용하여 다이제스트를 생성하고, 생성된 k개의 다이제스트를 인덱스로 하는 테이블 내부 비트들을 조사한다. 조사한 결과, 생성된 다이제스트와 관련된 k개의 테이블 비트들이 모두 1이라면 해당 정보가 테이블상에 존재하는 것이고, 비트들 중에서 하나라도 0이라면 해당 정보가 테이블 상에 존재하지 않는 것이다.Then, in order to check what information exists on the table, the information is again generated using k hash functions, and the internal table bits are examined by indexing the generated k digests. As a result, if the k table bits related to the generated digest are all 1, the information exists on the table. If any of the bits is 0, the information does not exist on the table.

이하에서는, 각 클러스터의 헤드 노드가 모니터링된 패킷들의 다이제스트를 블룸 필터에 저장하는 방법을 도 3을 참조하여 구체적으로 설명한다.Hereinafter, a method in which the head node of each cluster stores a digest of monitored packets in a bloom filter will be described in detail with reference to FIG. 3.

먼저, 모니터링된 패킷 중 일부 영역의 데이터를 추출한다(제300단계). 여기서, 모니터링된 패킷 중 일부 영역 영역의 데이터를 추출하는 것은 시스템의 성능 문제와 관련하여 해쉬 함수의 입력이 되는 데이터의 크기를 제한하기 위한 것이다.First, data of a part of the monitored packet is extracted (operation 300). Here, the extraction of the data of the partial region of the monitored packet is to limit the size of data that is input to the hash function in relation to the performance problem of the system.

일 실시예에 있어서, 도 4에 도시된 바와 같은 구조를 가지는 패킷 중 20 바이트 크기의 IP 헤더와 IP 페이로드(Payload) 중 최초 8바이트를 추출하여 결합한 28 바이트 크기의 데이터를 해쉬 함수의 입력으로 사용할 수 있다. 이때, IP 헤더 영역 중에서 TOS(Type of Service), TTL, Checksum, Option과 같이 각 노드가 패킷을 전달할 때 변경될 수 있는 값들을 모두 0으로 채운다.In one embodiment, a 28-byte data obtained by extracting and combining the 20-byte IP header and the first 8 bytes of the IP payload from the packet having the structure as shown in FIG. 4 is input to the hash function. Can be used. At this time, all values that can be changed when each node forwards a packet, such as TOS (Type of Service), TTL, Checksum, and Option, are filled with 0 in the IP header area.

한편, 해쉬 함수의 입력 데이터를 생성함에 있어서 무선 환경은 유선 환경과는 다르게 하위 레이어에서의 충돌에 의한 재전송이 빈번하게 발생하므로, 블룸 필터에 이전 입력과 동일한 IP 패킷에 대한 다이제스트 입력이 들어갈 수 있고, 이는 블룸 필터로의 입력에 대한 잘못된 충돌로 보고된다. 따라서, 특정 IP 패킷의 IP 헤더 영역 중 Identification 필드 값이 이전 IP 패킷의 Identification 필드 값과 동일한 경우, 해당 IP 패킷은 입력 데이터 생성 대상에서 제외하는 것이 바람직하다.On the other hand, in generating the input data of the hash function, unlike in the wired environment, the wireless environment frequently causes retransmission due to collision at a lower layer, and therefore, the bloom filter may include a digest input for the same IP packet as the previous input. This is reported as a false collision on the input to the bloom filter. Therefore, when the Identification field value in the IP header area of the specific IP packet is the same as the Identification field value of the previous IP packet, it is preferable to exclude the corresponding IP packet from the input data generation target.

다시 도 3을 참조하면 추출된 데이터를 k개의 해쉬함수에 입력함으로써 n비트 크기의 다이제스트를 생성하고(제310단계), 블룸 필터의 각 엔트리를 n비트로 확장한다(제320단계).Referring to FIG. 3 again, the extracted data is input into k hash functions to generate an n-bit digest (step 310), and each entry of the bloom filter is expanded to n bits (step 320).

여기서, 각 엔트리를 n비트로 확장하는 이유는 소정 시간이 경과하였을 때, 블룸 필터에 저장되어 있는 오래된 데이터를 자동으로 삭제하기 위해 각 엔트리에 타임 태그(Timetag)를 정의하기 위한 것이다. 구체적으로, 블룸 필터에 저장되어 있는 데이터를 삭제해야 하는 이유는 블룸 필터의 크기는 고정되어 있고 계속적인 입력 데이터가 발생하는 경우 결국 블룸 필터의 모든 비트들이 1로 설정되며, 이후의 블룸 필터에 대한 모든 요청은 그 결과가 항상 False Positive가 되도록 만들게 되기 때문이다.The reason for extending each entry to n bits is to define a time tag for each entry in order to automatically delete old data stored in a bloom filter when a predetermined time elapses. Specifically, the reason that the data stored in the bloom filter should be deleted is that when the size of the bloom filter is fixed and continuous input data is generated, all bits of the bloom filter are set to 1, and the subsequent bloom filter This is because every request makes the result always false positive.

이러한 문제점을 해결하기 위해 종래의 유선 네트워크에서는 일정 시간이 지나면 블룸 필터의 전체 테이블을 지정된 장소에 따로 보관하고, 비트 테이블을 초기화하는 방법을 이용하였다. 그러나, MANET의 경우 독립적으로 네트워크를 구성하고 매우 제한적인 자원을 가지는 특성 때문에 비트 테이블 전체를 따로 저장할 수 있는 적절한 위치가 없다. 또한, MANET은 동적인 특성으로 인해 네트워크의 라우팅 정보가 수시로 변하는 환경이기 때문에 이전에 블룸 필터에 저장된 데이터는 무용한 데이터가 될 확률이 매우 높다.In order to solve this problem, in the conventional wired network, after a predetermined time, the entire table of the bloom filter is stored separately at a designated place, and a method of initializing the bit table is used. However, in the case of MANET, there is no proper location to store the entire bit table separately because of the characteristics of the network being configured independently and having very limited resources. In addition, since MANET is an environment in which the routing information of a network changes frequently due to its dynamic characteristics, data previously stored in a bloom filter is very likely to be useless data.

따라서, 본 발명에서는 블룸 필터에 저장되어 있는 오래된 데이터를 선택해서 삭제하기 위해 도 5에 도시된 바와 같이 각 엔트리의 크기를 n비트로 확장하고, n비트 중 최상위 비트(Most Significant Bit: MSB)를 제외한 n-1비트를 해당 엔트리의 생존 시간을 나타내는 타임태그로 사용한다.Therefore, in the present invention, in order to select and delete old data stored in the bloom filter, the size of each entry is expanded to n bits as shown in FIG. 5, except for the most significant bit (MSB) of n bits. Use n-1 bits as the time tag representing the survival time of the entry.

이때, 타임 태그는 시스템 내부 타이머에 의해 정해진 시간 간격 마다 그 값이 1씩 감소되고, 최종적으로 그 값이 0이 되면 해당 엔트리는 블룸 필터의 비트 테이블 상에서 삭제된다.At this time, the time tag is decremented by 1 every time interval determined by the system internal timer. When the value is finally 0, the entry is deleted from the bit table of the bloom filter.

다음으로, 블룸 필터의 엔트리 중 다이제스트와 관련된 엔트리의 최상위 비트를 1로 설정하고, 해당 엔트리의 타임태그 값을 모두 1로 설정한다(제330단계). 즉, 입력 다이제스트와 관련된 엔트리의 모든 비트들의 값을 1로 설정하는 것이다. 이후, 시간과 경과에 따라 각 엔트리의 비트들 중 타임태그에 해당하는 비트 값을 1씩 감소시킨다(제340단계).Next, the most significant bit of the entry related to the digest among the entries of the bloom filter is set to 1, and the time tag values of the entry are all set to 1 (step 330). That is, the value of all bits of the entry associated with the input digest is set to one. Thereafter, the bit value corresponding to the time tag among the bits of each entry is decreased by one as time and elapses (step 340).

한편, 상술한 과정을 수행하는 도중에, 이전 입력에 상응하는 엔트리와 현재 입력에 상응하는 엔트리가 중복되는지 여부를 판단하여(제350단계), 중복되는 경우 해당 엔트리의 비트들 중 타임태그에 상응하는 모든 비트들의 값을 1로 재설정한다(제360단계). 이를 통해 이전 입력과 현재 입력에서 중복되는 엔트리는 이전 입력의 테이블 내부에서 생존 시간 동안 유효하다가 시간이 지나 이전 입력이 삭제될 때에도 현재 입력의 생존 시간 동안 테이블 상에서 유효하게 존재하게 된다.Meanwhile, while performing the above-described process, it is determined whether the entry corresponding to the previous input and the entry corresponding to the current input are overlapped (operation 350), and if duplicated, the time tag among the bits of the corresponding entry The value of all bits is reset to 1 (step 360). This ensures that entries that overlap in the previous input and the current input remain valid for the survival time within the table of the previous input, and remain valid on the table for the lifetime of the current input even when the previous input is deleted over time.

마지막으로, 각 엔트리의 비트들 중 타임태그에 상응하는 비트의 값이 0이 되면 해당 엔트리를 블룸 필터에서 삭제한다(제370단계).Finally, when the value of the bit corresponding to the time tag among the bits of each entry becomes 0, the corresponding entry is deleted from the Bloom filter (step 370).

각 엔트리의 타임태그 설정 및 중복된 엔트리에 대한 타임태그 재설정 과정을 도식화하면 도 6과 같다. 먼저 도 6a에 도시된 바와 같이 첫 번째 입력에 의해 3개의 엔트리가 설정된다. 이때, 각 엔트리의 최상위 비트는 1로 설정되고, 타임태그에 상응하는 모든 비트들의 값도 1로 설정된다.6 illustrates a time tag setting of each entry and a time tag resetting process for duplicate entries. First, as shown in Fig. 6A, three entries are set by the first input. At this time, the most significant bit of each entry is set to 1, and the value of all bits corresponding to the time tag is also set to 1.

이후, 도 6b에 도시된 바와 같이 시간 t가 경과한 후에 두 번째 입력에 의해 3개의 설정된다. 이때, 엔트리 중 일부가 첫 번째 입력에 의해 설정된 엔트리와 중복되기 때문에, 중복되는 엔트리의 타임태그에 상응하는 모든 비트들의 값을 1로 재설정되고, 중복되지 않는 엔트리의 타임태그에 상응하는 비트는 t만큼 감소됨을 알 수 있다.Thereafter, as shown in Fig. 6B, three times are set by the second input after the time t has elapsed. At this time, since some of the entries overlap with the entry set by the first input, the value of all bits corresponding to the time tag of the duplicate entry is reset to 1, and the bit corresponding to the time tag of the non-overlapping entry is t. It can be seen that the decrease.

이후, 도 6c에 도시된 바와 같이 시간 t로부터 시간 s가 경과한 후 첫 번째 입력에 의해 설정된 엔트리가 블룸 필터의 비트 테이블 상에서 삭제된다. 이때, 두 번째 입력과 중복되는 엔트리들은 삭제되지 않고 테이블 상에서 유효하게 존재함을 알 수 있다.Then, as shown in Fig. 6C, after the time s has elapsed from the time t, the entry set by the first input is deleted on the bit table of the Bloom filter. At this time, it can be seen that entries duplicated with the second input are valid on the table without being deleted.

이하에서는, 각 클러스터의 헤드 노드가 모니터링된 패킷의 다이제스트를 블룸 필터에 저장하는 과정을 예를 들을 설명한다. 도 7에 도시된 바와 같이, 해쉬 함수의 입력으로 모니터링된 패킷 중 28 바이트 크기의 데이터가 사용되고, 해쉬 함수의 출력인 다이제스트의 크기는 16비트라고 가정하고, 비트 테이블의 엔트리의 크기는 8비트라고 가정한다. 이러한 경우, 비트 테이블의 엔트리 수는 64K(2n=216) 개가 된다.Hereinafter, an example of a process in which the head node of each cluster stores the digest of the monitored packet in the bloom filter will be described. As shown in FIG. 7, it is assumed that 28 bytes of data monitored as an input of the hash function are used, and that the size of the digest, which is the output of the hash function, is 16 bits, and the size of an entry in the bit table is 8 bits. Assume In this case, the number of entries in the bit table is 64K (2 n = 2 16 ).

즉, 각 엔트리는 블룸 필터에서 기존 역할을 담당하는 최상위 한비트와 타임태그 역할을 수행하는 7비트로 구성된다. 타임태그의 크기가 7비트이기 때문에 타임태그가 가질 수 있는 값의 범위는 0~127(0~27-1)이다. 그러므로, 전체 비트 테이블은 64KB의 크기를 가지게 된다.That is, each entry is composed of 7 bits which play the role of time tag and the most significant bit which plays the role of existing in Bloom filter. Since the size of the time tag is 7 bits, the range of values that the time tag can have is 0 to 127 (0 to 2 7 -1). Therefore, the entire bit table has a size of 64 KB.

한편, 도 7에 도시된 바와 같이, 각 다이제스트와 관련된 엔트리에 대해 최상위 비트를 1로 설정하고, 해당 엔트리의 나머지 n-1 비트 크기의 타임태그를 최대값으로 설정하게 되므로, 타임태그 값은 127(0x7F=0111 1111b)로 설정된다.Meanwhile, as shown in FIG. 7, since the most significant bit is set to 1 for the entry related to each digest and the time tag of the remaining n-1 bit size of the entry is set to the maximum value, the time tag value is 127. (0x7F = 0111 1111b).

상술한 바와 같이 설정된 블룸 필터에서 시간과 경과에 따른 엔트리의 입력과 삭제과정은 도 8에 도시된 바와 같다. 도 8a에 도시된 바와 같이 첫 번째 입력에 대해 3개의 엔트리가 설정되고, 도 8b에 도시된 바와 같이 일정 시간이 지났을 때 해당 엔트리의 타임태그 값이 감소됨을 알 수 있다. 한편, 도 8c에 도시된 바와 같이 두 번째 입력이 발생하는 경우 4번 엔트리가 이전 입력과 중복되기 때문에 4번 엔트리의 타임태그 값이 최대값인 127로 재설정됨을 알 수 있다.In the Bloom filter configured as described above, an entry and deletion process of an entry over time and elapses is illustrated in FIG. 8. As shown in FIG. 8A, three entries are set for the first input, and as shown in FIG. 8B, the time tag value of the entry decreases after a predetermined time. On the other hand, as shown in FIG. 8C, when the second input occurs, since the fourth entry overlaps with the previous input, it can be seen that the time tag value of the fourth entry is reset to 127 which is the maximum value.

도 9는 본 발명의 일 실시예에 따른 이동 애드훅 네트워크에서의 공격 근원 노드 역추적 방법을 보여주는 플로우차트이다.9 is a flowchart illustrating a method for backtracking an attack source node in a mobile adhook network according to an embodiment of the present invention.

먼저, 제1 클러스터의 제1 헤드 노드가 제1 클러스터에 포함된 제1 구성원 노드로부터 역추적 메시지를 수신한다(제900단계). 이때, 클러스터에 포함된 모든 노드는 Host-Based IDS를 탑재하고 있어서 노드 자신으로의 공격을 탐지할 수 있으 며, 각 노드는 자신으로의 공격이 탐지되면 공격 패킷 자체, 공격 대상 노드, 및 공격이 탐지된 시간 정보를 포함하는 역추적 메시지를 자신이 속한 클러스터의 헤드 노드로 전송하게 된다.First, a first head node of a first cluster receives a backtracking message from a first member node included in the first cluster (step 900). At this time, all nodes included in the cluster are equipped with a host-based IDS to detect an attack on the node itself. When each node is detected, the attack packet itself, the target node, and the attack are detected. The traceback message including the detected time information is transmitted to the head node of the cluster to which it belongs.

이후, 제1 헤드 노드는 수신된 역추적 메시지를 인증한다(제910단계). 여기서 인증이 필요한 이유는 적법하지 않은 역추적 요청을 이용한 공격이 가능하기 때문이다.Thereafter, the first head node authenticates the received backtracking message (step 910). Authentication is necessary here because an attack can be made using an illegal traceback request.

다음으로, 제1 헤드 노드는 자신과 인접한 클러스터들의 헤드 노드들 예컨대, 제2 클러스터의 제2 헤드 노드에게 공격 패킷과 관련된 다이제스트를 가지고 있는지 여부를 문의한다(제920단계).Next, the first head node queries the head nodes of the clusters adjacent to it, for example, the second head node of the second cluster whether it has a digest associated with the attack packet (step 920).

이후, 제2 클러스터의 제2 헤드 노드가 공격 패킷과 관련한 다이제스트를 가지고 있는 경우 제2 헤드 노드는 제1 헤드 노드로 자신이 다이제스트를 가지고 있다는 확인응답을 전송한다(제930단계).Thereafter, when the second head node of the second cluster has a digest associated with the attack packet, the second head node transmits an acknowledgment that it has a digest to the first head node (step 930).

다음으로, 제2 헤드 노드는 자신이 속한 클러스터와 인접한 클러스터들의 헤드 노드들, 예컨대 제3 클러스터의 제3 헤드 노드에게 공격 패킷과 관련된 다이제스트를 가지고 있는지 여부를 문의한다(제940단계).Next, the second head node queries the head nodes of the clusters adjacent to the cluster to which it belongs, for example, the third head node of the third cluster whether it has a digest associated with the attack packet (step 940).

이후, 제3 클러스터의 제3 헤드 노드가 공격 패킷과 관련한 다이제스트를 가지고 있는 경우 제3 헤드 노드는 제2 헤드 노드로 자신이 다이제스트를 가지고 있다는 확인응답을 전송한다(제950단계). 이러한 과정 수행 중 자신이 공격 패킷과 관련된 다이제스트를 가지고 있지 않은 헤드 노드는 역추적 요청을 무시함으로써 역추적 과정에서 자연스럽게 빠지게 된다.Thereafter, when the third head node of the third cluster has a digest associated with the attack packet, the third head node transmits an acknowledgment that it has a digest to the second head node (step 950). During this process, a head node that does not have a digest associated with an attack packet naturally falls out of the traceback process by ignoring the traceback request.

상술한 과정을 반복적으로 수행함으로써 역추적 요청은 공격 근원 노드가 포함된 클러스터로 방향성을 가지게 되며, 이 과정에서 메시지 루프가 발생할 수 있으므로 역추적 메시지에는 순서번호와 같은 유일한 식별자가 포함되는 것이 바람직하다.By repeating the above process, the traceback request has a direction to the cluster including the attack source node. In this process, a message loop may occur, so the traceback message preferably includes a unique identifier such as a sequence number. .

이후, 제1 헤드 노드는 각 헤드 노드들에 의해 순차적으로 발생된 확인응답의 순서 및 각 헤드 노드들의 위치정보를 이용하여 역추적 그래프를 생성하고(제960단계), 생성된 역추적 그래프를 이용하여 공격 근원 노드가 포함된 클러스터를 결정한다(제970단계).Thereafter, the first head node generates a backtracking graph using an order of acknowledgments sequentially generated by each headnode and location information of each headnode (step 960), and uses the generated backtracking graph. In operation 970, the cluster including the attack source node is determined.

상술한 과정을 통해 공격 근원 노드가 포함된 클러스터가 탐지되면 해당 클러스터 내에서 공격 근원 노드로부터 발생하는 모든 트래픽을 필터링하는 등의 조치를 취함으로써 공격에 대한 대응을 할 수 있다.When the cluster including the attack source node is detected through the above-described process, it is possible to respond to the attack by taking measures such as filtering all traffic generated from the attack source node in the cluster.

상술한 공격 근원 노드 역추적 방법을 도식화 하면 도 10에 도시된 바와 같다. 도 10을 참조하면, 공격 노드 A는 라우팅 경로를 통해 공격 대상 노드 V로 공격을 한다. 이 과정에서 공격 패킷이 지나가는 경로 상의 노드가 속한 클러스터의 헤드 노드는 이 패킷 정보를 보관하게 된다. 이후 공격 대상 노드 V가 속한 클러스터의 헤드 노드 CH4는 인접한 클러스터 헤드 노드 CH1, CH3, CH7에게 역추적 요청을 하고, 공격을 탐지한 헤드 노드 CH3이 이에 대한 응답을 보낸다. 이후, 헤드 노드 CH3는 다시 인접 클러스터 헤드 노드로 요청을 하고, 이들 중에서 헤드 노드 CH5가 응답을 한다. 이러한 과정을 통해서 헤드 노드 CH4는 CH3-CH5-CH6 이라는 역추적 그래프를 생성할 수 있고, 이를 통해 공격이 헤드 노드 CH6이 관리하는 클 러스터에서 발생했음을 알 수 있다.The above-described attack source node traceback method is illustrated in FIG. 10. Referring to FIG. 10, the attack node A attacks the target node V through the routing path. In this process, the head node of the cluster to which the node in the path of attack packet belongs keeps this packet information. Subsequently, the head node CH4 of the cluster to which the target node V belongs to makes a backtrace request to the adjacent cluster head nodes CH1, CH3, and CH7, and the head node CH3 that detects the attack sends a response thereto. Thereafter, the head node CH3 makes a request to the neighboring cluster head node again, among which the head node CH5 responds. Through this process, the head node CH4 can generate a traceback graph called CH3-CH5-CH6, which indicates that the attack occurred in the cluster managed by the head node CH6.

상술한 공격 근원 노드 역추적 방법은 다양한 컴퓨터 수단을 이용하여 수행될 수 있는 프로그램 형태로도 구현될 수 있는데, 이때 공격 근원 노드 역추적 방법을 수행하기 위한 프로그램은 하드 디스크, CD-ROM, DVD, 롬(ROM), 램, 또는 플래시 메모리와 같은 컴퓨터로 판독할 수 있는 기록 매체에 저장된다.The attack source node traceback method described above may be implemented in the form of a program that can be executed using various computer means. In this case, the program for executing the attack source node traceback method may be a hard disk, a CD-ROM, a DVD, It is stored in a computer-readable recording medium such as a ROM, a RAM, or a flash memory.

본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.Those skilled in the art to which the present invention pertains will understand that the present invention can be implemented in other specific forms without changing the technical spirit or essential features.

그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Therefore, it is to be understood that the embodiments described above are exemplary in all respects and not restrictive. The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. do.

도 1은 본 발명의 일 실시예에 따른 이동 애드훅 네트워크에서의 공격 근원 노드 역추적을 위한 패킷 저장 방법을 보여주는 플로우차트.1 is a flow chart illustrating a packet storage method for backtracking an attack source node in a mobile adhook network according to an embodiment of the present invention.

도 2는 블룸 필터의 동작을 보여주는 도면.2 shows the operation of a bloom filter.

도 3은 헤드 노드가 모니터링된 패킷들의 다이제스트를 블룸 필터에 저장하는 방법을 보여주는 플로우차트.3 is a flowchart showing how a head node stores a digest of monitored packets in a Bloom filter.

도 4는 IP 패킷의 구조를 보여주는 도면.4 shows the structure of an IP packet.

도 5는 n비트로 확장된 엔트리의 구조를 보여주는 도면.5 shows the structure of an entry extended to n bits.

도 6은 엔트리의 타임태그 설정 및 중복된 엔트리에 대한 타임태그 재설정 과정을 도식화하여 보여주는 도면.FIG. 6 is a diagram illustrating a time tag setting of an entry and a time tag reset process for duplicate entries. FIG.

도 7은 헤드 노드가 모니터링된 패킷의 다이제스트를 블룸 필터에 저장하는 과정의 일 예를 보여주는 도면.7 is a diagram illustrating an example of a process in which a head node stores a digest of a monitored packet in a bloom filter.

도 8은 도 7에 도시된 블룸 필터에서 시간과 경과에 따른 엔트리의 입력과 삭제과정을 보여주는 도면.FIG. 8 is a view illustrating a process of inputting and deleting entries over time in the bloom filter illustrated in FIG. 7.

도 9는 본 발명의 일 실시예에 따른 이동 애드훅 네트워크에서의 공격 근원 노드 역추적 방법을 보여주는 플로우차트.9 is a flowchart illustrating a method for traceback of an attack source node in a mobile adhook network according to an embodiment of the present invention.

도 10은 도 9에 도시된 공격 근원 노드 역추적 방법을 도식화하여 보여주는 도면.FIG. 10 is a schematic diagram showing the attack origin node traceback method shown in FIG. 9; FIG.

Claims (5)

복수개의 노드들이 WCA(Weighted Clustering Algorithm)를 이용하여 클러스터링되어 있는 이동 애드훅 네트워크(Mobile Ad-hoc Network)에서 공격 근원 노드를 역추적하는 방법으로서,As a method of backtracking an attack source node in a mobile ad-hoc network in which a plurality of nodes are clustered using a weighted clustering algorithm (WCA), (a) 각 클러스터(Cluster)의 헤드 노드가 헤드 노드에 탑재된 NIDS(Network-Based Intrusion Detection) 모듈을 활성화하여 모든 패킷들을 모니터링하는 단계;(a) a head node of each cluster activating a network-based intrusion detection (NIDS) module mounted in the head node to monitor all packets; (b) 각 클러스터의 헤드 노드가 모니터링된 패킷들에 대한 다이제스트를 블룸 필터(Bloom Filter)에 저장하는 단계;(b) the head node of each cluster storing a digest for the monitored packets in a Bloom Filter; (c) 각 클러스터의 헤드 노드가 클러스터에 포함된 구성원 노드에 의해 발생된 역추적 메시지가 수신되면, 인접한 클러스터의 헤드 노드로 상기 역추적 메시지에 포함된 공격 패킷과 관련된 다이제스트를 포함하고 있는지 여부에 대한 확인을 요청하는 단계;(c) if the head node of each cluster receives a backtrace message generated by a member node included in the cluster, whether the head node of an adjacent cluster includes a digest associated with the attack packet included in the backtrace message. Requesting confirmation; (d) 인접한 클러스터의 헤드 노드들로부터 수신되는 응답 확인 메시지를 이용하여 공격 근원 노드를 역추적하는 단계; 및(d) backtracking the attack source node using response acknowledgment messages received from head nodes of adjacent clusters; And (e) 공격 근원 노드로부터 발생되는 모든 트래픽을 필터링하는 단계를 포함하는 것을 특징으로 하는 이동 애드훅 네트워크에서 공격 근원 노드 역추적 방법.(e) filtering all the traffic originating from the attack source node. 제1항에 있어서, 상기 (b)단계는,According to claim 1, wherein step (b), (b1) k개의 해쉬 함수에 대해 상기 모니터링된 패킷 중 일부 비트 크기의 데 이터를 입력함으로써 n비트 크기의 다이제스트들을 생성하는 단계;(b1) generating digests of n bit size by inputting some bit size data of the monitored packet for k hash functions; (b2) 2n개의 엔트리로 구성된 블룸 필터의 각 엔트리의 크기를 n비트로 확장하는 단계;(b2) expanding the size of each entry of the bloom filter of 2 n entries to n bits; (b3) 상기 블룸 필터의 엔트리 중 상기 다이제스트와 관련된 엔트리의 모든 비트를 제1 값으로 설정하는 단계; 및(b3) setting all bits of the entry associated with the digest of the bloom filter to a first value; And (b4) 시간의 경과에 따라 상기 각 엔트리의 비트들 중 최상위 비트를 제외한 비트에 상응하는 값을 감소시킴으로써 최상위 비트를 제외한 비트의 값이 제2 값이 되는 경우 해당 엔트리를 상기 블룸 필터에서 삭제하는 단계를 포함하는 것을 특징으로 하는 이동 애드훅 네트워크에서 공격 근원 노드 역추적 방법.(b4) If the value of the bit except the most significant bit becomes a second value by decreasing a value corresponding to a bit except the most significant bit among the bits of each entry as time elapses, the entry is deleted from the bloom filter. A method for backtracking an attack source node in a mobile adhook network, comprising the steps of: 제2항에 있어서,The method of claim 2, (b5) 상기 블룸 필터의 엔트리들 중 이전 입력에 상응하는 엔트리와 현재 입력에 상응하는 엔트리가 중복되는 경우, 해당 엔트리의 비트들 중 최상위 비트를 제외한 모든 비트를 제1 값으로 재설정하는 단계를 더 포함하는 것을 특징으로 하는 이동 애드훅 네트워크에서 공격 근원 노드 역추적 방법.(b5) if an entry corresponding to a previous input and an entry corresponding to a current input of the entries of the bloom filter overlap, resetting all bits except the most significant bit among the bits of the corresponding entry to a first value And attack source node backtracking method in a mobile adhook network. 제2항에 있어서, 상기 (b1) 단계에서,The method of claim 2, wherein in step (b1), 상기 모니터링된 패킷 중 일부 비트 크기의 데이터는 해당 패킷 중 20바이트 크기의 IP헤더와 IP 데이터 중 최초 8바이트를 결합함에 의해 생성되는 것을 특징 으로 하는 이동 애드훅 네트워크에서 공격 근원 노드 역추적 방법.Partial bit size data of the monitored packet is generated by combining the IP header of 20 bytes of the packet and the first 8 bytes of the IP data, the attack source node backtracking method in a mobile ad-hook network. 제4항에 있어서,The method of claim 4, wherein 상기 IP 헤더 중 각 노드를 통해 각 패킷이 전달될 때 변경될 수 있는 값들을 제2 값으로 설정하는 것을 특징으로 하는 이동 애드훅 네트워크에서 공격 근원 노드 역추적 방법.And setting a value that can be changed as each packet is transmitted through each node of the IP header as a second value.
KR1020080027180A 2008-03-25 2008-03-25 Attack traceback method in mobile adhook network Expired - Fee Related KR100930902B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080027180A KR100930902B1 (en) 2008-03-25 2008-03-25 Attack traceback method in mobile adhook network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080027180A KR100930902B1 (en) 2008-03-25 2008-03-25 Attack traceback method in mobile adhook network

Publications (2)

Publication Number Publication Date
KR20090102001A KR20090102001A (en) 2009-09-30
KR100930902B1 true KR100930902B1 (en) 2009-12-10

Family

ID=41359544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080027180A Expired - Fee Related KR100930902B1 (en) 2008-03-25 2008-03-25 Attack traceback method in mobile adhook network

Country Status (1)

Country Link
KR (1) KR100930902B1 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101068716B1 (en) * 2009-12-28 2011-09-28 경희대학교 산학협력단 How to trace back the transmission path of a packet in the sensor network
KR101232918B1 (en) * 2011-08-02 2013-02-13 경희대학교 산학협력단 Wireless sensor network comprising distributed intrusion detection
US12093383B2 (en) 2016-04-15 2024-09-17 Sophos Limited Tracking malware root causes with an event graph
US9967267B2 (en) 2016-04-15 2018-05-08 Sophos Limited Forensic analysis of computing activity
US20200076833A1 (en) 2018-08-31 2020-03-05 Sophos Limited Dynamic filtering of endpoint event streams
US12204870B2 (en) 2022-03-31 2025-01-21 Sophos Limited Natural language analysis of a command line using a machine learning model to generate a natural language description of the command line
US12130923B2 (en) 2022-03-31 2024-10-29 Sophos Limited Methods and apparatus for augmenting training data using large language models
US12265526B2 (en) 2022-03-31 2025-04-01 Sophos Limited Methods and apparatus for natural language interface for constructing complex database queries

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040034862A (en) * 2002-10-17 2004-04-29 한국전자통신연구원 System and method for providing a real-time traceback technic based on active code
JP2005286956A (en) 2004-03-31 2005-10-13 Kddi Corp Ad hoc wireless network system and fraud management method thereof
KR100812335B1 (en) 2007-02-16 2008-03-10 국방과학연구소 How to Eliminate Routing Attacks Using Trust Score in Ad Hoc Networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040034862A (en) * 2002-10-17 2004-04-29 한국전자통신연구원 System and method for providing a real-time traceback technic based on active code
JP2005286956A (en) 2004-03-31 2005-10-13 Kddi Corp Ad hoc wireless network system and fraud management method thereof
KR100812335B1 (en) 2007-02-16 2008-03-10 국방과학연구소 How to Eliminate Routing Attacks Using Trust Score in Ad Hoc Networks

Also Published As

Publication number Publication date
KR20090102001A (en) 2009-09-30

Similar Documents

Publication Publication Date Title
KR100930902B1 (en) Attack traceback method in mobile adhook network
Yang et al. Security in mobile ad hoc networks: challenges and solutions
Tseng et al. A specification-based intrusion detection system for AODV
Ping et al. Distributed intrusion detection for mobile ad hoc networks
Tseng et al. A specification-based intrusion detection model for OLSR
Kamaleshwar et al. [Retracted] Self‐Adaptive Framework for Rectification and Detection of Black Hole and Wormhole Attacks in 6LoWPAN
Alzubaidi et al. Review on mechanisms for detecting sinkhole attacks on RPLs
Jain Security threats in MANETS: a review
Kumar et al. An agent based intrusion detection system for wireless network with artificial immune system (AIS) and negative clone selection
Hongsong et al. Design and performance evaluation of a multi-agent-based dynamic lifetime security scheme for AODV routing protocol
Alqarni et al. A Security Scheme for Statistical Anomaly Detection and the Mitigation of Rank Attacks in RPL Networks (IoT Environment)
Balaji et al. Gray-hole attack minimization in IoMT with 5G based D2D networks.
Timcenko An approach for DDoS attack prevention in mobile ad hoc networks
Mr et al. Design and implementation of trust based approach to mitigate various attacks in mobile ad hoc network
Ping et al. Multi-agent cooperative intrusion response in mobile adhoc networks
Monica Evaluation of Attacks using different Parameters based on their performance
Reddy et al. Simulation analysis on network layer attacks in wireless mesh networks
Kim et al. Attacker traceback with cross-layer monitoring in wireless multi-hop networks
Kumar et al. Intrusion Detection against Denial of Service Attacks in MANET Environment
Lee et al. Intrusion Detection Systems for IoT
Araghi et al. A survey for prevention of black hole attacks in wireless mobile AdHoc networks using trusted neighbor nodes
Thillaikarasi et al. Detection of Packet Dropping Nodes in Wireless Mesh Networks
Raja et al. A RELIABLE FAST AND IDEAL TRAFFIC AWARE SECURE ROUTING PROTOCOL BASED ON MULTI-HOP CROSS SITE LEAPING FOR EFFICIENT PACKET TRANSMISSION IN WSN
Noureldien et al. Survey of mobile ad hoc networks attacks and a new classification scheme
Soni et al. An Optimised and Efficient Routing Protocol Application for IoV: A Review

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

Fee payment year number: 1

St.27 status event code: A-2-2-U10-U11-oth-PR1002

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20121127

Year of fee payment: 4

PR1001 Payment of annual fee

Fee payment year number: 4

St.27 status event code: A-4-4-U10-U11-oth-PR1001

FPAY Annual fee payment

Payment date: 20130913

Year of fee payment: 5

PR1001 Payment of annual fee

Fee payment year number: 5

St.27 status event code: A-4-4-U10-U11-oth-PR1001

FPAY Annual fee payment

Payment date: 20140818

Year of fee payment: 6

PR1001 Payment of annual fee

Fee payment year number: 6

St.27 status event code: A-4-4-U10-U11-oth-PR1001

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

St.27 status event code: A-5-5-R10-R13-asn-PN2301

FPAY Annual fee payment

Payment date: 20151001

Year of fee payment: 7

PR1001 Payment of annual fee

Fee payment year number: 7

St.27 status event code: A-4-4-U10-U11-oth-PR1001

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

St.27 status event code: A-5-5-R10-R13-asn-PN2301

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Not in force date: 20161203

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

St.27 status event code: A-4-4-U10-U13-oth-PC1903

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PC1903 Unpaid annual fee

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20161203

St.27 status event code: N-4-6-H10-H13-oth-PC1903

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000