본문 바로가기

Learning/└◆Network Hacking

Wireshark 패킷 분석 실습

 

 

[실습1] 패킷 분석을 통해 어떤 프로토콜 패킷인지 확인해 보자.(작업 시간: 5)

 

분석 파일 : lawcode.txt

 

어떤 종류의 패킷인가? ping test

어떤 프로토콜 패킷인가? ICMP

 

이더넷 헤더 부분:

목적지 맥 어드레스 소스 맥어드레스 타입 IP

0000 00 50 56 e5 d1 c2 00 0c 29 50 9a f6 08 00 45 00 .PV.....)P....E.

0010 00 54 de 49 40 00 40 01 aa 05 c0 a8 0a 32 a8 7e .T.I@.@......2.~

0020 3f 01 08 00 13 b9 2c e9 00 05 0b 2f 4c 56 6f d0 ?.....,..../LVo.

0030 05 00 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 ................

0040 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 .......... !"#$%

0050 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 &'()*+,-./012345

0060 36 37 67

 

 

 

 

 

[실습2] 공격 패킷에 대해서 분석하여 보자.(작업 시간 10)

 

분석파일 : attack1.pcap

 

----------------------------------------------

출발지 IP : 192.168.3.181 ~

출발지 Port : 1081, 1080

 

목적지 IP : 192.168.1.15

목적지 Port : 80

----------------------------------------------

출발지 IP는 계속 변화하는가 항상 일정한가? -> 출발지 IP는 계속 변화한다.

출발지 Port는 계속 변화하는가 항상 일정한가? -> 출발지 IP는 계속 변화한다.

목적지 IP는 계속 변화하는가 항상 일정한가? -> 목적지 IP192.168.1.15로 항상 일정하다.

목적지 Port는 계속 변화하는가 항상 일정한가? -> 목적지 Port80으로 항상 일정하다.

 

공격 패킷의 특성은?

-> 하나의 목적지에 1080번과 1081번 포트로 IP주소를 변화하면서 계속 SYN패킷을 보내는 것을 볼 수 있다.

결론적으로 어떤 공격이라고 판단할 수 있는가?

-> Syn flood attack으로 판단할 수 있다.

TCP 연결에서의 3 way handshake를 이용하여 연결 요청을 무수히 반복함으로써

Target PC에 대한 TCP connection 수를 꽉 채우는 것으로 TCP 통신을 마비시키는 공격

이런 패킷을 방어 하는 방법은?

-> 1. 백로그 큐를 늘려준다.

2. syncookies 기능을 켠다.

3. 기타 시스템의 네트워크 설정을 최적화한다.

(참고) http://agz.es/Network/TCP%20SYN_Flooding.pdf

 

 

 

 

 

[실습3] 공격 패킷에 대해서 분석하여 보자.(작업시간 10)

 

분석파일 : attacker2.pcap

 

-> 3-Way Handshaking이 일어난 것을 보아 SYN을 보낸 172.16.0.131이 출발지IP인 것을 알 수 있다.

----------------------------------------------

출발지 IP : 172.16.0.131

출발지 Port : 43712

 

목적지 IP : 198.2.192.204

목적지 Port : 22

----------------------------------------------

출발지 IP는 계속 변화하는가 항상 일정한가? -> 출발지 IP172.16.0.131로 항상 일정하다.

출발지 Port는 계속 변화하는가 항상 일정한가? -> 출발지 Port43712로 항상 일정하다.

목적지 IP는 계속 변화하는가 항상 일정한가? -> 목적지 IP198.2.192.204로 항상 일정하다.

목적지 Port는 계속 변화하는가 항상 일정한가? -> 목적지 Port22번으로 항상 일정하다.

 

공격 패킷의 특성은?

-> 3-Way Handshaking이 일어난 후 출발지IP에서 계속 ACK를 보내는 것을 볼 수 있다.

결론적으로 어떤 공격이라고 판단할 수 있는가?

-> TCP ACK Flooding

다량의 TCP ACK Flooding이 발생하면서 Network Performance에 악영향을 끼쳐 시스템이 정지한다.

이런 패킷을 방어 하는 방법은?

1. 관리자는 공격한 클라이언트를 집중적으로 관찰하여 접근을 통제한다.

2. 방화벽과 라우터에서 유입되는 패킷을 필터링한다.

 

 

 

 

 

[실습4] 공격 패킷에 대해서 분석하여 보자.(작업시간 10)

 

분석파일 : attacker3.pcap

 

----------------------------------------------

출발지 IP : 192.168.10.1

