KR100964456B1 - 악의적 노드 판정 방법 - Google Patents

악의적 노드 판정 방법 Download PDF

Info

Publication number
KR100964456B1
KR100964456B1 KR1020080058767A KR20080058767A KR100964456B1 KR 100964456 B1 KR100964456 B1 KR 100964456B1 KR 1020080058767 A KR1020080058767 A KR 1020080058767A KR 20080058767 A KR20080058767 A KR 20080058767A KR 100964456 B1 KR100964456 B1 KR 100964456B1
Authority
KR
South Korea
Prior art keywords
node
nodes
message
wireless network
network system
Prior art date
Application number
KR1020080058767A
Other languages
English (en)
Other versions
KR20090132673A (ko
Inventor
이건희
김동규
임재성
Original Assignee
아주대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아주대학교산학협력단 filed Critical 아주대학교산학협력단
Priority to KR1020080058767A priority Critical patent/KR100964456B1/ko
Publication of KR20090132673A publication Critical patent/KR20090132673A/ko
Application granted granted Critical
Publication of KR100964456B1 publication Critical patent/KR100964456B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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 Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

악의적 노드 판정 방법이 개시된다. 본 발명의 일 실시예에 따른 악의적 노드 판정 방법은, 상기 무선 네트워크 시스템에 속하는 대상 노드의 이웃 노드 목록을 만드는 단계; 상기 대상 노드로부터 상기 이웃 노드 목록에 속하는 이웃 노드를 거쳐서 상기 이웃 노드가 아닌 다른 노드까지 메시지를 전송하는 단계; 상기 대상 노드로부터 상기 이웃 노드까지 전송된 메시지 개수와 상기 이웃 노드로부터 상기 다른 노드까지 전송된 메시지 개수의 차이를 구하는 단계; 및 상기 메시지 개수의 차이와 임계 값을 비교하고, 상기 비교 결과에 기초하여 상기 이웃 노드가 악의적 노드인지 판정하는 단계를 구비한다.

Description

악의적 노드 판정 방법{Node determination method}
본 발명의 실시예는 악의적 노드 판정 방법에 관한 것으로써, 예를 들어, 대상 노드로부터 이웃 노드로 전송된 메시지가 정상적으로 다른 노드로 전송되는지 탐지함으로써 이웃 노드의 송신 메시지 수와 이웃 노드의 수신 메시지 수를 비교하고, 비교 결과에 기초하여 이웃 노드가 악의적 노드인지 판정하는 악의적 노드 판정 방법에 관한 것이다.
센서 노드를 사용하여 구성된 응용 시스템에서 발생할 수 있는 다양한 공격 기법의 대부분은 라우팅 과정에 공격자 노드가 참여하여 여러 잘못된 행위를 하는 것이다. 그 결과로 정상 노드들은 온전한 서비스를 사용하기가 불가능해 진다. 이와 관련한 공격의 예로는 Black Hole, Gray Hole (선택적 전송), 웜홀(Wormhole), 메시지 차단, 잘못된 경로로의 메시지 전달 등의 공격을 들 수 있다. 또한 많은 메시지를 이용한 네트워크 서비스 불능 공격이 가능하다. 단적인 예로, 정상적인 노드로 위장한 공격자 노드가 존재하는 네트워크에서 다른 노드 A가 또 다른 노드 B로 메시지를 전송하는 과정에 참여할 경우를 들 수 있다. 이 과정에서 공격자 노드는 A가 송신하는 메시지가 B에게 전달될 수 있도록 정상적인 행위를 해야 하지만 해당 메시지를 중도 파기함으로써 온전한 라우팅 과정이 이루어지지 못하게 할 수 있다. 그렇게 되면 이 네트워크는 정상적인 서비스 제공이 불가능 해 진다. 실질적인 예를 들면, 지그비 센서 네트워크가 홈 화재방지 서비스를 제공하고 있을 경우 공격자의 노드는 고온을 감지한 메시지 또는 연기를 감지한 정보를 전달하지 않고 파기함으로써 중앙노드가 화재 상황을 인지하지 못하도록 하여 늦은 대응을 유도할 수 있다. 이를 통해 더 많은 화재 피해를 유발 할 수 있게 될 것이다.
본 발명의 실시예가 이루고자 하는 기술적 과제는, 대상 노드로부터 이웃 노드로 전송된 메시지가 정상적으로 다른 노드로 전송되는지 탐지함으로써 이웃 노드의 송신 메시지 수와 이웃 노드의 수신 메시지 수를 비교하고, 비교 결과에 기초하여 이웃 노드가 악의적 노드인지 판정하는 악의적 노드 판정 방법을 제공하는 데 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 악의적 노드 판정 방법은, 상기 무선 네트워크 시스템에 속하는 대상 노드의 이웃 노드 목록을 만드는 단계; 상기 대상 노드로부터 상기 이웃 노드 목록에 속하는 이웃 노드를 거쳐서 상기 이웃 노드가 아닌 다른 노드까지 메시지를 전송하는 단계; 상기 대상 노드로부터 상기 이웃 노드까지 전송된 메시지 개수와 상기 이웃 노드로부터 상기 다른 노드까지 전송된 메시지 개수의 차이를 구하는 단계; 및 상기 메시지 개수의 차 이와 임계 값을 비교하고, 상기 비교 결과에 기초하여 상기 이웃 노드가 악의적 노드인지 판정하는 단계를 구비한다.
본 발명의 실시예에 따른 악의적 노드 판정 방법은, 멀티 홉의 무선 센서 네트워크 환경으로 구성된 응용 네트워크에서 악의적인 공격자 노드가 메시지 전달 과정에서 공격을 감행하여 서비스의 온전한 제공을 방해하는 행위를 정확하게 탐지할 수 있으며, 이 방법은 통신 표준의 각 계층 사이에 독립적으로 구성되어 개발 될 수 있으므로 새로 개발될 센서 노드들은 물론이고, 기존의 센서 노드들에게도 손쉽게 적용할 수 있다. 또한 특정 표준에 의존하여 동작하는 방법이 아니므로 멀티홉 기반의 ad hoc 라우팅을 사용하는 어떠한 네트워크에도 쉽게 적용할 수 있다. 또한 메시지 라우팅 과정 중에 효율적인 방법을 통해서 공격을 탐지할 수 있으므로 공격 탐지에 드는 비용이 최소화된다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시예에 따른 무선 네트워크 시스템의 악의적 노드 판정 방법의 순서도이다.
도 1을 참조하면, 상기 무선 네트워크 시스템에 속하는 대상 노드의 이웃 노드 목록을 만드는 단계(110)는, 대상 노드(예를 들어, 무선 네트워크 시스템에 새롭게 진입한 노드)의 이웃 노드 목록을 만든다. 이웃 노드 목록에는 대상 노드와 1홉 또는 2홉 거리의 이웃 노드들이 포함될 수 있다. 대상 노드의 이웃 노드 목록을 만드는 단계(110)의 자세한 과정은 후술된다.
다음으로, 대상 노드로부터 이웃 노드 목록에 속하는 이웃 노드를 거쳐서 이웃 노드가 아닌 다른 노드까지 메시지를 전송한다(130). 130 단계는 탐지를 의하여 의도적으로 실시될 필요가 없고, 네트워크에서 일상적인 통신 과정을 이용할 수 있다. 즉, 네트워크에서 일상적인 통신이 이루어지고 그 통신에 의해서 패킷이 지나갈 때 그 패킷이 대상 노드를 거쳐 이웃 노드로 가고, 그 패킷이 다시 이웃 노드를 통해서 그 다음 노드로 전달될 때 이 과정들이 온전히 이루어지는 지를 지속적으로 관찰할 수 있다. Ad hoc 네트워크의 라우팅에서는 모든 노드들이 라우팅 과정을 수행하므로 모든 노드들은 130 단계를 수행할 수 있다. 노드들은 라우팅 과정을 수행하면서 자신의 이웃 노드가 정상적인 라우팅과정을 수행하는 지를 관찰할 수 있다.
다음으로, 상기 대상 노드로부터 상기 이웃 노드까지 전송된 메시지 개수와 상기 이웃 노드로부터 상기 다른 노드까지 전송된 메시지 개수의 차이를 구한다(150). 다음으로, 상기 메시지 개수의 차이와 임계 값을 비교하고, 상기 비교 결과에 기초하여 상기 이웃 노드가 악의적 노드인지 판정한다(170).
대상 노드는 자신의 이웃 노드가 수신한 메시지와 송신한 메시지 수가 일치 하는지 탐지하여, 자신의 이웃 노드가 정상적으로 메시지를 전달하는 지를 판단함으로써, 이웃 노드가 악의적 노드인지 판정한다. 그에 따라, 네트워크에서 발생하는 비정상적인 행위들이 탐지될 수 있다.
대상 노드는 자신의 이웃 노드가 누구인지 알 수 있고, 그에 따라 자신의 이웃 노드로 향하는 메시지에 대해서 정상적인 전달 행위를 하는지에 대해서 모니터링할 수 있다. 모니터링 된 정보를 주기적으로 대표 노드에게 전달하고, 이 정보를 이용해 관리자는 공격 여부를 탐지할 수 있다. 모니터링 정보에는 대상 노드가 메시지를 최종 목적지까지 전달하기 위한 중간 노드로써 수신한 메시지의 수와 송신한 메시지의 수가 기록되어 있다. 대표노드는 수집된 정보의 수신 메시지 수와 송신 메시지 수의 비가 특정 임계치보다 크거나 작을 경우 이를 공격으로 판단하고 대상 노드를 공격 노드로 판단한다. 이웃 노드가 수신한 메시지와 송신한 메시지의 수를 검출할 때, 이웃 노드가 최종 목적지이거나 이웃 노드가 메시지의 최초 발신지인 것은 계산에서 제외할 수 있다.
이처럼, 본 발명의 실시예에 따른 악의적 노드 판정 방법은, 이웃 노드가 대상 노드로부터 전송된 메시지를 다른 노드까지 정상적으로 전달하는지 판정함으로써, 이웃 노드의 메시지 전달 행위 정상 여부를 관찰한다. 즉, 이웃 노드가 수신/송신하는 메시지를 모두 탐지하는 것이 아니라, 대상 노드로부터 이웃 노드로 전송된 메시지가 정상적으로 다른 노드로 전송되는지 탐지한다.
만약, 대상 노드가 이웃 노드의 모든 메시지 전달 행위를 관찰한다고 가정하면, 이웃 노드가 수신하는 메시지가 대상 노드의 전파 수신 범위 이내에 들어있지 않을 수도 있기 때문에 불가능하고, 항상 탐지 기능을 켜 둔다는 것도 대상 노드의 전력 손실이 커지는 문제가 있을 것이다.
도 2는 무선 네트워크 시스템에 처음 참가하는 노드가 1홉 거리의 이웃 노드 목록을 만드는 과정을 설명하기 위한 메시지 흐름도이다.
새롭게 네트워크에 참여한 노드 C는 네트워크에 다음과 같은 제1메시지(M1)를 브로드 캐스트 한다(S210).
M1 = [Announcement, IDc, ETKc{IDc}]
여기에서, IDc는 노드 C의 식별자를 의미하고, ETKc{IDc}는 노드 C의 식별자 (IDc)를 노드 C만이 알고 있는 제1임시키(ETKc)로 암호화한 제1신원정보를 나타낸다.
제1메시지(M1)에는 TTL 정보가 추가될 수 있는데, 제1메시지(M1)의 TTL 정보가 2로 지정되면 이 제1메시지(M1)를 수신한 다음 노드들 즉, 이웃 노드들이 한 번 더 브로드 캐스트 해야 함을 의미한다. 또한 노드 C의 식별자(IDc)는 자신의 MAC 주소를 사용하거나 이를 해쉬한 값을 사용할 수 있다.
제1메시지(M1)에 대한 응답 메시지가 정해진 응답 시간 내에 들어오는 지를 검사하기 위해 노드 C는 타이머 T를 작동할 수 있다. 정해진 임계시간 이내(t1, t2)에 수신되지 못한 응답 메시지는 정상적인 이웃으로부터 수신된 메시지가 아닌 것으로 간주한다. 이 때 임계시간 t1은 한 홉 거리의 이웃 노드들이 보낸 응답 메시지를 위한 임계 시간이고, t2는 두 홉 거리의 이웃 노드들이 보낸 응답 메시지를 위한 임계 시간이다. 즉, 한 홉 거리의 이웃 노드들이 전송한 메시지는 t1 시간 안에 새롭게 네트워크에 조인한 노드(M1을 전송한 노드)에게 도착해야 하며, 두 홉 거리의 이웃 노드들이 전송한 메시지는 t2 시간 안에 새롭게 네트워크에 조인한 노드에게 도착해야 한다.
제1메시지(M1)을 받은 이웃 노드 A는 우선 TTL 정보가 2일 경우는 자신(이웃 노드 A)이 새로운 노드 C의 한 홉 거리에 존재하는 이웃임을 판단한다. 이 경우, 이웃 노드 A는 우선 메시지에 포함된 식별자 IDc와 이를 암호화한 제1신원정보 ETKc{IDc}를 임시로 저장하고(S220), 수신된 메시지의 TTL 정보를 1로 설정한 후 브로드 캐스트한다(S230).
이웃 노드 A는 수신된 제1메시지(M1)에 대해 응답을 하기 위해서 자신의 식별자(IDa), 이웃 노드 A만이 알고 있는 제2임시키(ETKa)로 암호화된 제2신원정보 ETKa{IDa}, 키 교환을 위한 제1매개변수(g, p, A)를 포함하는 제1응답메시지(M2)를 생성하여 노드 C에게 전송한다(S240).
M2 = [Acknowledement, IDa, ETKa{IDa}, {g, p, A}]
제1응답메시지(M2)를 수신한 노드 C는 제1응답메시지(M2)에 포함된 식별자와 제1응답메시지(M2)의 MAC 헤더에 포함된 주소를 이용하여 한 홉 거리의 이웃노드로부터 온 메시지인지 두 홉 거리의 이웃노드로 온 메시지인지를 판단한다. 두 값이 동일하면 한 홉 거리의 이웃 노드이며, 두 값이 다를 경우 두 홉 거리의 이웃 노드이다. 한 홉 거리의 이웃 노드로부터 수신한 메시지일 경우, 노드 C는 자신이 계산한 키 교환 매개변수 C와 제1응답메시지에 포함된 제1매개변수 g, p, A를 이용하여 제1세션 키 SK(C, A)를 생성한다. 이때 세션 키 생성 알고리즘은 Diffie-Hellman 키 교환 알고리즘을 사용할 수 있다. 또한 이웃 노드 A에게 보내기 위한 난수 N을 생성한다. 이들을 이용하여 노드 C는 다음과 같은 제2메시지(M3)를 생성하여 이웃 노드 A에게 전송한다(S260). 즉, 노드 C는 키 교환 매개변수 C1, 자신의 식별자, 제1세션키로 암호화된 난수 및 제1임시키를 제2메시지(M3)에 포함시켜 이웃 노드 A에 전송한다. 또한 이웃 노드가 보내온 IDa, 암호화된 신원정보 ETKa{IDa}, 제1세션 키 SK(C, A)를 임시로 저장한다(S250).
M3 = [Challenge, IDc, ESK(c, a){N, TKc}, param(C1)]
제2메시지(M3)을 수신한 노드 A는 포함된 키 교환매개변수를 이용하여 제2세션 키를 생성한다. 생성된 제2세션 키를 이용하여 제2메시지(M3)로부터 난수 N과 제1임시 키 TKc를 복원한다. 이 후 복원된 제1임시 키를 이용하여 노드 C를 인증한다(S270). 이는 메시지(M1)를 받은 후 저장해 두었던 암호화된 제1신원정보 ETKc{IDc}를 복호화하여 정상적으로 노드 C의 신원정보가 복원되는지를 이용하여 진행된다. 정상적으로 인증이 성공한 경우, 노드 A는 노드 C에게 모든 과정이 성공적이었음을 알리는 다음의 제2응답메시지(M4)를 전송한다(S280). 즉, 노드 A는 복원된 난수(N)를 설정된 값 '1'만큼 증가시킨 값(N+1)과 제2임시키(TKa)를 제2세션키로 암호화한 값 ESK(c, a){N+1, TKa}을 제2응답메시지에 포함시켜 노드 C에게 전송한다.
M4 = [Response, IDa, ESK(c, a){N+1, TKa}]
그리고 노드 A는 자신이 관리하는 이웃 노드 리스트에 (IDC, 0)의 값을 등록한다(S290). 이는 노드 C가 자신의 한 홉 거리에 있는 이웃 노드임을 의미한다. 또한 (IDc, SK(C, A))의 값을 자신이 관리하는 세션 키 목록에 등록한다. 추후 노드 C와 암호화된 통신을 위한 암호 키는 이 키를 사용하여 진행된다.
제2응답메시지(M4)를 수신한 노드 C는 제1세션 키를 이용해 제2응답메시지의 암호화된 값을 복호화하고, 포함된 값이 N+1과 일치하는 지를 우선 검사한다. 일치할 경우 노드 A의 제2임시 키 TKa를 이용해 노드 A를 인증한다. 이는 제1응답메시지(M2)를 받은 후 저장해 두었던 암호화된 제2신원정보 ETKa{IDa}를 복호화하여 정상적으로 노드 A의 신원정보가 복원되는지를 검사하여 진행된다. 모든 과정이 성공적으로 진행 된 후, 노드 C는 (IDA, 0)의 값을 자신이 관리하는 이웃 노드 목록에 저장하고, (IDA, SK(C,A))의 값을 자신이 관리하는 세션 키 목록에 등록한다. 추후 노드 A와 암호화된 통신을 위한 암호 키는 이 키를 사용하여 진행된다(S295).
도 3은 무선 네트워크 시스템으로부터 처음 참가하는 노드로부터 2홉 거리의 이웃 노드 목록을 만드는 과정을 설명하기 위한 메시지 흐름도이다.
한 홉 거리의 이웃 노드 A로부터 재전송(S310)된 TTL 값이 1인 메시지(M1)를 수신한 노드 B는 이 사실을 통해 자신이 메시지의 송신자에 포함된 노드 C의 두 홉 거리에 있는 이웃노드 임을 판단한다. 이 경우, 자신이 임시로 저장한 목록들 중에서 IDc가 존재하는 지를 먼저 파악한다. 존재한다면, 이미 다른 노드를 통해서 세션 키 교환 과정은 진행되고 있으므로, 세션 키 교환을 위한 매개변수 생성은 하지 않는다. 대신 메시지(M1)에 포함된 IDc, ETKc{IDc}, 메시지(M1)를 전달한 노드 A의 식별자(IDa)를 임시로 저장한다(S320). 그리고 다음 메시지를 노드 C에게 노드 A를 거쳐 전송한다(S325).
M5 = [Acknowledement, IDb, ETKb{IDb}]
만약, 노드 B가 임시로 저장한 목록들 중에서 노드 C의 식별자(IDc)가 존재하지 않는다면, 노드 A와 동일하게 세션 키 생성에 필요한 매개변수를 생성하여 다음의 메시지(M6)를 전달한다(S325). 이는 노드 A가 메시지(M2)를 생성하여 노드 C에게 전달하는 과정과 동일하다.
M6 = [Acknowledement, IDb, ETKb{IDb}, {g, p, A}]
노드 C는 메시지(M6)에 포함된 식별자(Idb)와 메시지(M6)의 MAC 헤더에 포함된 주소를 이용하여 한 홉 거리의 이웃노드로부터 온 메시지인지 두 홉 거리의 이웃노드로 온 메시지인지를 판단한다. 두 홉 거리의 이웃 노드이므로, 노드 C는 우선 매개변수 포함 여부를 검사한다. 포함되었을 경우는 메시지(M7)을 노드 B에게 전송한다(S340). 또한 이웃노드 B가 보내온 IDb, 암호화된 값 ETKb{IDb}, 세션 키 SK(C, B), 메시지를 전달한 노드 A의 식별자(IDa) 등을 임시로 저장한다(S330).
M7 = [Challenge, IDc, ESK(c, b){N, TKc}, {C}]
매개변수가 포함되지 않았을 경우는 노드 C가 임시로 저장한 데이터들 중에 노드 B의 식별자가 있는지를 검사한다. 식별자가 존재하면 이미 수집되고 있는 이웃 노드의 정보가 다른 경로를 통해 진행되고 있는 것이므로 키 교환과정은 필요 없다. 따라서 세션 키 생성과정은 생략하고, 이미 저장되어 있는 세션 키 SK(C, B)를 이용하여 메시지(M8)을 생성하여, 노드 B에게 전송한다. 또한 이웃 노드 B가 보내온 IDb, 암호화된 값 ETKb{IDb}, 메시지를 전달한 노드 A의 식별자(IDa) 등을 임시로 저장한다.
M7 = [Challenge, IDc, ESK(c, b){N, TKc}]
메시지(M7) 또는 메시지(M8)을 받은 노드 B는 메시지의 유형에 따라서 다음과 같은 행동을 취한다. 우선 메시지(M7)을 받았을 경우, 임시 저장된 데이터나 자신이 관리하고 있는 세션 키 목록에서 노드 C의 식별자(IDc) 에 해당하는 세션키 ID(C, B)를 획득한다. 이를 이용하여 상기에 제시된 한 홉 거리의 이웃 노드 A와 진행한 인증 과정과 동일한 인증 과정을 수행하고(S350), 모든 과정이 정상적으로 수행되었을 경우 메시지(M9)를 노드 C에게 전송한다(S360). 그리고 자신의 이웃 노드 목록에 (IDa, IDc)의 값을 추가한다(S380). 이는 식별자(IDc)를 가지는 노드 C는 식별자(IDa)를 가지는 노드 A를 거쳐서 메시지를 전달해 올 수 있는 두 홉 거리의 이웃노드라는 의미다.
M9 = [Response, IDb, ESK(c, b){N+1, TKb}]
노드 B가 메시지(M8)을 받았을 경우, 노드 B는 한 홉 거리의 이웃 노드인 노드 A가 수행한 인증 과정과 동일한 인증 과정을 수행하고, 모든 과정이 정상적으로 수행되었을 경우 메시지(M9)를 노드 C에게 전송한다. 그리고 자신의 이웃 노드 목록에 (IDa, IDc)의 값을 추가한다. 이는 식별자(IDc)를 가지는 노드 C는 식별자(IDa)를 가지는 노드 A를 거쳐서 메시지를 전달해 올 수 있는 두 홉 거리의 이웃노드라는 의미다. 또한 (IDc, SK(c, b))의 값을 자신이 관리하는 세션 키 목록에 등록한다. 추후 노드 C와 암호화된 통신을 위한 암호 키는 이 키를 사용하여 진행된다.
도 4는 이웃 노드 정보를 수집한 결과를 나타내는 도면이다.
도 4에는 노드 A가 이웃 노드 정보를 수집한 결과가 도시된다. 이웃 노드 식별자 리스트(Neighbor List)와 세션 키 리스트(Key List)가 함께 도시된다.
도 5는 이웃 노드를 모니터링 하는 모습을 나타내는 도면이다.
도 5에는, 노드 C를 이웃 노드 A, D, E, F 등이 모니터링 하는 예가 도시된다. 예를 들어, 노드 A가 노드 C로 하나의 메시지를 전달하면 노드 C의 수신 메시지 수를 1 증가시키고, 노드 C가 수신한 메시지를 다른 노드로 성공적으로 전송하는 경우 노드 C의 송신 메시지 수를 1 증가시킨다.
모니터링 대상 노드 C가 노드 X로부터 메시지를 수신하는 경우, 노드 X의 이웃 노드 목록에서 노드 C의 수신 메시지 수를 증가시키는 과정을 설명한다.
노드 X는 메시지의 최종 목적지가 노드 C와 동일한지를 검사한다. 최종 목적지가 C라면 알고리즘을 종료한다. 그렇지 않다면, 전송 메시지 목록에 다음 홉에 존재하는 노드의 주소(노드 C의 주소), 메시지의 최종 목적지(IP주소), 메시지 해쉬 정보, 발송 시간 등의 정보를 저장한다. 메시지를 전송한 후, 이웃 노드 목록에서 노드 C의 수신 메시지 수를 증가시킨다.
모니터링 대상 노드 C가 노드 X로 메시지를 송신하는 경우, 노드 X의 이웃 노드 목록에서 노드 C의 송신 메시지 수를 증가시키는 과정을 설명한다.
노드 X는 메시지에 포함된 목적지의 MAC 주소가 자신인지 검사한다. 목적지 의 MAC 주소가 자신이면 일반적인 메시지 처리과정을 거치도록 한다. 목적지의 MAC 주소가 자신이 아니면, 자신(노드 X)이 노드 C로 전달한 메시지를 노드 C가 자신(노드 X)에게 다시 전달하는 것인지를 검사한다. 판단 과정은 전송 리스트에 목적지 주소가 C이고, 메시지에 포함된 최종 목적지 주소가 동일하면서 해쉬값이 일치하는 항목이 있는지를 검사하여 이루어진다.
노드 C가 노드 X를 거쳐서 다른 노드로 전달하는 메시지이면, 메시지에 포함된 목적지의 MAC 주소 d가 노드 C를 통해서 도달할 수 있는지를 검사한다. 이는 이웃 노드 리스트에서 노드 C를 통해서 도달할 수 있는 2홉 거리의 이웃 노드들 중 d가 존재 하는지 검사함으로써 이루어진다. MAC 주소 d가 존재하면, 전송 리스트에서 해당 목록의 발송 시간 정보와 현재 수신한 시간의 차가 임계시간을 초과하는지 검사하여, 초과하지 않으면 이웃 노드 목록에서 노드 C의 송신 메시지 수를 증가시킨다.
도 5를 참조하면, 노드 A의 이웃 노드 목록에서 노드 C의 수신 메시지 수는 51이고 송신 메시지 수는 48이다. 노드 D의 이웃 노드 목록에서 노드 C의 수신 메시지 수는 100이고 송신 메시지 수는 97이다. 노드 E의 이웃 노드 목록에서 노드 C의 수신 메시지 수는 36이고 송신 메시지 수는 32이다. 노드 F의 이웃 노드 목록에서 노드 C의 수신 메시지 수는 37이고 송신 메시지 수는 35이다.
노드 C의 수신 메시지 수가 송신 메시지 수보다 많다. 수신 메시지 수와 송신 메시지 수의 차이가 임계 값을 초과하는 경우, 노드 C는 악의적 노드로 판정될 수 있다.
일정 시간 간격동안 노드 C의 트래픽 정보를 모니터링하여 수집하고, 수집된 정보들을 이용하여 노드 C가 잘못된 작업을 수행하는지 탐지한다. 이를 위해서 매 시간 간격마다 각 노드는 자신이 수집한 노드별 트래픽 정보를 특정 대표 노드에게 전달한다. 대표 노드는 모든 정보를 취합하여 하나의 정보로 나타내고, 이 정보를 이용하여 공격을 탐지한다. 공격의 탐지는 크게 다음의 세 가지 경우로 수행 될 수 있다.
첫째, 수신 메시지의 수와 송신 메시지의 수의 차이가 특정 임계치를 초과하지 않는지를 검사한다. 초과하는 경우 해당 노드를 악의적 노드로 판단한다.
둘째, 수신 메시지의 수와 송신 메시지의 수의 비율이 특정 임계치에 비해 높거나 낮지 않은지 검사한다. 특정 범위를 벗어나는 경우 해당 노드를 공격 노드로 판단한다.
셋째, 해당 네트워크의 각 노드들이 처리하는 메시지 처리량의 평균에 비해서 그 값이 일정치 이상인 노드가 있는지를 검사한다. 있다면 그 노드는 공격을 받고 있는 노드로 판단한다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해 져야 할 것이다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시예에 따른 무선 네트워크 시스템의 악의적 노드 판정 방법의 순서도이다.
도 2는 대상 노드로부터 1홉 거리의 이웃 노드 목록을 만드는 과정을 설명하기 위한 메시지 흐름도이다.
도 3은 대상 노드로부터 2홉 거리의 이웃 노드 목록을 만드는 과정을 설명하기 위한 메시지 흐름도이다.
도 4는 이웃 노드 정보를 수집한 결과를 나타내는 도면이다.
도 5는 이웃 노드를 모니터링 하는 모습을 나타내는 도면이다.

Claims (10)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 무선 네트워크 시스템의 악의적 노드 판정 방법에 있어서,
    상기 무선 네트워크 시스템 내 노드들 각각은, 자신의 이웃 노드들로 각각 전송될 수신 메시지의 수 및 이웃 노드들로부터 각각 수신된 송신 메시지의 수를 수집하여 대표노드에게 전송하는 단계; 와
    상기 대표 노드는, 상기 노드들로부터 수신된 수신 메시지의 수 및 송신 메시지의 수를 차이를 구하고, 상기 구해진 메시지의 수의 차이와 임계값을 비교하여 각 노드들에 대한 이웃 노드들이 악의적 노드인지를 판정하는 단계를 포함하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
  6. 제 5 항에 있어서,
    상기 무선 네트워크 시스템 내 노드들 각각은, 자신의 이웃 노드들로 각각 전송될 수신 메시지의 수 및 이웃 노드들로부터 각각 수신된 송신 메시지의 수를 수집하여 대표노드에게 전송하는 단계는,
    상기 노드들 각각은, 상기 무선 네트워크 시스템에 처음 참가하는 경우 이웃 노드들을 추가하는 단계를 포함하되,
    상기 이웃 노드들을 추가하는 단계는,
    상기 노드들 각각은, 상기 무선 네트워크 시스템 내의 기존 노드들에게, 자신의 식별자 및 상기 자신의 식별자를 자신만이 아는 제1임시키로 암호화한 제1신원정보를 포함한 제1메시지를 발생하여 브로드캐스팅하는 단계;
    상기 기존 노드들 각각은, 상기 제1메시지의 수신에 응답하여, 자신만이 아는 제2임시키를 이용하여 자신의 식별자를 암호화한 제2신원정보, 키 교환을 위한 제1매개변수를 포함한 제1응답메시지를 발생하여, 상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각에게 전송하는 단계;
    상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각은, 키 교환 매개변수와 상기 수신된 제1응답메시지에 포함된 제1매개변수를 이용하여 제1세션키를 생성하고, 상기 키 교환 매개변수와, 상기 제1세션키로 암호화한 난수 및 제1임시키를 포함한 제2메시지를 상기 기존 노드들 각각에게 전송하는 단계;
    상기 기존 노드들 각각은, 상기 키 교환 매개변수를 이용하여 제2세션키를 생성하고, 상기 생성된 제2세션키를 이용하여 상기 암호화된 난수 및 제1임시키를 복원하고, 상기 복원된 제1임시키를 이용하여 상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각을 인증하고, 인증이 성공한 경우 상기 복원된 난수를 설정된 값만큼 증가시킨 값과 제2임시키를 상기 제2세션키로 암호화한 값을 제2응답메시지에 포함시켜, 상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각에게 전송하는 단계; 및
    상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각은, 상기 제1세션키를 이용하여 상기 난수가 설정된 값만큼 증가된 값과 제2임시키를 복원하여, 상기 기존 노드들 각각에 대한 이웃 노드 여부를 인증하는 단계를 포함하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
  7. 제 6 항에 있어서,
    상기 기존 노드들 각각은, 상기 키 교환 매개변수를 이용하여 제2세션키를 생성하고, 상기 생성된 제2세션키를 이용하여 상기 암호화된 난수 및 제1임시키를 복원하고, 상기 복원된 제1임시키를 이용하여 상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각을 인증하고, 인증이 성공한 경우 상기 복원된 난수를 설정된 값만큼 증가시킨 값과 제2임시키를 상기 제2세션키로 암호화한 값을 제2응답메시지에 포함시켜, 상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각에게 전송하는 단계에서,
    상기 기존 노드들 각각은, 상기 복원된 제1임시 키를 이용하여 상기 암호화된 제1신원정보가 복호화되는지 여부로서 인증을 수행하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
  8. 제 6 항에 있어서,
    상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각은, 상기 제1세션키를 이용하여 상기 난수가 설정된 값만큼 증가된 값과 제2임시키를 복원하여, 상기 기존 노드들 각각에 대한 이웃 노드 여부를 인증하는 단계는,
    상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각은, 상기 복원된 제2임시키를 이용하여 상기 암호화된 제2신원정보가 복호화되는지 여부로서 인증을 수행하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
  9. 제 6 항에 있어서,
    상기 무선 네트워크 시스템에 처음 참가하는 노드들 각각은,
    상기 제1메시지를 브로드캐스팅한 후 설정된 시간 이후에 수신되는 제1응답메시지를 비정상 이웃 노드로부터 수신되는 메시지로 간주하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
  10. 제 5 항에 있어서,
    상기 노드들 각각은, 자신과 1홉 떨어진 이웃 노드들의 송수신 메시지수를 수집하여 일정시간마다 상기 대표노드에게 전송하는, 무선 네트워크 시스템의 악의적 노드 판정 방법.
KR1020080058767A 2008-06-23 2008-06-23 악의적 노드 판정 방법 KR100964456B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080058767A KR100964456B1 (ko) 2008-06-23 2008-06-23 악의적 노드 판정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080058767A KR100964456B1 (ko) 2008-06-23 2008-06-23 악의적 노드 판정 방법

Publications (2)

Publication Number Publication Date
KR20090132673A KR20090132673A (ko) 2009-12-31
KR100964456B1 true KR100964456B1 (ko) 2010-06-16

Family

ID=41691615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080058767A KR100964456B1 (ko) 2008-06-23 2008-06-23 악의적 노드 판정 방법

Country Status (1)

Country Link
KR (1) KR100964456B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002237821A (ja) 2001-02-08 2002-08-23 Yamatake Corp Ipネットワークにおけるプロミスキャスノードを発見する方法及び装置、並びにプロミスキャスノード発見プログラム
KR20020072618A (ko) * 2001-03-12 2002-09-18 (주)세보아 네트워크 기반 침입탐지 시스템
KR20050056967A (ko) * 2002-08-12 2005-06-16 해리스 코포레이션 침입탐지 특성을 가진 이동 애드-혹 통신망 및 이와 관련된방법
KR100707101B1 (ko) 2006-07-19 2007-08-10 이화여자대학교 산학협력단 센서 및 이동 네트워크에서 유사 엔트로피를 이용하여플러딩 공격을 탐지하는 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002237821A (ja) 2001-02-08 2002-08-23 Yamatake Corp Ipネットワークにおけるプロミスキャスノードを発見する方法及び装置、並びにプロミスキャスノード発見プログラム
KR20020072618A (ko) * 2001-03-12 2002-09-18 (주)세보아 네트워크 기반 침입탐지 시스템
KR20050056967A (ko) * 2002-08-12 2005-06-16 해리스 코포레이션 침입탐지 특성을 가진 이동 애드-혹 통신망 및 이와 관련된방법
KR100707101B1 (ko) 2006-07-19 2007-08-10 이화여자대학교 산학협력단 센서 및 이동 네트워크에서 유사 엔트로피를 이용하여플러딩 공격을 탐지하는 방법

Also Published As

Publication number Publication date
KR20090132673A (ko) 2009-12-31

Similar Documents

Publication Publication Date Title
Perrey et al. TRAIL: Topology authentication in RPL
Mohanapriya et al. Modified DSR protocol for detection and removal of selective black hole attack in MANET
Patwardhan et al. Secure routing and intrusion detection in ad hoc networks
Lee et al. A secure alternate path routing in sensor networks
Tseng et al. A specification-based intrusion detection model for OLSR
Mohanapriya et al. Trust based DSR routing protocol for mitigating cooperative black hole attacks in ad hoc networks
Modirkhazeni et al. Distributed approach to mitigate wormhole attack in wireless sensor networks
Gambhir et al. PPN: Prime product number based malicious node detection scheme for MANETs
Lee et al. An approach to mitigate wormhole attack in wireless ad hoc networks
Dong et al. Resilient cluster leader election for wireless sensor networks
Obaida et al. AODV robust (AODVR): An analytic approach to shield ad-hoc networks from black holes
Mahmoud et al. A modified aodv routing protocol to avoid black hole attack in manets
KR101517909B1 (ko) 유헬스케어 무선 센서 네트워크를 위한 상호 인증 방법
Ochola et al. A Review of Black Hole attack on AODV Routing in MANET.
Saha et al. A review on attacks and secure routing protocols in MANET
Talawar et al. Secure routing with an integrated localized key management protocol in MANETs
CN102711103B (zh) 一种无线传感器网络中节点掉线重连接的安全路由方法
KR100964456B1 (ko) 악의적 노드 판정 방법
Sibichen et al. An efficient AODV protocol and encryption mechanism for security issues in adhoc networks
Cerda et al. Protection from black hole attacks in communication networks
Murakami et al. On notification message re-broadcasting for the node-disjoint multipath routing method in ad hoc networks to counter eavesdropping of data packets
Padmanabhan et al. A secure routing protocol to combat byzantine and black hole attacks for manets
Sachan et al. Authenticated routing for ad-hoc on-demand distance vector routing protocol
Shaikh et al. Trusting anomaly and intrusion claims for cooperative distributed intrusion detection schemes of wireless sensor networks
Santhi et al. Randomized routing techniques for Ad-Hoc on-demand distance vector of wireless networks

Legal Events

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