Wireshark 로 네트워크 트래픽 캡처 및 분석

WiresharkBeginner
지금 연습하기

소개

이 랩에서는 널리 사용되는 네트워크 프로토콜 분석기인 Wireshark 를 사용하여 네트워크 트래픽을 캡처하고 분석하는 방법을 배우게 됩니다. 네트워크 트래픽 분석은 사이버 보안에서 필수적이며, 잠재적인 위협을 식별하고 네트워크 활동을 모니터링하는 데 도움이 됩니다.

이 랩을 마치면 보안 사고를 조사하는 데 유용한 기술인 Wireshark 를 사용하여 네트워크 패킷을 캡처하고 분석하는 실질적인 경험을 얻게 될 것입니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 중급 레벨의 실험이며 완료율은 72%입니다.학습자들로부터 98%의 긍정적인 리뷰율을 받았습니다.

네트워크 트래픽 캡처

이 단계에서는 Wireshark 를 실행하고, 네트워크 트래픽을 캡처하여 분석을 위해 저장하는 방법을 배우겠습니다. 네트워크 패킷 캡처를 통해 네트워크 인터페이스를 통해 흐르는 모든 데이터를 확인하여 네트워크 통신을 파악할 수 있습니다.

네트워크 패킷이란 무엇인가?

시작하기 전에 네트워크 패킷이 무엇인지 이해해 봅시다. 패킷은 네트워크를 통해 전송되는 형식화된 데이터 단위입니다. 웹사이트 방문, 이메일 전송 또는 비디오 시청과 같은 인터넷에서 활동을 수행하면 데이터가 더 작은 청크 또는 "패킷"으로 분할되어 네트워크를 통해 목적지로 전송됩니다.

각 패킷에는 다음이 포함됩니다.

  • 송신 및 수신 주소 (편지의 발신자 및 수신자 주소와 유사)
  • 페이로드 (실제 데이터 또는 메시지 내용)
  • 메타데이터 (패킷 처리 방법에 대한 정보)

실제 적용: 사이버 보안에서 패킷 구조를 이해하는 것은 의심스러운 동작을 감지하는 데 필수적입니다. 예를 들어, 비정상적인 소스 주소 또는 대상 포트가 있는 패킷은 누군가 네트워크를 스캔하려는 시도를 나타낼 수 있습니다.

Wireshark 실행

먼저 터미널에서 다음 명령을 실행하여 Wireshark 를 엽니다.

wireshark

이 명령을 실행하면 Wireshark 애플리케이션이 열립니다. 사용 가능한 네트워크 인터페이스를 표시하는 Wireshark 기본 인터페이스가 표시됩니다.

출력은 다음과 유사합니다.

Wireshark Main Interface Screenshot

초보자를 위한 참고 사항: Wireshark 를 처음 사용하는 경우 표시되는 모든 옵션에 대해 걱정하지 마십시오. 기본적인 패킷 캡처 및 분석에 필요한 필수 기능에 집중할 것입니다.

네트워크 인터페이스 선택

패킷을 캡처하려면 모니터링할 네트워크 인터페이스를 선택해야 합니다. 각 인터페이스는 시스템의 다른 네트워크 연결을 나타냅니다.

Wireshark 기본 창에서 사용 가능한 네트워크 인터페이스 목록을 볼 수 있습니다. 각 인터페이스 옆에는 현재 활동을 보여주는 작은 그래프가 있습니다.

이 랩에서는 eth1 인터페이스를 두 번 클릭합니다. 이것은 일반적으로 주 이더넷 인터페이스입니다. eth1이 보이지 않으면 활동을 표시하는 인터페이스 (움직이는 그래프) 를 선택하십시오.

: 각 인터페이스 옆의 그래프는 해당 인터페이스의 네트워크 활동 수준을 보여줍니다. 더 많은 활동이 있는 인터페이스를 선택하면 더 흥미로운 캡처 결과가 생성됩니다.

무슨 일이 일어나고 있습니까: 인터페이스를 선택하면 Wireshark 에 어떤 "네트워크 파이프"를 청취할지 알려주는 것입니다. 다른 인터페이스는 다른 유형의 트래픽을 표시할 수 있습니다. 예를 들어 Wi-Fi 대 이더넷 연결.

패킷 캡처 시작

인터페이스를 선택하면 Wireshark 가 자동으로 패킷 캡처를 시작해야 합니다. 그렇지 않은 경우 도구 모음에서 파란색 상어 지느러미 아이콘을 클릭하거나 Ctrl+E를 눌러 수동으로 캡처를 시작할 수 있습니다.

