본문 바로가기

Ryu's Tech

DHCP Snooping [ Prevent DHCP Starvation Attacks ]


DHCP Snooping [ DHCP 스누핑 ] 은 DHCP Spoofing [ DHCP 스푸핑 ] 을 어느정도 방어하기 위한 하나의 기법입니다.

이 단어들이 참.. 헷깔리더라구요... spoofing snooping sniffing

하나하나 대충 개념을 잡아 볼게요.



  • Spoofing 은 "속이다"라는 의미로 생각하시면 됩니다.
    예를들어 위와 같은 그림에서 전화기는 그냥 PC로 생각하세요 정상적인 트래픽은 라우터 (게이트웨이)로 바로 나가야 하지만 이를 ARP Reply 패킷을 통해서 변조 시켜 패킷을 자신을 통해서 지나가도록 하는 것입니다.

  • Sniffing 은 "킁킁~"처럼 코를 킁킁거려 냄새를 맡는 다는 것 정도로 아시면 됩니다.
    쉽게 말해 도청이라고 생각하시면 됩니다. Spoofing을 통해서 네트워크 경로를 뒤집은 뒤 패킷을 캡쳐 하는 것을 Sniffing 이라고 생각하시면 됩니다.
  • Snooping은 사전적으로는 염탐하다.같은 뜻으로 있는데 여기서 말하려는 DHCP Snooping은 좀 다릅니다.
    spoofing에 대한 보안 대책 같은 것으로 생각하시면 됩니다.
    • Wikipedia에서도 아래와 같이 정의 하고 있습니다.

      In computer networking DHCP snooping is a series of techniques applied to ensure the security of an existing DHCP infrastructure.



전문가도 아니고.. 이것저것 더 많지만 이정도만 알고 가겠습니다.

그리고 이제 DHCP의 동작에 대해 한번 되새김질 하고 가보겠습니다.

이와 같이 요청시에는 항상 Broadcast 를 사용하기 때문에 스위치 환경에서는 공격자가 있으면 DHCP에 대한 Offer 패킷과 Ack 패킷을 PC로 보내게 되어 Gateway나 DNS Server 주소를 속일 수 있습니다.

그렇다면 이와 같은 방법을 막기 위해서는 한번 간단하게 생각해 보도록 하겠습니다.
PC는 패킷을 Broadcast로 보내기 때문에 스위치 환경에서는 모든 포트가 이 패킷을 수신하겠지만, 스위치에서 DHCP 서버에 할당된 포트에서만 DHCP 패킷을 전송할 수 있게 한다면 이와같은 Spoofing 공격을 막을 수 있습니다.

사용방법도 간단하고 개념도 간단합니다.
한번 보도록 하겠습니다.

dhcp spoofing을 enable 시켜주고 DHCP Spoofing이 설정될 VLAN을 설정해 주면 됩니다.

Switch(config)# ip dhcp snooping
Switch(config)# ip dhcp snooping vlan vlan-id [vlan-id]
Switch(config)# no ip dhcp snooping information option

마지막 줄은 DHCP option 82 를 꺼주는 것인데, 대부분의 enterprise server는 이를 지원하지 않습니다.
option 82에 대해서는 차후 다시 따로 포스팅을 하겠습니다.

Switch(config-if)#no ip dhcp snooping trust (Default)
Switch(config-if)#ip dhcp snooping trust Switch(config-if)#ip dhcp snooping limit rate 10 (pps)
이제 interface 에서 위와 같이 설정하면 됩니다.
ip dhcp snooping trust 는 default 값은 disable 되어 있으니, DHCP 서버쪽 포트에서 이와 같이 trust port로 만들어 주고
아래는 default rate limit 를 설정한다는 부분인데, 저도 자세히는 아직 모르겠습니다. 이해되면 바로 다시 수정하겠습니다.
아무튼 결과는 아래와 같이 되어서 공격자는 더 이상 DHCP 활동을 할 수 없게 됩니다.


명령어는 간단하지만 이해하기가 왠지 힘들었습니다... 아무튼 여기까지만 하겠습니다.






결과는 아래와 같이 확인할 수 있습니다.

Switch# show ip dhcp snooping
Switch DHCP snooping is enabled
DHCP snooping is configured on following VLANs:
104
Insertion of option 82 is enabled
Interface                Trusted Rate limit (pps)
------------------------ ------- ----------------
FastEthernet0/35         no      3
FastEthernet0/36         no      3
GigabitEthernet0/1       yes     unlimited
Switch#

Switch# show ip dhcp snooping binding