강좌
클라우드/리눅스에 관한 강좌입니다.
프로그램 분류

Ethereal (패킷분석프로그램)

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

 

 

PIC6cae.jpg                                           프로그램명 : The Ethereal Network Analyzer

                                           파 일이름   : ethereal-0.10.14 / libpcap 0.8.3

                                           운 영체제   : X 환경의 유닉스

                                           라 이센스   : GPL

                                           홈 페이지   : http://www.ethereal.com


이 번 강좌는 etherpeak나 sniffer 등 처럼 이더넷 카드를 통해 나가고 들어오는 팻킷을 스니핑 할 수 있는 프로그램인 Ethereal에 관해서 rpm

설 치와 사용방법및 특징을 되짚어 보는 시간을 가진다.


  처음에 리눅스 데스크탑을 사용하면서 인터넷 메뉴의 첫 아이콘으로 Ethereal를 볼 수 있었는데 처음엔 먼가 했다가 특별히 프로그램을 구해서 설치해야만 볼수있는 스니핑 기능을 CentOS에서 기본으로 Ethereal이 제공

되 어져있다는 것을 알았으며 실제로 아이디와 패스워드정보의 패킷이 잡히는지 테스트해 본 기억이 난다.(그대로 잡힌다.)


그 럼 Ethereal를 간단히 정의하면 네 트워크 팻킷분석기이 다. Ethereal는 네트워크 (eth0, eth1...)를 지나가는 패킷들을 캡쳐하려고 할것이고 그 패킷을 다양한 형태로 결과물을 보여준다. 설치와 기능을 살펴보면서

이 형태들을 살펴볼것이며 이러한 프로그램을 쓰는 목적은 네트워크 문제를

해 결하기 위해서 이것을 사용할 것이며 보안 관련 엔지니어들은 보안적인 측면에서 시험하기 위해 사용할수도 있다. 개발자들은 프로토콜 구현에 있어

디 버그를 하기 위해서 Ethereal와 같은 프로그램을 사용 가능하다.

눈 에 보이지 않는 팻킷을 보고 그 패킷이 어떤 정보를 담고 있으며 어떤 서비스에서 나간것인지를 알려주므로 정말 유용한 프로그램이 아닐 수 없다.


아 래는 Ethereal이 제공하는 많은 특성들중의 일부이다.

ㅇ 네트워크 인터페이스로부터 활 동 중 인 패킷 데이터를 캡쳐한 다.

ㅇ 매우 상 세한 프로토콜 정보를 가지고 패킷들을 표현한 다.

ㅇ 캡 쳐된 패킷 데이터를 열고 저장한 다.

ㅇ 많은 다른 캡쳐 프로그램들로부터 패 킷 데이터를 임포트하 고,

   그 프로그램들에게 익 스포트 한다.

ㅇ 많은 기준에 대해서 패 킷을 필터링한 다.

ㅇ 필터들에 근거한 패킷 표현을 칼 라화한 다.

ㅇ 다 양한 통계를 생성한다.


이 제 Ethereal이 무엇인지 어떠한 특징이 있는지 어떻게 사용 될 수 있는지를 살펴보았다. Ethereal 의 공식 홈피이지인 (www.ethereal.com)

서 최신버전인 ethereal-0.10.14를 다운받고 이 페키지를 설치하기위해

필 요한 libpcap 0.8.3 도 염두해두고 설치를 시작한다.


최 소산의 플랫폼들

리 눅스

ㅇ Debian GNU/Linux

ㅇ Gentoo Linux

ㅇ IBM S/390 Linux(RedHat)

ㅇ Mandrake Linux

ㅇ PLD Linux

ㅇ Red Hat Linux

ㅇ Rock Linux

ㅇ Rock Linux

ㅇ Slackware Linux

ㅇ Suse Linux

PIC6caf.jpg