캡처가 실행되면 기본 창에 실시간으로 패킷이 나타납니다.

Wireshark capturing network traffic

분석을 위해 충분한 네트워크 트래픽을 수집하려면 약 30-60 초 동안 캡처를 실행하십시오.

보안 참고 사항: Wireshark 는 선택한 네트워크 인터페이스를 통해 흐르는 모든 트래픽을 캡처합니다. 프로덕션 환경 또는 공유 네트워크에서 사용할 때는 민감한 정보를 캡처할 수 있으므로 이러한 모니터링을 수행할 수 있는 권한이 있는지 확인하십시오.

예상되는 사항: 캡처하는 동안 디스플레이에 다양한 색상의 선이 빠르게 나타나는 것을 볼 수 있습니다. 각 선은 패킷을 나타내며 색상은 다른 프로토콜 (TCP 의 경우 파란색, HTTP 의 경우 밝은 녹색) 을 나타냅니다.

패킷 목록 이해

캡처하는 동안 Wireshark 창의 기본 패킷 목록을 관찰하십시오. 각 줄은 여러 열의 정보가 있는 단일 패킷을 나타냅니다.

  • No. : 이 캡처 세션의 패킷 번호
  • Time: 패킷이 캡처된 시간
  • Source: 전송 장치의 IP 주소 또는 호스트 이름
  • Destination: 수신 장치의 IP 주소 또는 호스트 이름
  • Protocol: 사용된 네트워크 프로토콜 (TCP, UDP, HTTP 등)
  • Length: 패킷 크기 (바이트)
  • Info: 패킷에 대한 추가 세부 정보

Wireshark 는 다양한 프로토콜을 강조 표시하기 위해 다른 색상을 사용하여 다른 유형의 트래픽을 쉽게 식별할 수 있습니다.

심층 분석: 색상 코딩은 Wireshark 의 강력한 기능입니다. 예를 들어, 빨간색은 종종 오류를 나타내는 데 사용되고, 밝은 파란색은 TCP 트래픽, 밝은 녹색은 HTTP 트래픽을 나타냅니다. 이 시각적 힌트는 관심 있는 트래픽을 빠르게 식별하는 데 도움이 됩니다.

정렬 팁: 열 머리글을 클릭하여 패킷 목록을 정렬할 수 있습니다. 예를 들어 "Protocol" 머리글을 클릭하면 유사한 프로토콜이 함께 그룹화되어 특정 유형의 트래픽을 찾을 때 유용합니다.

캡처 중지

30-60 초 동안 캡처한 후 도구 모음에서 빨간색 사각형 아이콘을 클릭하거나 Ctrl+E를 다시 눌러 캡처를 중지합니다.

중지하는 이유?: Wireshark 는 무기한으로 패킷을 캡처할 수 있지만, 합리적인 기간 후에 중지하면 파일 크기를 관리하기 쉽고 분석이 용이합니다. 특정 조사의 경우 더 오랜 기간 동안 캡처를 실행할 수 있습니다.

캡처된 패킷 저장

이제 나중에 분석할 수 있도록 캡처된 네트워크 트래픽을 저장해 보겠습니다.

  1. Wireshark 창 상단의 메뉴에서 File을 클릭합니다.
  2. Save As를 선택합니다.
  3. /home/labex/project 디렉토리로 이동합니다.
  4. 파일 이름으로 capture.pcapng를 입력합니다.
  5. Save 버튼을 클릭합니다.

저장 대화 상자는 다음과 같습니다.

Save captured packets dialog in Wireshark

.pcapng 파일 형식은 패킷 캡처를 저장하기 위한 Wireshark 의 기본 형식입니다. 캡처된 패킷에 대한 모든 정보가 포함되어 있으며 추가 분석을 위해 Wireshark 에서 다시 열 수 있습니다.

확장된 지식: Wireshark 는 이전 .pcap 형식 및 가져오기/내보내기를 위한 다른 형식도 지원합니다. .pcapng 형식은 이전 .pcap 형식보다 여러 인터페이스 캡처 및 패킷 주석과 같은 더 많은 기능을 제공합니다.

이제 네트워크 트래픽을 성공적으로 캡처하여 분석을 위해 저장했습니다. 다음 단계에서는 이 캡처된 데이터를 분석하는 방법을 살펴보겠습니다.

Wireshark 인터페이스 이해

