반응형
Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 팬인과 팬아웃
- 상태다이어그램
- nc reverse shell
- sofrware architeture
- 모듈구조도
- 리버스쉘
- Bandit
- telnet
- fan-in fan-out
- ui 디자인 기본원칙
- UseCase
- madia designer ui design
- bandit21
- prototypepattern 예시 example
- strucuture charat
- factory metohd pattern
- status diagram
- gof design pattern
- 디자인패턴
- cron
- base64
- 구조적 설계
- ssh
- 클래스 관계
- 암표거래
- 객체 상속 속성 인스턴스 메소드 오퍼레이션
- 소프트웨어공학 디자인패턴
- 매크로를 바라보는 시각
- usecase description
- 생성패턴 행위패턴 구조패턴
Archives
- Today
- Total
2.log
netstat 상태값과 옵션 정리 본문
728x90
반응형
netstat (Network Statistics)
현재 서버가 다른 시스템과 어떤 서비스/포트로 연결되어 있는지 확인하는 명령어
$ netstat -tnl
#t : TCP
#n : Numeric(10진수)
#l : Listening
시스템 콘솔에 표시되는 네트워크 정보 항목
Proto (Protocol) | 프로토콜 종류 (TCP or UDP) |
Local Address | 자기 자신의 IP 주소와 포트번호 0.0.0.0 : 특정 IP 연결되어있지 않은 상태 |
Foreign Address | 상대 측 IP 주소와 포트번호 0.0.0.0 : 아직 통신 시작되지 않은 상태 |
State | 현재 서비스 연결 상태 |
State (네트워크 서비스 연결상태) 항목
LISTEN(window : LISTENING) | 클라이언트의 접속 요청을 기다리고 있는 상태 |
SYN_SENT | 클라이언트가 연결 요청(SYN 신호 보냄)을 한 상태 |
SYN_RECV | 서버가 클라이언트로부터 접속요구(SYN)를 받아 클라이언트에게 응답(SYN/ACK) 했지만, 아직 확인 메시지(ACK)는 받지 못한 상태 |
ESTABLISHED | 다른 컴퓨터와 연결된 상태 (클라이언트가 서버의 SYN 받아서 세션이 연결된 상태) |
FIN_WAIT1 | 클라이언트가 서버에게 연결을 끊고자 요청하는 상태 (FIN을 보낸상태) |
FIN_WAIT2 | 서버가 클라이언트로부터 연결 종료 응답을 기다리는 상태 (서버가 클라이언트로부터 최초로 FIN 을 받은 후 클라이언트에게 ACK을 주었을 때) |
LAST_ACK | 호스트가 원격지 호스트의 연결 종료 요구 승인 기다리는 상태 (서버가 클라이언트에게 FIN을 보냈을떄의 상태) |
CLOSE_WAIT | 원격의 연결 요청 받고 상위 응용프로그램 레벨로부터 연결 종료되기를 기다리는 상태 Passive Close 하는 쪽에서 프로그램이 소켓 종료시키는 것을 기다리기 위한 상태 가령, 소켓 프로그래밍시 TCP connection 을 close 함수로 명시적으로 끊어주지 않으면 CLSOE_WAIT 상태로 영원히 남아 있을 수 있고 이는 resource leak 으로 이어짐 |
CLOSED | 연결 완전히 종료된 상태 |
CLOSING | 확인 메시지가 전송 도중 유실된 상태 |
TIME WAIT | 연결은 종료되었으나 잠시 소켓 열어놓은 상태 (분실 가능성 있는 느린 세그먼트 위함, 기본값 : 120/s) Active Close 하는 쪽의 마지막 ACK이 유실되었을 때, Passive Close 하는 쪽은 자신이 보낸 FIN 에 대한 응답을 받지 못했으므로 FIN 재전송하고, 이때 TCP는 connection 정보를 유지하고 있어서 ACK 을 다시 보낼 수 있음 |
모드
Active Open | connect() 를 호출하는 쪽 SYN 세그먼트를 전송한 쪽으로 대개 클라이언트 쪽이지만 100%는 아님 |
Passive Open | accept() 를 호출하는 쪽 일반적으로 서버쪽 역할이지만 100%는 아님 |
Active Close | close() 를 처음 호출한 쪽, FIN 세그먼트를 전송한 쪽 클라이언트, 서버 관계없이 어느쪽이든 active close 할 수 있음 |
Passive Close | FIN 세그먼트를 받는 쪽 |
MSL (Maximum Segment Lifetime) | 세그먼트가 네트워크 내에서 폐기 되기 전까지 살아남을 수 있는 시간 |
TCP flag
ACK (Acknowledgement) | 받는 사람이 보낸 사람 시퀀스 번호에 TCP 계층에서 길이 or 데이터 양을 더한 것과 같은 ACK 보냄 ACK 번호와 응답을 통해 보낸 패킷에 대한 손실 여부 판단하여 재송소아 하거나 다음 패킷 전송 함 |
FIN (Finish) | 세션 종료시키는데 사용됨 보낸 사람이 더 이상 보낼 데이터 없음을 보여줌 |
RST (Reset) | 재설정 하는 과정이자 양방향에서 동시에 일어나는 중단작업 비정상적인 세션 연결 끊기에 해당 |
PSH (Push) | 대화형 트래픽에서 사용되며 버퍼가 채워지기를 기다리지 않고 데이터 전달 데이터는 버퍼링 없이 바로 위 Layer가 아닌 7 Layer의 응용프로그램으로 바로 전달 |
URG (Urgent) | Urgent pointer* 가 유효한 것인지 나타냄 * 전송하는 데이터 중 긴급히 전달해야 할 내용 있을 경우 사용 |
옵션
-a | 모든 연결 및 수신 대기 포트 표시 |
-c | 현재 실행 명령을 매 초마다 실행 |
-l | listen 하고 있는 포트만 보여줌 |
-i | 네트워크 트래픽 정보 모니터링 |
-t | tcp 로 연결된 포트 보여줌 |
-u | udp로 연결된 포트 보여줌 |
-n | 주소나 포트 형식을 숫자로 표현 |
-p [프로토콜] | 해당 프로토콜을 사용하고 있는 프로그램만 보여줌 |
-r | 라우팅 테이블 보여줌 |
-s | 프로토콜별 통계 정보 |
[참고]
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=pxkey&logNo=221276188823
https://ktdsoss.tistory.com/282
728x90
반응형
'HACKING > Bandit+' 카테고리의 다른 글
Insecure_Client_Initiated_Renegotiation (0) | 2023.03.28 |
---|---|
HeartBleed 취약점에 대하여 (0) | 2023.03.26 |
SSL/TLS 에 대하여 (0) | 2023.03.25 |
NAS 와 NDMP에 대하여 (0) | 2023.03.24 |
Telnet 과 SSH (0) | 2023.03.24 |
Comments