다 운로드 화면이다. ( http://www.ethereal.com/download.html )

Windows, Red Hat / Fedora , Solaris, Source Code 등의 카테고리가 있음을 알수가 있다 .원하는 플렛폼에 맞게 선택할 수 있다.


안 에 보면 All Version 이라하여 버전별로 의존성걸리는 페키지들까지

모 두 있으며 시그너쳐파일도 보인다. 여기서 의존성걸리는것을 모두

받 아 설치해도 되고 (미리 설치하는 것 보다 설치하다가 의존성걸리면 찾아

설 치 하는것이 더 좋겠다.)

아 니면 아래처럼 자신의 시스템의 설치씨디가 있으면 마운트 하여 rpm을

구 할수 있다.

마 운트 후

cd /mnt/cdrom/CentOS/RPMS

rpm -ivh glib-1.2.6-3.i386.rpm

rpm -ivh glib-devel-1.2.6-3.i386.rpm

rpm -ivh gtk+-1.2.6-7.i386.rpm

rpm -ivh gtk+-devel-1.2.6-7.i386.rpm

rpm -ivh libpcap-0.4-19.i386.rpm


위 의 페키지들이 필요하며 아마 데스크탑으로 설치를 했다면 libpcap 페키지

빼 고는 대부분 설치가 되어있을 것이다.

(rpm -qa | grep 찾을패키지명 또는 일부명 : 패키지가 설치되어있는지 검색)


그 럼 glib, gtk+-devel, gtk+ 가 설치되어있는 서버에서 테스트하므로


우 선 이렇게 설치해준다.(의존성에 걸리면 그 패키지 위과같은 방법으로 찾아 설치 해준다.)


패 킷을 잡을수있도록 해주는 패키지 설치

# rpm -ivh libpcap-0.8.3-10.RHEL4.rpm


Ethereal 설치

# rpm -ivh ethereal-0.10.14-1.EL4.1.rpm


TIP)

설 치시 의존성이 가장 문제일 것 이다. 위에서 제시한데로

의 존성 걸리는 패키지들을 일단 확보한다. 그러나 모든 의존성 페키지들이

다 한자리에 있는데도 서로 설치가 않되어서 그 어떻한 패키지를 먼저 설치해도 설치가 않되는 경우가 있다. 그럴때는

rpm -ivh *.rpm 이런식으로 몽땅해라라고 명령을 내리면 속시원히

설 치됨을 볼 수 있다. 또 한가지 yum 업데이트를 이용하여 설치하는 방법도 있다.

사 실 이방법이 가장 간편하면서 빠른 방법으로 yum 업테이트가 되는 상황이라면 (안되면 yum 도 설치가능하니 설치하면 된다.)

다 음과 같은 형식으로 설치하거나 업데이트 할 수 있다.


# yum install [설치하고싶은 페키지명]


이 정도면 여러 방면으로 설치 할 수 있는 방법을 알려준 것 같다.

Ethereal 의 세부적인 기능은 홈페이지에서만 보더라도 꾀 많은 문서로 양이 많다. 흔히 사용하고 굴직한 기능들만 보도록 하고 자세한건 직접 건드려 보길바란다.

먼 저 인 터텟 - Ethereal Network Analyzer 실 행한다.

PIC6cb0.jpg

실 행 후 먼저 help - About Ethereal을 클릭하면 위와같은 정보를 볼수가

있 다. GTK+, GLib, libpcap, libz, Net-Snmp 그리고 마지막으로해당 서버

의 시스템 버전이 나온다. 그리고 첫줄에서 Ethereal의 Version 0.10.14 버 전

도 확인 할 수 있다.

그 럼 눈에 바로 보이는 큰 아이콘 부터 보자


처 음에 보이는 것이 Interfaces 이다. 클릭하면 다음과 같은 화면을 만날 것이다.

자 실행시킨 위 그림을 보면 Device 라하여 eth0 any, lo 라는것이 명시되고 만약 렌카드가 두게면 eth1도 있을것이다  그 device에 대한

설 명과 IP ,Packets량의 정보가 보인다.오른쪽에 Capture에 살짝 마우스를

올 리면 즉시 팻킷캡쳐를 한다는 메세지를 볼수가 있고 클릭시 다음과 같이

서 비스 프로토콜별로 패킷을 양과 % 를 볼수있으면 캡쳐를시작한지로 부터

경 과된 시간도 보인다.

PIC6cb1.jpg

TCP 와 UDP 프로토콜이 지배적으로 사용되며 패킷량을 보여준다.

그 럼 이 화면이 과연 정말 맞는것일까 하는 의문에 실제로 팻킷을 발생시켜

보 았다.


이  캡쳐창을 한쪽으로 계속 보고있는 가운데 인터넷창을 띄워보자 그 다음