이제 네트워크 트래픽을 캡처했으므로 Wireshark 의 인터페이스를 사용하여 분석하는 방법을 배우겠습니다. 이 인터페이스를 이해하는 것은 효과적인 네트워크 트래픽 분석에 필수적입니다.

Wireshark 인터페이스 레이아웃

Wireshark 인터페이스는 세 개의 주요 창으로 나뉩니다.

  1. 패킷 목록 창 (상단): 캡처된 모든 패킷을 기본 정보와 함께 표시
  2. 패킷 세부 정보 창 (중간): 선택한 패킷에 대한 자세한 정보 표시
  3. 패킷 바이트 창 (하단): 선택한 패킷의 원시 데이터를 16 진수 및 ASCII 형식으로 표시

패킷을 자세히 검사하려면 패킷 목록 창에서 해당 패킷을 클릭하기만 하면 됩니다. 해당 패킷의 세부 정보가 하단 창에 나타납니다.

Wireshark Interface Layout Illustration

이 세 개의 창 레이아웃 디자인을 통해 높은 수준의 개요와 낮은 수준의 세부 정보를 모두 볼 수 있으며, 이는 포괄적인 네트워크 분석에 매우 중요합니다.

사용자 정의 팁: Wireshark 를 사용하면 인터페이스 레이아웃을 사용자 정의할 수 있습니다. 각 창 사이의 구분선을 드래그하여 크기를 조정하거나, 구분선을 마우스 오른쪽 버튼으로 클릭하고 "Hide"를 선택하여 창을 완전히 숨길 수 있습니다. 실수로 창을 숨긴 경우 메뉴에서 View > Panes 를 통해 복원할 수 있습니다.

Wireshark 인터페이스 탐색

패킷을 자세히 검사하려면 다음을 수행합니다.

  1. 패킷 목록 창에서 패킷을 클릭합니다.
  2. 해당 패킷의 세부 정보가 하단 창에 나타납니다.
  3. 패킷 세부 정보 창을 탐색하여 패킷에 대한 구조화된 정보를 봅니다.
  4. 패킷 바이트 창을 보고 패킷의 원시 16 진수 및 ASCII 표현을 이해합니다.

실습 팁: 패킷 목록 창에서 다른 패킷을 선택하고 다른 두 창이 선택한 패킷에 대한 정보를 어떻게 업데이트하는지 관찰해 보십시오. 다양한 프로토콜 유형의 패킷을 시도하여 포함된 다양한 정보를 확인하십시오.

패킷 세부 정보 창 이해

패킷 세부 정보 창은 네트워크 프로토콜 스택을 반영하는 계층화된 패킷 정보를 표시합니다.

  1. 프레임 계층: 패킷 캡처에 대한 물리적 정보 (캡처 시간, 프레임 길이)
  2. 이더넷 계층: MAC 주소 및 기타 링크 계층 정보 포함
  3. 인터넷 프로토콜 (IP) 계층: IP 주소 정보 포함
  4. 전송 계층 (TCP/UDP): 포트 번호 및 세션 정보 포함
  5. 응용 계층 (HTTP, DNS 등): 응용 프로그램별 데이터 포함

배경 지식: 이 계층화된 반사는 네트워크 통신의 표준 모델인 OSI (Open Systems Interconnection) 모델 또는 TCP/IP 모델을 따릅니다. 이러한 계층을 이해하면 네트워크 통신이 어떻게 작동하는지 이해하는 데 도움이 됩니다.

시각화: 이러한 계층을 봉투 안의 봉투처럼 생각하십시오. 가장 바깥쪽 계층 (프레임) 에는 모든 것이 포함되어 있습니다. 그 안에는 이더넷 계층, IP 계층 등이 있습니다. 각 계층은 데이터가 올바르게 목적지에 도달하도록 자체 주소 지정 및 제어 정보를 추가합니다.

패킷 세부 정보 확인

특정 패킷을 심층적으로 이해하려면 다음을 수행합니다.

  1. 패킷 목록 창에서 패킷을 클릭합니다.
  2. 패킷 세부 정보 창에서 각 필드 옆의 화살표 (►) 를 클릭하여 섹션을 확장합니다.
  3. 패킷 세부 정보 창에서 다른 필드를 선택하면 해당 바이트가 패킷 바이트 창에 강조 표시됩니다.

이를 통해 낮은 수준의 이더넷 프레임에서 높은 수준의 응용 프로그램 데이터에 이르기까지 패킷의 모든 측면을 검사할 수 있습니다.

