본문 바로가기
프로그래밍/NETWORK HACKING

[네트워크 보안] DHCP / wireshark 사용법

by B T Y 2017. 7. 20.
반응형

DHCP 동작 이해/ wireshark 사용법에 대해서 정리한다.



1. UDP를 통해서 데이터를 주고 받는 어플리케이션


  - DHCP, DNS, ...


2. TCP


  - FTP, HTTP, ...



DHCP( Dynamic Host Configuration Protocol )


  - 같은 네트워크 내에서 누구든지 서비스 제공자가 될 수 있다.

    ( 즉, DHCP 서비스를 제공하는 서버가 여러대 있어도 된다 )


 - DHCP를 이해하기 위해서 리눅스에서 DHCP 서버를 구성해서 실습을 할때  DHCP 서버 설정을 정확하게 해줘야하고 

    설정이 제대로 되있지 않다면 내부 네트워크에 다른 사용자의 인터넷 사용에 영향을 미칠수 있다.

    ( 이러한 부분이 DHCP의 취약점이라고 볼수도 있다 )


 

 

- 리눅스 DHCP 서버 설정


1. DHCP 데몬 설치


  #> yum install dhcp.i686


2. DHCP 서버 설정

  - /etc/dhcp/dhcpd.conf에 들어가면 sample 파일의 경로가 나와있는데 sample 파일에서 해당 내용을 가져와

    /etc/dhcp/dhcpd.conf 파일에 자신의 네트워크 상황에 맞게 수정후에 저장 해주면 된다.


default-lease-time 600;     

max-lease-time 7200;       * 최대 지연시간이 다 끝나면 다시 갱신을 해야한다.



subnet 192.168.6.0 netmask 255.255.255.0 {

  range 192.168.6.10 192.168.6.254;

  option domain-name-servers 168.126.63.1;

  #option domain-name "internal.example.org";

  option routers 192.168.6.1;

  option broadcast-address 192.168.6.255;

  default-lease-time 600;

  max-lease-time 7200;

}

 

 

( DHCP sample 파일이고 안에 내용을 자신의 네트워크 상황에 맞게 수정해서 DHCP 서버 운영을 할 수 있다 )

 


3. DHCP 서버 실행


  #> service dhcpd start

 

 

( netstat -anu 명령어를 이용해서 확인해보면 DCHP 기본 포트인 67번 포트로 서비스가 운영되는걸 확인 해 볼수 있다 )

 


4. 임대 갱신

 

  - 윈도우 환경에서 아이피를 dhcp 서버에서 자동으로 받아오려면 네트워크 설정이 static이 아닌 ip 정보를

   자동으로 받아오는지 미리 확인 한후에 진행한다.

 


  #>ipconfig /release

  ...

  #>ipconfig /renew

  ...


  #>ipconfig /all

   * DHCP 서버 확인


- 리눅스는 DHCP 서버를 제공하고 있고 윈도우가 DHCP 서비스를 받는 클라이언트이기  때문에

  윈도우 cmd창에서 확인을 한다.


- 어느 서버가 DHCP 서비스를 운영하는지 모르고 그 서버에 ip주소도 알수 없기 때문에 

  DHCP에서 첫번째 요청은 무조건 브로드캐스트가 될수바께없다.

 

 

 

 

 

( ipconfig /all 명령어 이후에 DHCP 서버를 확인해보면 어느 서버에서 DHCP 서비스를 제공 받았는지 확인 할 수 있다 )

 





* wireshark


  - 네트워크 모니터링 도구

  - 동작 원리는 전에 만들었던 스니퍼와 동일


  - wireshark 설치시 WinPcap 라이브러리는 설치 해줘야된다

    ( 있다면 설치 할 필요없지만 없다면 무조건 설치 )

  - 패킷 수집 포인트에 따라 수집되는 패킷이 다르기때문에 포인트가 중요하다.



- filter


1). capture filter

  - 패킷을 처음 수집할때부터 filter에 걸리지 않는 내용은 빼고 수집하는 방식

  - 보통 복잡한 룰을 적용하지 않는게 원칙

   ( 계속 수집을 진행하기 때문에 복잡한 룰을 적용하면 성능에 영향을 미친다 )


2). display filter

  - 패킷을 다 수집해놓고 화면에 보여줄때만 filter를 적용하는 방식

  - 패킷을 수집하고 진행하기 때문에 복잡한 룰을 적용해도 되고 그렇게 많이 진행한다.


 

 

 

( wireshark 메인화면을 보면 내 장치에 연결 되있는 영역들에서 통신이 일어나는걸 보여주고 있고

해당 영역을 더블클릭해서 패킷 수집과 분석을 할 수 있다 )

 

 

( wireshark창은 ① packet list  ② packet detail  ③ packet bytes으로 나뉘고

④번은 wireshark 상태 표시줄로

패킷을 수집 했을때 임시로 저장해두는 임시파일 이름과 수집한 패킷과 화면에 보여지는

패킷의 갯수 그리고 profile을 표시한다 )

 

 

( wireshark에서 capture filter는 캡쳐 인터페이스에서 진행하고 기본적으로 제공해주는 capture filter 룰이 있고

Option을 통해서 룰을 직접 만들어 추가 시킬수 있다 )

 

 

( display filter는 packet list창 위쪽에 입력하는곳이 있고 마찬가지로 기본적으로 제공해주는 룰이 있다.

filter를 적용 시켜서 서버와 클라이언트간의 TCP 통신을 필터링해서 보여주고 있다 )

 

 

( wireshark에서 기본적으로 제공해주는 display filter 룰이고 옆에 깃발 모양을 클릭하면 볼수 있다 )

 

 

 

반응형

댓글