23
S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks Master Course Network & Information Security Lab Lee. pung. ho In Proceedings of the 4th IEEE Workshop on Mobile Computing Systems and Applications (WMCS A 2002), IEEE, Calicoon, NY Yih-Chun Hu David B. Johnson Adrian Perrig Rice University Rice University University of California, Berkeley [email protected] [email protected] perrig@ cs.berkeley.edu

S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

  • Upload
    jacqui

  • View
    88

  • Download
    0

Embed Size (px)

DESCRIPTION

S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks. Yih-Chun Hu David B. Johnson Adrian Perrig Rice University Rice University University of California, Berkeley - PowerPoint PPT Presentation

Citation preview

Page 1: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

S E A D

Secure Efficient Distance Vector Routingfor Mobile Wireless Ad Hoc Networks

Master CourseNetwork & Information Security LabLee. pung. ho

In Proceedings of the 4th IEEE Workshop on Mobile Computing Systems and Applications (WMCSA 2002), IEEE, Calicoon, NY

Yih-Chun Hu David B. Johnson Adrian Perrig Rice University Rice University University of California, [email protected] [email protected] [email protected]

Page 2: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

2Network & Information Security LabNetwork & Information Security Lab

CONTEXT

1. INTRODUCTION 2. RELATED WORK

21. Ad-Hoc Network 2.1 DSDV 2.3 Simple Cryptography for Distance Vector Routing

3. SEAD(Secure Efficient Ad hoc Distance vector routing protocol)

4. CONCLUSION

Page 3: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

3Network & Information Security LabNetwork & Information Security Lab

1. INTRODUCTION

Abstract DSDV 기반으로 One-way hash chain 을 사용하여 Ad-Hoc

네트워크 인증과 데이터 무결성을 제공하기 위해 제안된 프로토콜

DSDV Problem DSDV 는 Network 에서의 Routing 만을 제공하는 것이

목적인 Routing Protocol 이므로 Routing Table 위조와 같은 공격에 취약함

Solution Hash Chain 기법을 사용 , 사전에 인증된 Node 사이에 Hash

Chain 값을 배분 , Routing Table 에 Hash 값을 추가하여 , 무결성 여부로 Routing Table 의 인증여부 판별

Page 4: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

4Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.1 Ad-Hoc Network 기존의 네트워크와 달리 네트워크 인프라가 구축되지

않은 상태에서 단말들이 상호간에 데이터 송 / 수신을 수행할 수 있는 형태의 네트워크

기지국이나 AP(Access Point) 가 존재하지 않음 각각의 단말 node 들이 Routing 역할을 수행 동적인 Topology 를 소유

Problem 불안정한 링크 소유 : 무선을 이용하므로 대역폭 , 거리의

제한을 받고 , 간섭 / 다중링크 문제점이 존재 도청에 취약 : 유선매체가 아닌 무선매체로 인한 통신 이므로

중간에 도청 당할 위험성 존재 한정된 자원 : Power, memory, computing 능력 등 기존의

네트워크와 달리 자원이 한정됨 .

Page 5: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

5Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector) DSDV 개요

Distance Vector Routing 기반의 Routing Ad-hoc Network 에서 보편적으로 사용되는 Routing Protocol Distance Vector Routing 와 마찬가지로 Metric 과 Sequence Numb

er 를 사용

DSDV 동작과정 주기적으로 경로상에 포함된 Node 들간에 Routing table 를 전달 가장 최단경로 (Low metric) 로 Routing table 이 포함된

패킷을전송 만일 같은 metric 을 가진 packet 가 전송 될 경우 High Sequence

Number 를 가진 패킷을 수신

Page 6: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

6Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector) DSDV 구성요소

Route Table Entry: Destination’s address Destination 까지의 Hop count Sequence number (Destination node 에서 생성 )

Sequence number 오래된 Entry 와 새로운 Entry 를 구분 (Advertisement 할 때 마다 s

equence num 증가 ) Destination 에서 할당 ( 짝수 ) Broken link 가 감지되었을 경우 Metirc 을 무한대로하고 Detecting

host 에 의해 홀수 Seq num 할당

Page 7: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

7Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector) Route update information Type

Full dump 모든 이용 가능한 routing information

Incremental Last full dump 이후 바뀐 정보 Network 의 상태가 변한 경우 (e.g 노드가 이동 ) 사용

Page 8: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

8Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector)

Destination Next Hop Metric Seq. No

N4 N4 0 40

N1 N2 2 12

N2 N2 1 56

N3 N2 2 71

N5 N6 2 39

N6 N6 1 07

N7 N6 2 12

N8 N6 3 05

N3

N6

N2

N1N7

N4

N8

N5

Destination Metric Seq. No

N4 0 40

N1 2 12