각 종 링크를 클릭한다든지 이벤트를 발생시키면 갑자기 TCP 의 상황바가

올 라가면서 다른것들이 조금씩 줄어드는것을 볼 수 있을것이다.

이 메일 역시 보내보면 UDP가 올라가는것을 볼 수 있다.

우 리는 장치별로 본다음 그 장치에서 나가는 패킷을 프로토콜 종류로 보았다.

그 럼 이 창을 종료를 해보자 아주 재미있는것이 나온다. 통계로만 보았던

패 킷이 내용과 함께 색깔별로 잘 정리되어 시간 ,시작IP , 대상IP Protocol

그 리고 내용까지 각 항목별로 정렬가능하게 나오면 아래에는 더 세부적인

내 용까지 제공해준다. 심지어는 임의 사이트에 로그인을 했을시 아이디와

페 스워드까지 나오는 것을 보았을때 나는 입을 다물지 못했다. 처음

사 용목적에서 기술했듯이 이런 기능들이 있기에 많은 활용이 되는 것이다.

PIC6cb2.jpg
정보를 보존하고 싶으면 다시 Interface를 선택하고 캡쳐하기를 클릭하면

현 재까지의 패킷정보를 저장하고 시작할것이지 버리고 새로 시작할

것 인지 묻는다. 그때 저장하면 된다. (저장옵션도 있으니 유심히 보길)

색 깔도 사용자가 바꿀수 있다 view 메뉴에 coloring rules에 보면 색깔별로

내 용이 정의되어있다.


그 럼 다음 아이콘은 Option 역시 그리 어렵지 않다. 말그대로 사용하면서

옵 션을 줄 수 있다.  다음 그림을 보면 이해가 더 쉬울것이다.


PIC6cb3.jpg

위 의 화면에서 Option 을 클릭하면 위와같이 Capture Option 팝업이 뜨며

여 기에서는 eth0 , 1 ,2 등의 네트워크 장치에 대해서 불규칙적인 패킷을 대상으로 캡쳐할수있으며 패킷키기의 제한을 줄 수 있다.

그 리고 캡쳐를 할때 필터를 할수있으며 필터하는 옵션자체도 파일로 저장하여 사용할수 있다. Capture Filter 를 클릭하면 위화면 처럼 Capture Filter 팝업이 뜨면서 Filter 항목이 꼭 포토샵에서 Filter 종목을 고르듯 템플릿화 되어 제공되면 새로만들기 버튼을 눌러 자신만의 규칙을 만들수 있다. 그 외에도 Display Options, Stop Capture에서 자동으로 캡쳐를 중단할 기준을 셋팅할수도 있다.


다 음 아이콘인 Star는 Interfaces에서 기능설명을 할때 캡쳐시작부분이 있었다. 그부분을 바로 실행기켜준다. 클릭하면 아까 보았던 창이

다 시 보일것이다. (물론 한번 한상태면 현재상태를 저장하고 다시시작할건지 버리고 다시 시작할건지 물어본다.)

다 음 아이콘인 Stop와 Restart는 Start 를 하고 있는 상태에서만 활성화 되어있으면 기능은 캡쳐를 멈추고 다시시작하는 기능이다. 열기 아이콘은

캡 쳐한것을 파일로 자장할수있다고 하였다. 클릭하게 되면 파일브라우져가 떠서 캡쳐가 저장된 파일을 찾을수있도록 해준다.


기 본적인 기능들을 살펴보았다.

큰 아이콘이아닌 위의 메뉴로 살펴보면 좀더 섬세하고 많은 기능들이 있다.

좀 더 많이 프로토콜에 대해서 셋팅을 할수있고 I.O 그래프도 그릴수 있다.

운 영체제를 설치하면서 이런기능에 좋은 인터페이스의 프로그램이 기본으로

설 치된다는것에 다시한번 놀라면서 리뷰를 마친다.



참 고자료  : http://www.ethereal.com/docs/eug_html_chunked

TEST OS : CentOS 4.2 Final [Kernel 2.6.9-22 EL]

작 성자    : 수퍼유저코라아 서버관리팀 안재성(mymaster@superuser.co.kr)

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,041 명
  • 현재 강좌수 :  35,855 개
  • 현재 접속자 :  132 명