★DHCP 개념을 확인하고 싶다면 아래 링크 클릭!★
https://peemangit.tistory.com/51
네트워크 구성
DHCP Spoofing 방어 방법
- DHCP Spoofing 방어 방법은 3가지가 있다.
Port-Security 사용
- 스위치에서 Port-Security를 구성할 경우 출발지 MAC 주소를 변조하는 모든 공격들을 방어하는 것이 가능하다.
- 기본적으로 Port-Security가 설정된 스위치 포트는 수신한 프레임의 L2헤더에 들어있는 출발지 MAC 주소를 확인하고, 조건에 일치하지 않는 경우 해당 포트를 기본적으로 Shutdown 시킨다.
- 정적으로 설정된 Switcport(L2)에서만 가능하다.
Port-Security 구성 방식
- Port-Security 구성 방식은 3가지가 존재한다.
1. Dynamic Port-Security
- 관리자가 특정 Device의 MAC 주소를 Switch 포트에 정적으로 등록하는 것이 아니라 Switch가 동적으로 처음 연결된 Device의 MAC 주소를 등록하는 방식이다.
- 그 후 해당 MAC 주소가 아닌 다른 MAC 주소가 출발지인 Frame을 수신하는 경우 해당 Port를 Shutdown 상태로 변경한다.
- 공격자가 Source MAC 주소를 변조하는 모든 공격을 방어하는데 효과적이다.
IOU(Switch) 설정
conf t |
2. Static Port-Security
- 관리자가 특정 장비의 MAC 주소를 정적으로 포트에 등록하는 방식이다.
- 해당 포트에 관리자가 특정 Device의 MAC 주소를 정적으로 포트에 등록하는 방식이다.
- 해당 포트에 지정된 MAC 주소가 아닌 다른 MAC 주소가 출발지인 Frame을 수신할 경우 해당 포트를 shutdown 상태로 변경한다.
- 보안적인 관리가 철저한 연구소, 군부대 등에서 사용이 가능하다. Device가 교체되는 경우 해당 포트의 설정도 반드시 변경해야 한다!
- PC1,2,3 번은 각각 IP가 1.1.1.1 ~ 3번으로 설정되어 있다.
Switch 설정
- 아래와 같이 모든 포트마다 정적으로 설정을 해주면 된다.
- 포트마다 스위치를 access 모드로 지정해준 다음 switchport port-security mac-address [PC MAC 주소]를 입력하면 설정이 완료된다.
en conf t no ip domain loo lin con 0 exec-time 0 0 logging syn ! int fa 0/1 shutdown switchport mode access switchport port-security switchport port-security mac-address 00D0.BAC2.8039 no shut ! int fa 0/2 shutdown switchport mode access switchport port-security switchport port-security mac-address 0060.2FBB.7C9E no shut ! int fa 0/3 shutdown switchport mode access switchport port-security switchport port-security mac-address 0060.2FBB.7C9E no shut ! |
Static Port-Security 확인
다른 장비를 연결할 경우
- 다른장비를 동일 포트에 연결할 경우 MAC 주소가 달라서 해당 포트가 Shutdown 된다.
3. Port-Sticky
- Dynamic Port-Security의 경우 학습된 MAC 주소가 running-config에 등록되는 것이 아니기 때문에 해당 포트가 비활성화 상태가 되거나 장비를 재부팅하는 경우 동적으로 등록되어 있는 MAC 주소가 전부 삭제된다.
- Static Port-Security의 경우 관리자가 입력한 MAC 주소가 rinning-config에 등록되어 있기 때문에 설정을 저장한다면 MAC 주소는 영구적으로 남아있게 된다. 하지만 모든 장비의 MAC주소를 확인해야 한다는 단점이 있다.
.
- Port-Sticky 방식의 경우 2가지 방식을 혼합한 형태로 볼 수 있다. MAC 주소의 학습은 Dynamic과 같이 동적으로 학습하고, 학습된 MAC 주소는 Static처럼 running-config에 등록되기 때문에 설정을 저장 한다면 지속적으로 MAC 주소가 남아있게 된다.
네트워크 구성
SW(Switch) 설정
conf t default interface range e 0/0 - 2 interface range e 0/0 - 2 no shutdown ! interface e 3/2 switchport trunk encapsulation dot1q switchport mode trunk |
SW2(Switch) 설정
- VMnet과 연결되어있는 Host OS의 MAC 주소와 Network Device의 MAC 주소도 고려해야 한다.
(최대 장비 개수를 8개로 설정한 이유이다.)
interface e 3/3 shutdown switchport trunk encapsulation dot1q switchport mode trunk switchport port-security switchport port-security maximum 8 switchport port-security mac-address sticky no shutdown |
설정 확인
- 기본적으로 Port-Security의 보안정책이 위반되는 경우 해당 포트를 shutdown 시킨다.
- 하지만 가용성(Availability)이 중요한 경우 무조건 shutdown 하는 것이 아니라 violation 옵션을 사용하여 Protect 혹은 Restrict를 사용하는 것도 가능하다. (Dynamic / Static / Port-sticky 모두 사용 가능)
SW2(Switch) 설정
conf t int e 3/3 switchport port-security violation restrict !
-verity-
show run int e 3/3 |
DHCP Snoofing
- DHCP Spoofing 공격을 방어할 수 있는 방법은 스위치에서 DHCP Snooping 기능을 활성화 시키는 것이다.
- DHCP Snooping 기능이 활성화된 스위치의 경우 L2헤더뿐만 아니라 L3/L4 헤더 뒤에 위치한 DHCP 메시지 내부까지 검사하는 것이 가능하다.
DHCP Snooping 스위치 포트 종류
1. Trusted Port
- DHCP 서버가 연결된 포트로 모든 DHCP 메시지 수신을 허용한다. (Offer / ACK 를 포함한다.)
2. Untrusted Port
- Client가 연결된 포트로 해당 포트가 수신하는 모든 DHCP 메시지는 L4(UDP) 헤더 뒤에 위치한 Data Payload까지 검사를 수행한다.
- Client가 전송하는 Discover와 Request 메시지 등만 수신이 가능하고 Offer 혹은 ACK와 같은 서버만 전송 가능한 DHCP 메시지들은 수신을 차단한다.
- Client가 전송한 Discover와 Request 메시지는 Trusgred 포트로만 전송이 되고, Untrusted 포트에게는 전송하지 않는다.
- Attacker 는 Client가 전송한 Discover / Request 메시지를 확인할 수 없다.
DHCP Snoofing 설정
SW(Switch) 설정
ip dhcp snooping: 스위치에 DHCP Snooping 을 수행한다.
ip dhcp snooping vlan 1: vlan 1번에 Snooping 옵션을 적용한다.
no ip dhcp snooping information option: DHCP 옵션 82를 사용하지 않는경우 입력하는 명령어이다.
- 옵션 82번은 DHCP IP를 조금 더 쉽게 관리할 수 있는 옵션이다 (기본적으로는 사용하지 않는다.)
ip dhcp snooping trust: 1/0 포트를 trusted 포트로 지정한다. 나머지 포트들은 자동으로 Untrusted 포트로 지정이 된다.
conf t ip dhcp snooping ip dhcp snooping vlan 1 no ip dhcp snooping information option ! int e 1/0 ip dhcp snooping trust |
Snooping 패킷 확인
- Switch에서 debug ip dhcp snooping event, debug ip dhcp snooping packet 명령어를 입력해 로그를 확인한다. (un all 명령어로 디버그를 종료시킬 수 있다.)
- 디버그 메시지를 확인해보면 Client와 DHCP 서버 사이에서 전송되는 DHCP 메시지를 Snooping이 설정된 스위치가 모두 확인하고 있는 것을 볼 수 있다.
- DHCP 서버의 IP주소와 MAC 주소까지 검증하는 것을 확인할 수 있다.
- DHCP 서버가 요청한 정보만 수행하는 것을 확인할 수 있다. (DHCP 서버만 신뢰 포트이기 때문에)
- show ip dhcp snooping binding 명령어를 통해 DHCP 할당 정보를 확인한다.
- 최종적으로 DHCP 서버가 Ack 메시지로 IP 정보를 Client에게 할당하는 순간 Client MAC 주소, 할당된 IP 주소, 연결된 포트 정보를 확인할 수 있다.
'Hacking & Security > Kali Linux' 카테고리의 다른 글
[Kali Linux] IP Spoofing 공격과 방어(2/2) (0) | 2019.11.11 |
---|---|
[Kali Linux] IP Spoofing 공격과 방어(1/2) (0) | 2019.11.08 |
[Kali Linux] DHCP(Dynamic Host Configuration Protocol) 공격과 방어(1/2) (0) | 2019.11.07 |
[Kali Linux] ARP(Address Resolution Protocol) Spoofing 공격과 방어(2/2) (0) | 2019.11.06 |
[Kali Linux] ARP(Address Resolution Protocol) Spoofing 공격과 방어(1/2) (0) | 2019.11.06 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