N2 1 56

N3 2 71

N5 2 39

N6 1 07

N7 2 12

N8 3 05

(b) N4 node 의 Routing table (Full dump)

(a)

(b) (c)

(a) 네트워크 토플로지

(c) N4 node 가 이웃 node 와 주고받는 Distance-Vector (Incremental)

Page 9: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

9Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector

MH1 에 의해 update 가 발생하고 MH7 과 MH8 에 브로드캐스트 Broken link 가 감지된 경우

MH2 에 의해 홀수 seq num 과 무한대 metric 을 가진 incremental update 발생 Update 가 network 에 propagate

N3

N6

N2

N1N7

N4

N8

N5

N1

Page 10: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

10Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector

Destination Next Hop Metric Seq. No

N4 N4 0 51

N1 N2 3 23

N2 N2 1 67

N3 N2 2 82

N5 N6 2 50

N6 N6 1 18

N7 N6 2 23

N8 N6 3 16

(b) Update 이후의 N4 node 의 Routing table

(a)

(b)(a) Update 이후의 네트워크 토플로지

N3

N6

N2

N7

N4

N8

N5

N1

Page 11: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

11Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector DSDV 의 위와 같은 특징을 이용하여 공격이 가능

DSDV Routing protocol 의 취약점 Blackhole attack

Distance Vector Routing 이 가장 짧은 metric 를 이용하는 점을 공격 최단거리를 표시한 패킷을 배포해서 가능한 많은 트래픽을 유도

Inject routing loops Looping 방지목적으로 쓰이는 Sequence Number 를 조작함으로써

Looping 을 일으키는 공격을 수행 Inject a large number of route updates

Node 간에 Routing update 를 수행하려 할 때 , Metric 값을 조정함으로써 Routing update 를 실패하게 하거나 , 엉뚱한 곳으로 트래픽을 유도

Page 12: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

12Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.2 DSDV(Destination-Sequence Distance Vector Solution

Node 들 간에 Routing update 를 수행 할때 Metric 과 Sequence Number 의 무결성을 검증함으로써 Node 간에 인증을 수행

Metric 값과 Sequence Number 값의 무결성을 인증하는 기법으로 Hash Chain 기술을 적용하여 이러한 문제점들을 해결

Page 13: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

13Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.3 Simple Cryptography for Distance Vector Routing Hash 기법을 사용한 Routing Table 무결성 인증의 예

두 Node 간에 Hash 값을 사용하기로 약속되어 있다고 가정

1)

2)

Packet(table(B,1,B,2,34546354))

B

destination metric Next hop Seq # hash value

B 1 B 2 34546354

송신자는 metric 1, Sequence Number 2 를 hash 해서 암호문을 만들어 Packet 에 첨부 하여 전송

수신자는 전송 받은 metric 1, Sequence Number 2 를 hash 해서 H(m,s) 값을 생성함

A B

Page 14: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

14Network & Information Security LabNetwork & Information Security Lab

2.3 Simple Cryptography for Distance Vector Routing 3) 수신자 B 는 송신자 A 가 전송한 H(m,s) 와 자신이 hash

해서 만든 H(m,s) 를 비교함 만일 2 개의 값이 일치하지 않으면 무결성에 문제가 있는

것으로 간주

단순 hash 를 이용한 무결성 인증은 충돌쌍이 존재하므로 그대로 적용불가 .

예 )H(128)= 34567128 이 아닌 다른값 (512) 을 hash 해서H(512)=34567

충돌쌍 문제를 해결하기 위해 hash 를 연쇄적으로 사용한 hash cha 기법으로 충돌쌍 문제를 해결

Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD- 에서 Hash 의 종류인 MD5, MD4 의 충돌쌍 발견에 대한 내용언급

2. RELATED WORK

Page 15: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

15Network & Information Security LabNetwork & Information Security Lab

2. RELATED WORK

2.3 Simple Cryptography for Distance Vector Routing Hash Chain Mechanism

hash chain 의 구조 Hash 초기 hash 값을 를 연쇄적으로 hash 하여 chain 형태로 만든 Mechanis

m

hi-1 = H[hi] h5 => h4 => h3 => h2 => h1 => h0

이 hash chain 은 hash 의 one-way 특징이 있기 때문에 hi 에서 hi-1 을 만들 수 있지만 , 역으로 hi-1 에서 hi 값을 만들 수 없음

Page 16: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

16Network & Information Security LabNetwork & Information Security Lab

3. SEAD

SEAD Secure Efficient Ad hoc Distance vector routing protocol Hash chain 를 사용한 node 간에 무결성 인증법

metric 과 Sequence Number 에 해당되는 hash 암호문을 보냄으로써 무결성 확보

Each node N forms a one-way hash chain