출발지 Port : 137

 

목적지 IP : 192.168.10.255

목적지 Port : 137

----------------------------------------------

출발지 IP는 계속 변화하는가 항상 일정한가? -> 출발지 IP192.168.10.1로 항상 일정하다.

목적지 IP는 계속 변화하는가 항상 일정한가?

-> 목적지 IP192.168.10.255로 항상 일정하다.

출발지 Port는 계속 변화하는가 항상 일정한가?

목적지 Port는 계속 변화하는가 항상 일정한가?

-> NBNS프로토콜에서 출발지 Port와 목적지 Port137로 항상 일정하다.

-> LLMNR프로토콜에서 출발지 Port와 목적지 Port는 계속 변화한다.

 

공격 패킷의 특성은?

공격자가 192.168.20.50 으로 생각

Target192.168.20.20180번 포트에 UDP프로토콜로 패킷을 보냄

결론적으로 어떤 공격이라고 판단할 수 있는가?

TargetHTTP 포트(Welknown Port) 에 고의적으로 UDP패킷을 보냄

Target에서 ICMP를 만들어 주는 데 리소스를 자꾸 할당시킴

이런 패킷을 방어 하는 방법은?

Target에서 ICMP패킷을 만들어주지 않고 무시하도록 함

 

 

 

 

 

[실습5] 공격 패킷에 대해서 분석하여 보자.(작업시간 30)

 

분석파일 : attacker4.pcap

 

----------------------------------------------

출발지 IP : 192.168.20.50

출발지 Port : 60878~

 

목적지 IP : 192.168.20.201

목적지 Port : 80

----------------------------------------------

출발지 IP는 계속 변화하는가 항상 일정한가? --> 192.168.20.50으로 일정하다

출발지 Port는 계속 변화하는가 항상 일정한가? --> 계속 변화한다.

목적지 IP는 계속 변화하는가 항상 일정한가? --> 192.168.20.201로 일정하다

목적지 Port는 계속 변화하는가 항상 일정한가? --> 80포트로 일정하다.

 

공격 패킷의 특성은?

-> 3-Way HandShaking이 성공했음에도 계속적으로 SYN을 보낸다.

격자 50Target 201HTTP 연결을 한 번에 많이 요청함

결론적으로 어떤 공격이라고 판단할 수 있는가?

실습 1에서와 비슷하게 HTTP연결 요청을 무수히 요청하여 Target서비스에 HTTP연결 수 포화 등의 과부하를 일으키는 공격

이런 패킷을 방어 하는 방법은?

HTTP연결 요청이 일정시간 내에 같은 IP로 많이 들어올 시 block하는 방법

 

 

 

 

 

 

[참고] wireshark 분석 통해 .pcap 파일을 분석하는 절차에 대해서

보고자에 의해서 보내진 파일을 분석하는 경우에는 다음과 같은 절차를 통해 분석 과정을 진행한다.

대략적인 Packet Flow 을 분석한다.

Statistics > Comments Summary

Statistics > Protocol Hierarchy

Statistics > Conversation

Statistics > Conversation List > TCP (IPv4 & IPv6)

Statistics > Endpoint List > TCP (IPv4 & IPv6)

Statistics > Flow Graph ....

Display Filter(EX: ip.dst == IP) 규칙을 정하고 입력한다.

다시 통계 정보를 확인 하는 절차를 거친다.

 

 

[참고] SSH 키 교환 절차에 대해서

-------------------------------------

Encrypted request packet len=41

Encrypted response packet len=39

Client: Key Exchange Init

Server: Key Exchange Init

Client: Diffie-Hellman Key Exchange Init

Server: New Keys

Client: New Keys

Encrypted request packet len=48

Encrypted response packet len=48

-------------------------------------

 

Simple example mutual authentication sequence

====================================================================

Server sends a unique challenge value sc to the client

Client generates unique challenge value cc

Client computes cr = hash(cc + sc + secret)

Client sends cr and cc to the server

Server calculates the expected value of cr and ensures the client responded correctly

Server computes sr = hash(sc + cc + secret)

Server sends sr

Client calculates the expected value of sr and ensures the server responded correctly

======================================================

where

sc is the server generated challenge

cc is the client generated challenge

cr is the client response

sr is the server response

 

 

'Learning > └◆Network Hacking' 카테고리의 다른 글

이더넷 프레임 구조확인  (0) 2016.12.20
MAC 주소(CID) 검색하기  (0) 2016.12.20
TCP/IP 이해  (0) 2016.12.19
네트워크 기초 복습  (0) 2016.12.19