DHCP Spoofing

17
㈜㈜㈜㈜㈜ DHCP Spoofing (DHCP Spoofing ㈜㈜㈜㈜ ㈜㈜ ㈜㈜ )

description

DHCP Spoofing (Dynamic Host Configuration Protocol) : DHCP Spoofing 방어하기 위한 기법

Transcript of DHCP Spoofing

Page 1: DHCP Spoofing

㈜유미테크

DHCP Spoofing(DHCP Spoofing 방어하기 위한

기법 )

Page 2: DHCP Spoofing

Switch, Router, IP Router, Hub

Page 3: DHCP Spoofing

3

Switch, Router, IP Router, Hub

• Switch– 네트워크 단위들을 연결하는 통신 장비– Hub 와 유사 하나 전송 속도 개선

Node.js & Vert.x

Page 4: DHCP Spoofing

4

Switch, Router, IP Router, Hub

• Router– 라우터는 인접한 라우터에서 전달받은 패킷의 수신처 주소를 조사하여 최적

경로를 선택해 새롭게 패킷을 중계

Node.js & Vert.x

Page 5: DHCP Spoofing

5

Switch, Router, IP Router, Hub

• IP Router ( 공유기 )– 일반적인 라우터에서 포트 수를 줄이고 NAT 기능을 추가한 것– 정확한 명칭은 IP DSL Switch

Node.js & Vert.x

Page 6: DHCP Spoofing

6

Switch, Router, IP Router, Hub

• Hub– 장비들을 케이블을 사용하여 연결해 주는 장치– 컴퓨터나 프린터들과 네트워크 연결– 근거리 네트워크 연결

Node.js & Vert.x

– 네트워크 장비와 연결– 네트워크 상태 점검– 신호 증폭 기능

Page 7: DHCP Spoofing

DHCP?

Page 8: DHCP Spoofing

8

DHCP?

• DHCH 란 ?– DHCP : Dynamic Host Configuration Protocol

– 호스트 IP 구성 관리를 단순화하는 IP 표준– 호스트의 IP 주소와 각종 TCP/IP 프로토콜의 기본 설정을 동적으로

Node.js & Vert.x

• DHCH 할당방법– 동적 할당 (Dynamic allocation)

– 자동 할당 (automatic allocation)

– 정적 할당 (static allocation)

Page 9: DHCP Spoofing

9

DHCP?

• IP 할당

Node.js & Vert.x

Page 10: DHCP Spoofing

10

DHCP?

Node.js & Vert.x

• IP 할당– DHCP Discover

• Client MAC: 단말의 MAC 주소

– DHCP Offer• Client MAC: 단말의 MAC 주소 • Your IP: 단말에 할당 ( 임대 ) 할 IP 주소 • Subnet Mask (Option 1)

• Router (Option 3): 단말의 Default Gateway IP 주소 • DNS (Option 6): DNS 서버 IP 주소 • IP Lease Time (Option 51): 단말이 본 IP 주소 (Your IP) 를 사용 ( 임대 ) 할 수 있는 기간 ( 시간 )

• DHCP Server Identifier (Option 54): 본 메시지 (DHCP Offer) 를 보낸 DHCP 서버의 주소 . 2개 이상의 DHCP 서버가 DHCP Offer 를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드에 넣어서 단말에 보냄

Page 11: DHCP Spoofing

11

DHCP?

Node.js & Vert.x

• IP 할당– DHCP Request

• Client MAC: 단말의 MAC 주소 • Requested IP Address (Option 50): 난 이 IP 주소를 사용하겠다 . (DHCP Offer 의 Your IP 주소가 여기에

들어감 )

• DHCP Server Identifier (Option 54): 2 대 이상의 DHCP 서버가 DHCP Offer 를 보낸 경우 , 단말은 이 중에 마음에 드는 DHCP 서버 하나를 고르게 되고 ,   그 서버의 IP 주소가 여기에 들어감 . 즉 , DHCP Server Identifier 에 명시된 DHCP 서버에게 "DHCP Request" 메시지를 보내어 단말 IP 주소를 포함한 네트워크 정보를 얻는 것임

– DHCP Offer• Client MAC: 단말의 MAC 주소 • Your IP: 단말에 할당 ( 임대 ) 할 IP 주소 • Subnet Mask (Option 1)

• Router (Option 3): 단말의 Default Gateway IP 주소 • DNS (Option 6): DNS 서버 IP 주소 • IP Lease Time (Option 51): 단말이 본 IP 주소 (Your IP) 를 사용 ( 임대 ) 할 수 있는 기간 ( 시간 )

• DHCP Server Identifier (Option 54): 본 메시지 (DHCP Offer) 를 보낸 DHCP 서버의 주소 . 2개 이상의 DHCP 서버가 DHCP Offer 를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드에 넣어서 단말에 보냄

Page 12: DHCP Spoofing

12

DHCP?

• DHCP Relay Agent

Node.js & Vert.x

Server

Page 13: DHCP Spoofing

DHCP Spoofing

Page 14: DHCP Spoofing

14

DHCP?

Node.js & Vert.x

• Spoofing 공격을 방어 하기 위한 방법• 스위치가 DHCP 메시지 내부까지 검사하는 것• Option 82 패킷 활성화

– 동작 방식• 정상이라고 판단되는 포트를 Trust 활성화

Page 15: DHCP Spoofing

15

DHCP?

Node.js & Vert.x

• Option 82– 사용자가 설정이 가능한 커스텀 패킷– default Format

Page 16: DHCP Spoofing

16

DHCP?

Node.js & Vert.x

• Option 82

Page 17: DHCP Spoofing

17

DHCP?

Node.js & Vert.x