Vkn, Vkn-1, … , Vo (with Vi-1 = H[Vi])

k : maximum node

n : maximum sequence number

Vo : authenticated seed value (by using CA)

Vks+j : sequence number s && metric m

k-m=j

Page 17: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

17Network & Information Security LabNetwork & Information Security Lab

예 ) 5 개의 Node 들이 3 까지의 Sequence Number 값을 주고 받는다고 가정

k = 5, n =3 -> v15, v14, v13, v12, ……..v0 까지의 hash 값이 존재

v14 = H[v15] , v13 = H[v14], v12 = H[v13] … Vi-1 = H[Vi])

A B C D E

3. SEAD

Page 18: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

18Network & Information Security LabNetwork & Information Security Lab

V0 값은 각각의 hash chain(V15..V1) 까지의 무결성 증명에 사용 ( 모든 node 들은 hash 값의 무결성 인증을 위해 v0 값을 사용함 )

Metric m 과 Sequence Number s 의 무결성을 인증 받기 위해서는 Vks+j 번째의 hash 암호문을 전송해야 함

예 ) metric 0, Sequence Number 0 전송시 무결성 인증 법 metric 0 , Sequence Number 0 인 경우 , j = k-m Vks+j 이므로 , metric 0, Sequence Number 0 에 해당되는 hash chain value 는 V5 metric 1, Sequence Number 0 에 해당되는 hash chain value 는 V4 metric 2, Sequence Number 0 에 해당되는 hash chain value 는 V3 metric 3, Sequence Number 0 에 해당되는 hash chain value 는 V2

m=0 m=1 m=2 m=3 m=4

S=2 V15 V14 V13 V12 V11

S=1 V10 V9 V8 V7 V6

S=0 V5 V4 V3 V2 V1

K=5, n=3 이라고 가정할 때의 SEAD Table

3. SEAD

Page 19: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

19Network & Information Security LabNetwork & Information Security Lab

Node D 가 다른 node 에게 node E 에 대한 routing 정보를 전송함을 가정

모든 node 들이 위에서 만든 hash chain value 를 가지고 있다고 가정함 1)

2) Node C 는 Vks+j 공식을 사용해서 자신이 소유한 V9 값과 일치하는지 검사

또한 V9 값을 9 번 hash 해서 V0 도달여부로 hash 값의 무결성을 인증 할 수 있음

Metric=2, Seq #=1 여기에 해당되는 해당 hash 값인 ( 여기서는 V8) Routing table 에 기록하여 전송함

A B C D E

destination metric Next hop Seq # hash value

E 1 D 1 V9

Node D 의 routing table

Node D 는 Metric 1, seq# 1, 에 대한

인증용 Hash 값으로 V9 를 Table 에 포함

3. SEAD

Page 20: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

20Network & Information Security LabNetwork & Information Security Lab

3. SEAD

3)

4) node B 는 Vks+j 공식을 사용해서 자신이 소유한 V8

값과 일치하는지 검사함 Metric=3, Seq #=1 여기에 해당되는 해당 hash 값인 ( 여기서는 V7) Rout

ing table 에 기록하여 전송함

A B C D E

destination metric Next hop Seq # hash value

E 2 C 1 V8

Node C 의 routing table

Page 21: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

21Network & Information Security LabNetwork & Information Security Lab

4. CONCLUSION

destination metric next hop seq #

A 3 E 14

B 4 C 15

dest metric n. hop seq # hash val

A 3 E 14 83DF733A

B 4C

15 B938E96C

C 3F

18 F2002330

(a)

(b)

DSDV 와 SEAD 의 Routing table 의 차의점

Page 22: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

22Network & Information Security LabNetwork & Information Security Lab

4. CONCLUSION

장점 사전에 hash chain value 값들을 받은 node 들에 한하여

Routing 에 개입 가능 악의적인 목적을 지닌 node 의 Routing 관련 공격에 대한 차단이

가능 공격자가 Routing table metric, Sequence Number 을 위조하기 위해서는

여기에 해당되는 hash 값을 알아야 하므로 Routing 방해와 관련된 공격을 최대한 방지 할 수 있음

단점 초기에 생성될 hash chain value 값으로 인한 overhead 가 예상 Network 내에 존재하는 node 들이 수가 많을 경우 더 많은 계산이

필요 same-distance fraud : 같은 거리에 존재하는 악의적인 node 가

packet 를 그대로 재 전송하는 공격을 차단할 수 없음

Page 23: S E A D Secure Efficient Distance Vector Routing for Mobile Wireless Ad Hoc Networks

23Network & Information Security LabNetwork & Information Security Lab

참고문헌 SEAD : Secure Effcient Distance Vector Routing Effcient security mechanisms for routing protocols Highly Dynamic Destination-sequenced vector routing