예를 들어, HTTP 패킷을 선택하고 "Hypertext Transfer Protocol" 섹션을 확장하면 HTTP 요청 또는 응답의 세부 정보를 볼 수 있습니다.

  • 요청 메서드 (GET, POST 등)
  • 헤더 정보 (User-Agent, Content-Type 등)
  • 상태 코드 및 응답 메시지

실습: HTTP 패킷을 찾아 세부 정보를 확장해 보십시오. 요청 URL, 상태 코드 또는 기타 흥미로운 HTTP 헤더 정보를 확인하십시오. HTTP 패킷을 찾을 수 없는 경우 네트워크에서 웹사이트를 열어 HTTP 트래픽을 생성해 보십시오.

문제 해결 팁: 네트워크 문제를 조사할 때 빨간색으로 강조 표시되거나 "error", "warning" 또는 "malformed"와 같은 단어가 포함된 필드에 특별한 주의를 기울이십시오. 이러한 필드는 종종 네트워크 문제를 일으킬 수 있는 잠재적인 문제를 나타냅니다.

Wireshark 의 탐색 도구 사용

Wireshark 는 캡처를 더 효과적으로 탐색하는 데 도움이 되는 몇 가지 유용한 탐색 도구를 제공합니다.

  • 필터 도구 모음: 주 창 상단에 위치하며 표시된 패킷을 필터링할 수 있습니다.
  • 확대/축소 도구: 시간 축 보기를 확대하거나 축소할 수 있습니다.
  • 색상 코딩: 다른 유형의 패킷은 다른 색상을 사용하여 시각적으로 쉽게 식별할 수 있습니다.
  • 찾기 기능 (Ctrl+F): 패킷 내용 내에서 특정 정보를 검색할 수 있습니다.

시간 표시 옵션: 기본적으로 Wireshark 는 캡처 시작 시간을 기준으로 시간을 표시합니다. 시간 열을 마우스 오른쪽 버튼으로 클릭하고 절대 시간 또는 날짜 및 시간과 같은 다른 "시간 표시 형식"을 선택하여 이 설정을 변경할 수 있습니다.

탐색 바로 가기: Ctrl+G 를 눌러 특정 패킷 번호로 이동합니다. 이는 대규모 캡처를 분석하거나 문서에서 특정 패킷에 대한 참조를 따를 때 유용합니다.

이러한 도구에 익숙해지면 네트워크 캡처를 보다 효과적으로 탐색하고 분석할 수 있습니다.

디스플레이 필터 사용법

디스플레이 필터는 Wireshark 의 가장 강력한 기능 중 하나로, 특정 유형의 트래픽에 집중할 수 있습니다. 이를 통해 관심 있는 패킷만 표시하여 분석을 더 쉽게 관리할 수 있습니다.

필터가 중요한 이유

캡처에 수천 개 또는 수백만 개의 패킷이 있다고 상상해 보십시오. 이러한 방대한 양의 데이터에서 특정 정보를 찾는 것은 매우 어려울 수 있습니다. 디스플레이 필터를 사용하면 분석과 관련된 패킷으로 "검색 범위를 좁힐" 수 있습니다.

실제 예시: 웹 애플리케이션 문제를 해결할 때 특정 서버로의 HTTP 트래픽에만 관심이 있을 수 있습니다. 필터를 사용하면 관련 없는 네트워크 트래픽을 무시하고 해당 패킷에 즉시 집중할 수 있습니다.

기본 필터 적용

필터를 적용하려면 창 상단의 필터 막대에 입력하십시오. 예를 들어, TCP 트래픽만 표시하려면 다음을 입력합니다.

tcp

Enter 키를 누르거나 파란색 화살표 버튼을 클릭하여 필터를 적용합니다.

결과는 TCP 패킷만 표시합니다.

Result of filtering TCP packets

다음은 시도해 볼 수 있는 몇 가지 다른 유용한 필터입니다.

  • http: HTTP 트래픽만 표시
  • dns: DNS 트래픽만 표시
  • ip.addr == 8.8.8.8: IP 주소 8.8.8.8 에서 또는 IP 주소 8.8.8.8 로의 트래픽 표시
  • tcp.port == 443: HTTPS 트래픽만 표시

필터를 지우고 모든 패킷을 다시 보려면 필터 막대 옆의 "X" 버튼을 클릭하십시오.

필터 구문 도움말: Wireshark 의 필터 막대에는 내장된 지원 기능이 있습니다. 입력하는 동안 구문이 유효하면 녹색으로 강조 표시되고 오류가 있으면 빨간색으로 강조 표시됩니다. 자동 완성 제안을 위해 Ctrl+Space 를 누를 수도 있습니다.

