Port는 접속 포트이고.. netstat -nap (열려 있는 모든 포트) 포트스캔 명령어로 확인 하는 방법 # TCP 포트 확인
방법 lsof 명령어로 확인 방법 # 모든 네트워크 소켓 확인 1. netstat : 현재 님 컴퓨터와 연결되었거나 연결될 목록을 프로토콜과 함께 보여주는 도스 명령어입니다. 2. netstat -a : 현재 님컴터와 연결되거나 연결될 목록을 프로토콜과 함께 모두 보여줍니다. -a 옵션이 없으면 연결된 목록만 보여주는데, -a 옵션을 주면 연결되었거나 연결을 기다리는 목록을 모두 보여줍니다. 3. netstat -n : 통상 연결 목록이 컴퓨터 이름이 나오는데, -n 옵션을 주면 컴퓨터이름대신 ip주소가 뜹니다. 4. netstats -an or -na : 둘다 같은 의미인데 님 컴퓨터와 연결되었던 혹은 연결을 기다리는 목록을 아이피주소로 바꾸어서 보여줍니다. Command 모드에서 netstat를 사용하여 PC내의 악성 코드 여부를 확인할 수도 있다. 1. [시작버튼] > [실행]을 눌러서 cmd 라고 입력하여 Command 창을 띄운다. <참고: CTRL+R 을 누르면 [실행]창이 바로 뜬다.> <또 참고: Windows 98에서는 cmd 가 아니라 command 라고 해야 command 창이 나온다.> 2. netstat -an 이 명령어를 치면 아래 그림과 같은 메시지가 출력된다. 이 명령어를 치면 아래 그림과 같은 메시지가 출력된다. 앞에 보이는 IP주소(Local Address)는 로컬시스템(내 PC)의 IP주소이며 뒤의 IP주소(Foreign Address)는 나와 네트워크로 연결이 이루어진 시스템의 IP주소이다. (IP뒤의 ":숫자" 들은 포트 번호이다.)netstat 명령어는 현재 시스템과 네트워크로 연결이 이루어진 상태를 보여주는 명령어다. 자, 이제 분석 방법이다!(FPORT 블로그에서는 존댓말을 썼었는데 왜 갑자기 반말쓰냐고 욕하지는 마세요;) 먼저 위 메시지의 맨 끝 필드인 State 필드를 보자. ESTABLISHED는 연결되어있는 상태를 말하며 CLOSED는 이미 연결이 끊어졌음을 말한다. LISTENING은 현재 시스템에서 열려있는 포트를 말한다. 일단 LISTENING 이라고 되어있는 놈들은 본다. IP주소는 0.0.0.0으로 된 놈들이 많고 내 IP주소 몇개 안될것이다. <참고: 0.0.0.0(네트워크 IP) - 이놈을 인식하지 못하면 인터넷을 못한다.> <또 참고: 127.0.0.1(LocalHost IP) - 이놈은 자기를 스스로 가리킬때 사용하는 주소이다.> Local Address 필드의 IP는 중요하지 않다. 어차피 거기는 내 컴퓨터의 정보만 나오니까. 중요한것은 LISTENING으로 되어있는, 다시말하면 "열려있는 포트"번호이다. 내 컴퓨터에 몇번 포트들이 열려있는지 살펴본 후에, 만일 그 포트로 접속한 놈이 있다면 90%는 뭔가 이상한 거라고 생각하면 된다. 예를 들어, 0.0.0.0:445 0.0.0.0:0 LISTENING . . . . . . . . . 150.2.50.14:445 68.235.32.153:4461 ESTABLISHED 이렇게 보였다고 하자, 445 번 포트(0.0.0.0:445)가 현재 열려(LISTENING)있음을 알 수 있고, 아래에는 내 445번 포트로(150.2.50.14:445) 웬 68.235.32.153 이라는 놈이 접속(ESTABLISHED)했다는 것이 확 드러났다. 일반 개인 컴퓨터 이므로 누가 내 컴퓨터로 들어올일은 거의 없다! (P2P로 내 컴퓨터의 폴더가 공유되어 있다면 몰라도..) 아무튼 이런식으로 분석을 하면 되겠다. 그 외의 것들은 죄다 내가 상대방 컴퓨터로 접속한것을 나타내는 것이기 때문에 무시해도 된다. 물론, Reverse 해킹 방식이 있기는 하지만, 그걸 개인 컴퓨터에 적용할 정도로 무식한 크래커는 없을것이다. netstat 명령어를 치시면 foreign address 라는 게 있죠. 그 곳에 아이피 : 숫자 일케 써있잖아요.. 여기서 숫자는 포트라는것 입니다. 컴퓨터의 열려있는 창문이라고 생각하면 되죠. 트로이목마 프로그램이 침투하려면 그 프로그램이 침투할수 있는 고유의 창문 ,즉 포트가 열려있어야 합니다. 서버파일이란게 있는데 그 프로그램이 침투할수있는 포트를 여는 역할을 하죠. 여기서 아까 netstat 명령어 치면 나오는거.. 아이피:숫자 있잖아요. 만약에 211.111.111.111 :12345 12345라는 포트는 넷버스 1.70가 침투할수 있는 포트번호죠... 제가 여러 트로이목마 프로그램이 침투하는 포트번호들을 모아봤습니다.해커뉴스에서 펌 port 2 - Death 이걸 봄으로서 무슨 프로그램을 사용하여 컴을 공격했는지 알수 있습니다. netstat -an 이라는 명령을 사용해서 보시기 바랍니다. netstat 명령어로 장애처리 1. netstat -rn netstat 명령은 라우팅 테이블을 보여주므로 네트웍 상태를 확인할 수 있음. netstat -rn 은 라우팅 테이블을 수치로 보여주는 것으로 이렇게 하면 이름 찾기를 하는 것 보다 빠르고 /etc/services, /etc/hosts 파일이 정확하지 않을 때 혼동을 피하기 위해서도 사용할 수 있으며, 또한 직관적으로 IP 주소를 확인할 수 있다. Flags에서 U는 경로가 사용 가능한 상태, H는 목적지가 네트웍이 아닌 호스트이며, G는 게이트웨이나 라우터를 의미한다. 또한, 브로트캐스트 b, 정적으로 추가된 항목은 S, 복제의 결과로 생성된 경로임을 나타내는 W와 c등을 포함한다. sol:/bin% netstat -rn ; r 은 Routing Table을 나타내며 n 은 주소와 포트를 숫자로 나타내줌. Routing Table: 2. netstat -an netstat의 기능 하나는 한 호스트에서의 연결 내역(all connections)과 서비스의 목록(listening ports)을 보여주는 것이다. (netstat –a) 바이러스, 웜 이나 해킹등의 상태를 확인할 수 있는 수단이 될 수도 있다. Listening이나 Established 된 Session의 IP 주소나 포트를 확인한다. http://www.ccgsecurity.com/port.aspPipe line과 함께 Unix/Linux는 grep, Windows는 find 옵션을 병행하여, 특정 포트를 검색한다. analysisman:/home/elca% netstat -an | grep 22 C:\>netstat -an | find "445" 3. netstat -i, netstat -e netstat –i (Unix/Linux), netstat –e (Windows) 옵션을 이용하여 해당 인터페이스의 패킷량과 에러, Collision 등을 확인할 수 있다. 특정 프로토콜의 연결 현황 파악하기 C:\>netstat -s -p
tcp 상기 예제를 보면 26,058 TCP 세그먼트가 서버에 의해 전송되었고 15개의 재전송(Retransmission)이 발생하였다. 이것은 1% 보다 작다. 만약, 퍼센트가 이보다 높아진다면 Analyzer를 걸어서 TCP 트래픽을 조사해야 한다 네트워크를 확실하게 보호하고 점검, 모니터링한다 - Netstat Agent
|