SYN 패킷을 보내고 ACK/SYN을 받으면 ACK 까지 보내는 코드를 만들었다.
성공하면 ESTABLISHED 상태가 되야한다.
하지만 실패했다. 왜냐하면
세번째에서 자동으로 RST 패킷이 나간다음 연결이 끊어진 뒤
네번째에서 ACK 패킷을 보내기 때문이다.
iptables에 OUTPUT 룰을 추가한다.
# iptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP
다시 해보면
ACK/SYN 을 받은후 ACK 를 보낸것을 볼 수 있다.
서버에서도 ESTABLISHED 상태로 변경된 것을 확인 가능.
이미 Established 된 상태에서 또 SYN 을 보내게 되면
SYN ->
<- ACK
<- ACK
<- ACK가 오게됨
3 Way Handshake 과정이 tcp 소켓 프로그래밍에서 connect 메소드를 쓰면 한번에 끝남
'Hacking > Network' 카테고리의 다른 글
[23일차] TCP 포트 스캐닝 (0) | 2017.10.26 |
---|---|
[22일차] UDP 포트 스캐닝 (0) | 2017.10.26 |
[20일차] SYN 패킷 만들어서 보내고 ACK/SYN 받아오기 (0) | 2017.10.24 |
[19일차] TCP 소켓 통신과정 분석 (0) | 2017.10.24 |
[18일차] TCP 헤더 분석 (0) | 2017.10.23 |
WRITTEN BY
,