기록 팁: Wireshark 는 이전에 사용한 필터를 기억합니다. 필터 막대 오른쪽에 있는 아래쪽 화살표를 클릭하여 필터 기록을 확인하십시오.

고급 필터링 기술

기본 필터 외에도 Wireshark 는 더 복잡한 필터 표현식을 지원합니다.

  1. 비교 연산자: 같음 (==) 뿐만 아니라

    • tcp.len > 100: 100 바이트보다 큰 TCP 패킷
    • frame.time_delta <= 0.1: 이전 패킷과의 시간 차이가 0.1 초 이하인 패킷
Example of comparison operators in Wireshark
  1. 복합 조건:

    • http && !(tcp.port == 80): 표준 HTTP 포트가 아닌 HTTP 트래픽
    • (ip.src == 192.168.1.100 && ip.dst == 8.8.8.8) || (ip.src == 8.8.8.8 && ip.dst == 192.168.1.100): 특정 장치와 DNS 서버 간의 통신
  2. 포함 및 일치:

    • http contains "password": 문자열 "password"를 포함하는 HTTP 트래픽
    • tcp matches "GET [^ ]+ HTTP": GET 요청에 대한 정규 표현식과 일치하는 TCP 패킷

효율성 팁: 필터 표현식을 마스터하면 네트워크 트래픽을 분석할 때 효율성을 크게 향상시킬 수 있습니다. 자주 사용되는 필터 표현식을 저장하여 빠르게 적용하는 것을 고려하십시오.

표현식 빌더 사용

정확한 필터 구문에 대해 확신이 없는 경우 Wireshark 는 표현식 빌더를 제공합니다.

  1. 필터 막대 옆의 "Expression..." 버튼을 클릭합니다.
  2. 필드 이름 목록을 탐색하거나 입력을 시작하여 검색합니다.
  3. 필드를 선택하고 관계 (==, >, contains 등) 를 선택하고 값을 입력합니다.
  4. "OK"를 클릭하여 필터를 적용합니다.

이를 통해 정확한 구문을 암기하지 않고도 복잡한 필터를 만들 수 있습니다.

색상 규칙 사용

Wireshark 는 색상을 사용하여 다양한 유형의 트래픽을 빠르게 식별하는 데 도움을 줍니다. 색상 규칙을 보려면 다음을 수행합니다.

  1. 메뉴에서 View > Coloring Rules로 이동합니다.
  2. 현재 색상 규칙을 표시하는 대화 상자가 열립니다.
Coloring Rules Dialog in Wireshark

색상 규칙은 위에서 아래로 순서대로 적용됩니다. 패킷과 일치하는 첫 번째 규칙이 해당 색상을 결정합니다. 규칙 옆의 상자를 선택하거나 선택 해제하여 규칙을 활성화하거나 비활성화할 수 있습니다.

색상 규칙 대화 상자를 보고 나면 닫습니다.

사용자 지정 규칙: 고유한 색상 규칙을 만드는 것은 특정 유형의 분석을 자주 수행하는 사람들에게 매우 유용합니다. 예를 들어, 회사 내부 서버로의 트래픽 또는 관심 있는 특정 응용 프로그램에 대한 특수 색상을 만들 수 있습니다.

색상 vs. 필터: 색상 규칙은 패킷을 강조 표시하지만 모든 것을 표시하는 반면, 필터는 일치하지 않는 패킷을 실제로 보기에서 제거한다는 점을 기억하십시오. 종종 개요를 얻기 위해 색상을 사용한 다음 특정 문제에 집중하기 위해 필터를 적용하는 것이 유용합니다.

TCP 스트림 따라가기

Wireshark 에서 가장 강력한 분석 기능 중 하나는 TCP 스트림을 따라가는 기능입니다. TCP 스트림은 두 호스트 간의 전체 대화를 나타냅니다.

TCP 스트림이란 무엇인가?

TCP (Transmission Control Protocol) 는 인터넷에서 사용되는 가장 일반적인 통신 프로토콜 중 하나입니다. 이는 안정적이고 순서가 지정된 데이터 전송을 제공합니다. TCP 스트림은 단일 TCP 연결에서 교환된 모든 패킷의 모음으로, 두 엔드포인트 간의 완전한 대화를 나타냅니다.

예를 들어, 브라우저가 웹사이트에 연결할 때 TCP 연결을 설정하고, 해당 연결을 통해 요청을 보내고 응답을 받습니다. 이 전체 교환이 TCP 스트림을 구성합니다.

