본문 바로가기

사이버보안공부

3-Way Handshake & 4-Way Handshake 실습

2개의 vm을 이용하여 실습을 해보았다.

 

client : 192.168.217.134

server : 192.168.217.136

 

실습은 nc 명령어를 사용하여 쉽게 할 수 있다.

 

Server

$ nc -l 4000 (4000번 포트 listen)

Client

$ nc 192.168.217.136 4000 (Server에게 4000번 포트로 연결요청)

“hello” Data 전송

후에 ^C →연결 종료

분석

Server측에서 wireshark를 봐보면 3-Way Handshake, Data 전송, 4-Way Handshake 들의 과정이 다 나와있다.

위에서는 wireshark에서 자체적으로 sequence number를 편의상 client, server 둘 다 0, 0인 상태로 지정하였다.

3-Way Handshake

  1. SYN(seq = 0)
  2. SYN(seq = 0) + ACK(seq = 1)
  3. ACK(seq = 1)

Data 전송(hello)

  1. PSH(seq = 1(마지막으로 받은 ACK의 seq num)), ACK(seq = 1)
  2. ACK(seq = 7) → seq num(1) + Data의 크기(위에서 len이 6인 것을 확인할 수 있다.) = 7

4-Way Handshake

  1. FIN(seq = =7 (마지막으로 받은 ACK의 seq num)), ACK(seq = 1)
  2. ACK(seq = 8)
  3. FIN(seq = 1), ACK(seq = 8)
  4. ACK(seq = 2)

'사이버보안공부' 카테고리의 다른 글

DNS Spoofing?  (0) 2023.08.06
Cookie wargame  (0) 2023.07.28
3-Way Handshake & 4-Way Handshake 제대로 알고있니?  (1) 2023.07.25
3-Way Handshake  (0) 2023.07.24
OSPF실습  (0) 2023.07.22