인프라/네트워크

Wireshark 단순하고 기본적인 사용법

EVO. 2023. 12. 30. 19:27

설치

https://www.wireshark.org/download.html 접속

 

본인 운영체제에 맞는 프로그램 설치 


 

Read me first.html을 열어 추가적으로 설치해야 될 부분을 확인

 

패킷을 capture 하는 것이 필요하기 때문에 ChmodBPF 패키지도 설치한다. 그리고나서 Wireshark 애플리케이션을 실행시킨다.


Capturing packets

 

 

capture 섹션에서 NIC들을 확인이 가능하고 네트워크에 연결된 부분을 확인할 수 있다. 현재 이더넷은 연결 안되있고 WIFI만 연결되있는 상태임을 확인할 수 있다.


이제 네트워크에 연결되있는 NIC 중 하나를 선택하여 더블 클릭하면 그 NIC에서 전송되고 있는 여러 패킷들을 확인할 수 있다.

하단에 몇개의 패킷을 캡처했고 얼마큼 놓치지 않고 캡처했는 지 비율도 나온다.

 

여기서 캡처하는 동안 특정 웹사이트에 접속해보고 싶고 충분한 시간이 지난 후 데이터가 충분하게 쌓였다고 생각되면 정지버튼을 누르고 이중 하나의 패킷에 들어가본다.


The big picture (conversations)

 

이제 pcap(패킷 캡처)한 파일을 확인하고 싶다면 다음 경로로 확인할 수 있다.

 

여기에 여러 통계들이 있지만 먼저 그중에 Conversations를 들어가 본다.

 

 

첫번째 대화(네트워킹)을 보면 A와 B 호스트가 총 47개의 패킷을 주고 받으며 20KB만큼의 데이터를 주고 받았다는 것이 확인된다. 

A에서 B로 21개의 패킷이 전송됐으며 B에서 A로는 26개의 패킷이 전송되었음을 확인할 수 있다.

 

이런것은 본인 PC IP주소와 연결된 라우터 주소를 쉽게 알 수 있기 때문에 만약 네트워크 상에 장애가 났을 경우 이렇게 분석을 하면서 어느 부분이 장애가 났는 지 쉽게 분석 할 수가 있다.

 

 

Capturing insecure data (HTTP)

 

앞에서 한 것들을 먼저 종료 시킨다 (File > Close > without saving file).

그리고나서 아까 했던 방식으로 들어오기 전에 다른 웹사이트 2개를 킬 준비를 한다. 본인은 네이버와 깃허브를 킬 준비를 했다.

그리고 멈춤 버튼을 누르면 다음과 같이 총 3218개의 패킷이 잡혔다.

 

 

이제 여기서 웹사이트가 로드될때 안전하지 않은 HTTP 프로토콜도 들어왔는 지 확인하고 싶으면 필터창에 HTTP를 입력해본다.

아무것도 없는 걸 확인할 수가 있다. 본인은 그래서 패킷을 보면 Transport Layer Security (TLS)로 패킷 내용을 확인할 수가 없는데 http로 들어온 패킷이 있다면 다음과 같이 contents가 확인이 가능하다.

 

출처: https://www.youtube.com/watch?v=qTaOZrDnMzQ&ab_channel=AnsonAlexander

 

 

 

 

그리고 이 HTTP Stream을 확인하면 다음과 같이 컴파일러에 의해 해독되어 모든게 보여진다.

 

기본적으로 해킹 방식은 가짜 HTTP 은행사이트를 만들어 누군가 그 가짜 은행사이트에 아이디와 비밀번호를 입력하고 로그인 하면 해커는 Wireshark를 통해 해당 패킷을 위와 같은 방식으로 분석해서 회원의 아이디와 비밀번호를 채갈 수가 있다. 

 

 

그리고 웹사이트로 응답받은 것만을 필터링해서 보고 싶으면 필터링 창에 tcp.port == 443 입력하면 된다. 

 

SYN 확인 방법(3-way handshake)

다음은 3-way handshake중 첫 번째 부분을 확인하는 필터링 명령어이다.

tcp.flags.syn==1 을 필터창에 입력하면 확인이 가능하다.

 

 

다음에 분석할 일 있으면 글 다시 올려야겠다. 지금은 패킷을 확인하는 것만으로 만족.

 

 

레퍼런스

https://www.youtube.com/watch?v=qTaOZrDnMzQ&ab_channel=AnsonAlexander