중요한 이유: 네트워크 통신에는 함께 볼 때만 의미가 있는 많은 개별 패킷이 포함되는 경우가 많습니다. TCP 스트림 기능은 이러한 조각난 통신을 일관된 대화로 재구성하여 응용 프로그램 수준에서 무슨 일이 일어나고 있는지 훨씬 쉽게 이해할 수 있도록 합니다.

TCP 스트림 따라가기

TCP 스트림을 따라가려면 다음을 수행합니다.

  1. 캡처에서 TCP 패킷을 찾습니다 (필요한 경우 tcp 필터를 사용할 수 있습니다).
  2. 패킷을 마우스 오른쪽 버튼으로 클릭합니다.
  3. Follow > TCP Stream을 선택합니다.
Menu for following TCP Stream

전체 대화를 보여주는 새 창이 열립니다. 빨간색 텍스트는 클라이언트에서 서버로 전송된 데이터를 나타내고, 파란색 텍스트는 서버에서 클라이언트로 전송된 데이터를 나타냅니다.

색상 이해: 빨간색 텍스트 (클라이언트에서 서버로) 에는 종종 요청, 명령 또는 업로드된 데이터가 포함됩니다. 파란색 텍스트 (서버에서 클라이언트로) 에는 일반적으로 응답, 다운로드된 콘텐츠 또는 상태 메시지가 포함됩니다. 이 색상 코딩은 통신의 방향을 빠르게 이해하는 데 도움이 됩니다.

TCP 스트림 내용 분석

TCP 스트림 창은 분석에 유용한 몇 가지 옵션을 제공합니다.

  1. 콘텐츠 표시 옵션 (오른쪽 상단):

    • ASCII: HTTP 및 기타 텍스트 기반 프로토콜에 이상적인 텍스트로 콘텐츠를 표시합니다.
    • Hex Dump: 16 진수 및 ASCII 로 콘텐츠를 표시하며, 바이너리 데이터를 포함하는 스트림에 유용합니다.
    • C Arrays: 데이터를 C 프로그래밍 언어 배열로 표시합니다.
    • Raw: 원시 데이터만 표시합니다.

    데이터를 더 읽기 쉬운 형식으로 보려면 YAML 형식을 사용해 보겠습니다.

    TCP Stream Window Screenshot
  2. 스트림 탐색 (드롭다운 메뉴):

    • 캡처에 여러 TCP 스트림이 포함된 경우 이 메뉴를 사용하여 스트림 간을 탐색할 수 있습니다.
    • 스트림 번호는 0 부터 시작하여 발견된 순서대로 증가합니다.
  3. 찾기 기능:

    • Ctrl+F 를 사용하여 스트림 내용 내에서 검색합니다.
    • 이는 대규모 스트림에서 특정 문자열 또는 패턴을 찾는 데 도움이 됩니다.

분석 팁: 다른 표시 옵션은 다른 통찰력을 드러낼 수 있습니다. 예를 들어, "Hex Dump" 보기로 전환하여 왼쪽에 16 진수 값과 오른쪽에 ASCII 표현을 모두 확인하십시오. 이는 텍스트와 바이너리 데이터를 혼합하는 프로토콜을 분석할 때 유용합니다.

TCP 스트림 저장

TCP 스트림을 저장하는 것은 문서화 또는 오프라인 분석에 유용합니다.

  1. TCP 스트림 창에서 Save As 버튼을 클릭합니다.
  2. /home/labex/project 디렉토리로 이동합니다.
  3. 파일 이름으로 tcp_stream.txt를 입력합니다.
  4. Save를 클릭합니다.
Save TCP Stream Dialog Screenshot

이 저장된 파일에는 전체 TCP 대화의 텍스트가 포함되어 있으며 나중에 검토하거나 다른 사람과 공유할 수 있습니다.

흥미로운 스트림 찾기

실제 시나리오에서 캡처에는 종종 수백 또는 수천 개의 서로 다른 TCP 스트림이 포함됩니다. 흥미로운 스트림을 찾으려면 다음을 수행합니다.

  1. 디스플레이 필터를 사용하여 범위를 좁힙니다 (예: http 또는 tcp.port == 3001).
  2. 주요 패킷 (예: 연결 시작 또는 특정 콘텐츠를 포함하는 패킷) 을 찾습니다.
  3. 해당 패킷에서 "Follow TCP Stream" 기능을 사용합니다.

