1. Wireshark (와이어샤크)
ㅇ 네트워크 트래픽 분석용 툴
ㅇ 네트워크 분석 도구 : 850개 이상의 프로토콜 지원, 실시간 트래픽 분석 가능
ㅇ 사용자 친화적 인터페이스 : 비교적 간단하고 직관적인 사용법 제공
ㅇ 오픈 소스 : GPL 라이센스 ☞ 오픈 소스 라이선스 참조
- 최신 업데이트가 잘 이뤄짐
ㅇ 다양한 플랫폼 지원 : Windows, Linux, macOS 등에서 사용 가능
2. 기능 구분
ㅇ 패킷 캡처 (capture)
- 네트워크 트래픽을 실시간 패킷 캡처, 캡처 파일 저장, 출력 가능 등
- 다중 인터페이스를 동시 캡처도 가능
ㅇ 필터링 (filtering) : 원하는 것 만을 드러내 보이기 위함
- 캡처 필터 (capture filter) : 캡처 시 필요한 트래픽만 선택적으로 저장
- 디스플레이 필터 (display filter) : 화면에 보여주는 것에 만 필터 적용됨
- 컬러링 규칙 : 패킷 구분을 위한 색상 코딩 지원
ㅇ 분석기 (dissector) : 패킷 분석 기능
- 패킷 내 프로토콜들을 파싱하고 디코딩하여, 화면에 세부 정보 제공
- 알려진 프로토콜에 대해, 비 순서적으로 수신된 전체 스트림을 재조립, 보기쉽게 표시
ㅇ 기타 기능
- 패킷 캡처 데이터를 열거나, 데이터 변환 및 저장 가능
. 타 분석툴에 의해 저장된 것도 오픈 가능
- 다양한 통계 생성 : 프로토콜별 사용량, 대역폭 등
- 흐름 분석 : TCP/UDP 스트림 추적
- 전문가 시스템 : 네트워크 문제 자동 감지
- VoIP 분석 : 음성 통화 품질 분석
3. 화면 구성
ㅇ 메뉴 바 (main menu)
- File, Edit, View, Go, Capture, Analyzer, Statisticsm, Telephony, Wireless, Tools, Help
. File : 캡처 파일 열기,합침,닫기 등
.. (Open, Save, Export Packet Dissections, Export Specified Packets, Close, Quit)
. Edit : 편집 및 설정 관련 기능
.. (Find Packet, Preferences, Configuration Profiles, Set/Unset Time Reference)
ㅇ 메인 툴 바 (main toolbar)
- 자주 사용되는 툴 바 모음
ㅇ 필터 툴 바 (디스플레이 필터)
ㅇ 패킷 목록 창 (packet list pane)
- 패킷별 타임라인 (발신지,목적지 ip 주소 등 간단한 요약 정보)
. No : 패킷 일련번호
. Time : 패킷 캡처 시각
. Source : 패킷의 출발지
. Destination : 패킷의 목적지
. Protocol : 프로토콜 명칭
. Length : 패킷 크기
. info : 최상위 계층의 정보
ㅇ 패킷 세부 사항 창 (packet details pane)
- 하위 트리 섹션 (펼쳐볼 수 있음)
- OSI 계층별로 프로토콜들을 구분하고, 분석한 내용
ㅇ 패킷 바이트 창 (packet bytes pane)
- 패킷의 원시 형태를 보여줌
ㅇ 상태 바 (statusbar)
- 현재 프로그램 상태, 캡처된 데이터 등
4. 캡처 및 필터링
ㅇ 패킷 캡처 드라이버 구동
- 운영체제 제공 소켓을 경유 않고, 직접 패킷 캡처 가능토록 하는 드라이버
- 와이어샤크 보안성 강화를 위해, 관리자 권한(NPF 동작)과 사용자 권한을 구분 필요
. 사용자 권한일 때, 와이어샤크 자체로 만 동작시키며,
. 관리자 권한일 때, NPF(NetGroup Packet Filter Driver) 만 동작시킴이 적절
- (Windows) (구동) net start npf, (종료) net stop npf
* 패킷 캡처 드라이버
. WinPcap, Npcap (윈도우즈용), libpcap (유닉스/리눅스용)
ㅇ 캡처 필터
- 기본 구문 ☞ Berkley Packet Filter (BPF) 구문 참조
. 例) tcp port 80 (HTTP 트래픽만 캡처)
5. 커맨드라인 툴
※ GUI 메뉴 형태가 아닌 CLI 형태로,
- 자동화된 분석, 대량 데이터 처리, 서버 환경 등에서 유용
ㅇ tshark.exe : Wireshark의 CLI 버전으로, GUI 없이 네트워크 패킷을 분석
ㅇ editcap.exe : 캡처 파일의 변환, 수정, 패킷 분리 등
ㅇ mergecap.exe : 여러 캡처 파일을 병합
ㅇ text2pcap.exe : 텍스트 파일 데이터를 캡처 파일 형식으로 변환
ㅇ capinfos.exe : 캡처 파일에 대한 통계 및 메타데이터 정보 출력
ㅇ rawshark.exe : 기본 레벨의 패킷 디코딩
ㅇ recordercap.exe : TShark와 유사하지만, 캡처 전용으로 사용
6. 활용 분야
ㅇ 네트워크 트러블슈팅
ㅇ 보안 분석 및 포렌식
ㅇ 프로토콜 학습 및 연구
ㅇ 애플리케이션 개발 디버깅 등