식별한 후 특정 스트림을 필터링할 수도 있습니다. TCP 스트림 창에서 "Stream index" 값 (예: "TCP Stream: 5") 을 확인합니다. 필터 tcp.stream eq 5를 사용하여 해당 특정 스트림의 모든 패킷만 표시할 수 있습니다.

조사 전략: 잠재적인 보안 사고를 분석할 때, 특이한 포트 번호, 예상치 못한 IP 주소로의 연결 또는 특이한 시간에 발생하는 통신에 주의하십시오. 이러한 스트림을 따라가면 종종 악의적인 활동이 드러납니다.

TCP 통신 패턴 이해

여러 TCP 스트림을 검사하면서 TCP 통신의 패턴을 인식하기 시작할 것입니다.

  1. 3 방향 핸드셰이크: 연결을 시작하는 SYN, SYN-ACK, ACK 시퀀스
  2. 데이터 전송: 주요 요청 - 응답 교환
  3. 4 방향 종료: 연결을 종료하는 FIN 및 ACK 시퀀스

이러한 패턴을 검사하여 연결 설정 실패 또는 조기 종료와 같은 통신 문제가 발생하는 위치를 확인할 수 있습니다.

통계 분석 도구

Wireshark 는 캡처를 분석하는 데 도움이 되는 여러 통계 도구를 제공합니다. 이러한 도구는 전반적인 네트워크 패턴에 대한 통찰력을 제공하고 이상 활동을 식별하는 데 도움이 될 수 있습니다.

통계 분석이 중요한 이유

패킷별 분석은 심층적인 조사를 위해 필수적이지만, 통계 분석은 다음을 수행하는 데 도움이 됩니다.

  • 네트워크에서 주요 활동 패턴 식별
  • 이상 트래픽 또는 잠재적 문제 발견
  • 리소스 사용량 및 네트워크 성능 이해
  • 가장 활성적인 호스트 및 서비스 식별

전체적인 그림: 패킷 분석을 개별 나무를 검사하는 것으로 생각하고, 통계 분석은 전체 숲의 모습을 보여줍니다. 완전한 네트워크 분석에는 두 가지 관점이 모두 필요합니다.

통계 도구 사용

이러한 도구에 액세스하려면 Statistics 메뉴를 탐색하고 다음 옵션을 시도하십시오.

프로토콜 계층 구조

프로토콜 계층 구조는 캡처에서 프로토콜의 분포를 보여줍니다.

  1. Statistics > Protocol Hierarchy를 클릭합니다.
  2. 감지된 모든 프로토콜의 트리 보기를 보여주는 창이 열립니다.
  3. 백분율은 각 프로토콜이 트래픽의 얼마나 많은 부분을 사용하는지 나타냅니다.
Protocol Hierarchy Example in Wireshark

이 보기를 사용하면 다음을 빠르게 식별할 수 있습니다.

  • 가장 많은 대역폭을 소비하는 프로토콜
  • 예상치 못한 또는 잠재적으로 원치 않는 네트워크 트래픽
  • 네트워크 트래픽의 전반적인 구성

분석 팁: 특이한 프로토콜 분포는 네트워크 문제 또는 보안 문제를 나타낼 수 있습니다. 예를 들어, 비정상적으로 많은 DNS 트래픽은 DNS 터널링 활동 또는 맬웨어 통신을 시사할 수 있습니다.

대화

대화 통계는 엔드포인트 간의 모든 연결을 나열합니다.

  1. Statistics > Conversations를 클릭합니다.
  2. 검사하려는 프로토콜 수준 (Ethernet, IPv4, TCP 등) 에 대한 탭을 선택합니다.
  3. 목록은 어떤 호스트가 통신하고 얼마나 많은 데이터를 교환했는지 보여줍니다.
Conversations Statistics Example

이 도구는 특히 다음에 유용합니다.

  • 가장 많은 데이터를 교환하는 장치 쌍 식별
  • 장치 간의 예상치 못한 통신 발견
  • 잠재적인 무단 연결 찾기

대화형 기능: 대화를 마우스 오른쪽 버튼으로 클릭하고 "Apply as Filter"를 선택하여 해당 대화에 속하는 패킷만 표시할 수 있습니다. 이를 통해 특정 통신을 쉽게 조사할 수 있습니다.

엔드포인트

엔드포인트 통계는 캡처의 모든 장치를 나열합니다.

  1. Statistics > Endpoints를 클릭합니다.
  2. 검사하려는 프로토콜 수준에 대한 탭을 선택합니다.
  3. 목록은 트래픽에 관련된 모든 장치를 보여줍니다.
Endpoints Statistics in Wireshark

이 도구를 사용하여 다음을 수행합니다.

  • 네트워크에서 가장 활성적인 장치 식별
  • 알 수 없거나 예상치 못한 장치 찾기
  • IP 주소 또는 MAC 주소별로 트래픽 패턴 분석

네트워크 매핑: 엔드포인트 도구는 본질적으로 네트워크에서 통신하는 모든 장치의 맵을 만듭니다. 보안 컨텍스트에서 이는 불량 장치 또는 무단 시스템을 식별하는 데 도움이 됩니다.

I/O 그래프

I/O 그래프는 시간 경과에 따른 트래픽 볼륨을 표시합니다.

  1. Statistics > I/O Graph를 클릭합니다.
  2. 그래프는 캡처 기간 동안 트래픽 볼륨이 어떻게 변하는지 보여줍니다.
  3. 다른 유형의 트래픽을 비교하기 위해 다른 필터로 여러 그래프를 추가할 수 있습니다.
I/O Graph Traffic Volume Visual

이 시각화는 다음에 매우 적합합니다.

  • 트래픽 급증 또는 이상 패턴 식별
  • 네트워크 이벤트를 시간과 연관시키기
  • 동일한 기간 동안 다른 유형의 트래픽 비교

고급 사용법: "+" 버튼을 클릭하여 특정 디스플레이 필터가 있는 추가 그래프 선을 추가합니다. 예를 들어, 모든 트래픽을 표시하는 한 줄, HTTP 트래픽만 표시하는 다른 줄, DNS 트래픽을 표시하는 세 번째 줄을 가질 수 있습니다. 이를 통해 서로 다른 프로토콜 간의 관계를 쉽게 확인할 수 있습니다.

통계 분석의 실제 적용

이러한 통계 도구는 다음과 같은 시나리오에서 특히 유용합니다.

  • 네트워크 문제 해결: 과도한 대역폭을 소비하는 응용 프로그램 또는 장치 식별
  • 보안 모니터링: 침입 또는 맬웨어를 나타낼 수 있는 이상 트래픽 패턴 감지
  • 네트워크 기준선: 향후 이상 현상을 식별하는 데 도움이 되도록 정상적인 트래픽 패턴 설정
  • 성능 최적화: 네트워크 사용량을 지배하는 프로토콜 또는 연결 결정

고급 통계 기능

Wireshark 에 익숙해지면 다음과 같은 추가 통계 기능을 탐색하십시오.

  • Service Response Time: 서비스가 요청에 응답하는 데 걸리는 시간을 측정합니다.
  • HTTP Statistics: HTTP 트래픽 및 성능에 대한 자세한 분석을 제공합니다.
  • DNS Statistics: DNS 쿼리 및 응답 패턴을 보여줍니다.
  • Expert Information: Wireshark 에서 감지한 잠재적 문제 또는 이상 현상을 강조 표시합니다.

이러한 고급 통계는 특수 분석 작업에 대한 더 깊은 통찰력을 제공합니다.

축하합니다! 이제 Wireshark 로 네트워크 트래픽을 분석하는 기본 사항을 배웠습니다. 이러한 기술은 보다 고급 네트워크 분석 및 사이버 보안 조사를 위한 기반을 형성합니다.

요약

이 랩에서는 Wireshark 를 사용하여 네트워크 트래픽을 캡처하고 분석하는 데 필요한 필수 기술을 배웠습니다. 먼저 Wireshark 를 설치하고 패킷 캡처에 필요한 권한을 설정했습니다. 그런 다음 시스템에서 실시간 네트워크 트래픽을 캡처하여 추가 분석을 위해 저장했습니다. 마지막으로, 디스플레이 필터, 색상 규칙, TCP 스트림 따라가기와 같은 다양한 분석 기술을 탐구했습니다.

습득한 기술은 네트워크 문제 해결 및 사이버 보안 조사에 기본입니다. 네트워크 트래픽 분석을 통해 보안 위협을 식별하고, 네트워크 및 응용 프로그램 문제를 해결하고, 프로토콜 기능을 자세히 이해하고, 네트워크 성능을 모니터링할 수 있습니다. 사이버 보안 여정에서 발전함에 따라 이러한 기본 사항을 기반으로 맬웨어 탐지, 침입 탐지 및 네트워크 포렌식을 포함한 보다 고급 패킷 분석 기술을 개발할 수 있습니다.