Laboratory/Windows Server

시스템 명령어인 netstat 를 사용하는 방법

theking 2008. 1. 14. 01:47

Port는 접속 포트이고..
LocalAddress는 사용자의 IP주소이고..
Foreign Address는 상대 IP주소이고..
State는 현재 상태입니다.
State가 Lisen?이면 포트가 열려가 누군가가 접속하기를 기다리는 중입니다.
만약 님이 웹서핑을 하게 된다면 그 주소까지도 나오게 됩니다.
모든 정보가 누군가가 해킹을 하려고 접속시도를 하는건 아니지요.. ^^;
해킹을 막을려면 방화벽을 설치하는걸 권해 드립니다.
해킹 시도를 하는건 열려있는 특정포트로 접속을 해서 하게 되는데..
방화벽은 포트를 막아 버립니다.
(고급 해커는 방화벽도 뚫습니다.. ^^)
바이러스도 해킹을 위한 바이러스는 포트를 열게 됩니다.
이른바 백도어라고 하지요..

 

 

netstat -nap (열려 있는 모든 포트)
#netstat -l 또는 netstat -nap | grep LISTEN (LISTEN 되는 모든 포트)
#netstat -nap | grep ESTABLISHED | wc -l ( 모든 서비스 동시 접속자 수)
#netstat -nap | grep :80 | grep ESTABLISHED | wc -l ( 웹 동시 접속자 수)


포트스캔 명령어로 확인 하는 방법

# TCP 포트 확인 방법
nmap -sT -p 1-65535 localhost
# UDP 포트 확인 방법
nmap -sU -p 1-65535 localhost
# 네트워크에 열린 포트 확인
nmap -sX -p 22,53,110 211.239.111.*


lsof 명령어로 확인 방법

# 모든 네트워크 소켓 확인
lsof -I

 

 

 

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라는 포트에 211.111.111.111 이라는 아이피가 접속해있다는 겁니다.

12345라는 포트는 넷버스 1.70가 침투할수 있는 포트번호죠...


제가 여러 트로이목마 프로그램이 침투하는 포트번호들을 모아봤습니다.해커뉴스에서 펌

port 2 - Death
port 21 - Back Construction, Blade Runner, Doly Trojan, Fore, FTP trojan, Invisible FTP, Larva, MBT, Motiv, Net Administrator, Senna Spy FTP Server, WebEx, WinCrash
port 23 - Tiny Telnet Server, Truva Atl
port 25 - Aji, Antigen, Email Password Sender, Gip, Happy 99, I Love You, Kuang 2, Magic Horse, Moscow Email Trojan, Naebi, NewApt, ProMail trojan, Shtrilitz, Stealth, Tapiras, Terminator, WinPC, WinSpy
port 31 - Agent 31, Hackers Paradise, Masters Paradise
port 41 - DeepThroat
port 48 - DRAT
port 50 - DRAT
port 59 - DMSetup
port 79 - Firehotcker
port 80 - Back End, Executor, Hooker, RingZero
port 99 - Hidden Port
port 110 - ProMail trojan
port 113 - Invisible Identd Deamon, Kazimas
port 119 - Happy 99
port 121 - JammerKillah
port 123 - Net Controller
port 133 - Farnaz, port 146 - Infector
port 146 (UDP) - Infector
port 170 - A-trojan
port 421 - TCP Wrappers
port 456 - Hackers Paradise
port 531 - Rasmin
port 555 - Ini-Killer, NeTAdministrator, Phase Zero, Stealth Spy
port 606 - Secret Service
port 666 - Attack FTP, Back Construction, NokNok, Cain & Abel, Satanz Backdoor, ServeU, Shadow Phyre
port 667 - SniperNet
port 669 - DP Trojan
port 692 - GayOL
port 777 - Aim Spy
port 808 - WinHole
port 911 - Dark Shadow
port 999 - DeepThroat, WinSatan
port 1000 - Der Spacher 3
port 1001 - Der Spacher 3, Le Guardien, Silencer, WebEx
port 1010 - Doly Trojan
port 1011 - Doly Trojan
port 1012 - Doly Trojan
port 1015 - Doly Trojan
port 1016 - Doly Trojan
port 1020 - Vampire
port 1024 - NetSpy
port 1042 - Bla
port 1045 - Rasmin
port 1050 - MiniCommand
port 1080 - WinHole
port 1081 - WinHole
port 1082 - WinHole
port 1083 - WinHole
port 1090 - Xtreme
port 1095 - RAT
port 1097 - RAT
port 1098 - RAT
port 1099 - BFevolution, RAT
port 1170 - Psyber Stream Server, Streaming Audio trojan, Voice
port 1200 (UDP) - NoBackO
port 1201 (UDP) - NoBackO
port 1207 - SoftWAR
port 1212 - Kaos
port 1225 - Scarab
port 1234 - Ultors Trojan
port 1243 - BackDoor-G, SubSeven, SubSeven Apocalypse, Tiles
port 1245 - VooDoo Doll
port 1255 - Scarab
port 1256 - Project nEXT
port 1269 - Mavericks Matrix
port 1313 - NETrojan
port 1338 - Millenium Worm
port 1349 (UDP) - BO DLL
port 1492 - FTP99CMP
port 1509 - Psyber Streaming Server
port 1524 - Trinoo
port 1600 - Shivka-Burka
port 1777 - Scarab
port 1807 - SpySender
port 1966 - Fake FTP
port 1969 - OpC BO
port 1981 - Shockrave
port 1999 - BackDoor, TransScout
port 2000 - Der Spaeher 3, Insane Network, TransScout
port 2001 - Der Spaeher 3, TransScout, Trojan Cow
port 2002 - TransScout
port 2003 - TransScout
port 2004 - TransScout
port 2005 - TransScout
port 2023 - Ripper
port 2080 - WinHole
port 2115 - Bugs
port 2140 - Deep Throat, The Invasor
port 2155 - Illusion Mailer
port 2283 - HVL Rat5
port 2300 - Xplorer
port 2565 - Striker
port 2583 - WinCrash
port 2600 - Digital RootBeer
port 2716 - The Prayer
port 2773 - SubSeven
port 2801 - Phineas Phucker
port 3000 - Remote Shutdown
port 3024 - WinCrash
port 3128 - RingZero
port 3129 - Masters Paradise
port 3150 - Deep Throat, The Invasor
port 3456 - Teror Trojan
port 3459 - Eclipse 2000, Sanctuary
port 3700 - Portal of Doom
port 3791 - Eclypse
port 3801 (UDP) - Eclypse
port 4000 - Skydance
port 4092 - WinCrash
port 4242 - Virtual hacking Machine
port 4321 - BoBo
port 4444 - Prosiak, Swift remote
port 4567 - File Nail
port 4590 - ICQTrojan
port 5000 - Bubbel, Back Door Setup, Sockets de Troie
port 5001 - Back Door Setup, Sockets de Troie
port 5010 - Solo
port 5011 - One of the Last Trojans (OOTLT)
port 5031 - NetMetropolitan
port 5031 - NetMetropolitan
port 5321 - Firehotcker
port 5343 - wCrat
port 5400 - Blade Runner, Back Construction
port 5401 - Blade Runner, Back Construction
port 5402 - Blade Runner, Back Construction
port 5550 - Xtcp
port 5512 - Illusion Mailer
port 5555 - ServeMe
port 5556 - BO Facil
port 5557 - BO Facil
port 5569 - Robo-Hack
port 5637 - PC Crasher
port 5638 - PC Crasher
port 5742 - WinCrash
port 5882 (UDP) - Y3K RAT
port 5888 - Y3K RAT
port 6000 - The Thing
port 6006 - The Thing
port 6272 - Secret Service
port 6400 - The Thing
port 6667 - Schedule Agent
port 6669 - Host Control, Vampyre
port 6670 - DeepThroat, BackWeb Server, WinNuke eXtreame
port 6711 - SubSeven
port 6712 - Funny Trojan, SubSeven
port 6713 - SubSeven
port 6723 - Mstream
port 6771 - DeepThroat
port 6776 - 2000 Cracks, BackDoor-G, SubSeven
port 6838 (UDP) - Mstream
port 6912 - Shit Heep (not port 69123!)
port 6939 - Indoctrination
port 6969 - GateCrasher, Priority, IRC 3, NetController
port 6970 - GateCrasher
port 7000 - Remote Grab, Kazimas, SubSeven
port 7001 - Freak88
port 7215 - SubSeven
port 7300 - NetMonitor
port 7301 - NetMonitor
port 7306 - NetMonitor
port 7307 - NetMonitor
port 7308 - NetMonitor
port 7424 - Host Control
port 7424 (UDP) - Host Control
port 7789 - Back Door Setup, ICKiller
port 7983 - Mstream
port 8080 - RingZero
port 8787 - Back Orifice 2000
port 8897 - HackOffice
port 8988 - BacHack
port 8989 - Rcon
port 9000 - Netministrator
port 9325 (UDP) - Mstream
port 9400 - InCommand
port 9872 - Portal of Doom
port 9873 - Portal of Doom
port 9874 - Portal of Doom
port 9875 - Portal of Doom
port 9876 - Cyber Attacker, RUX
port 9878 - TransScout
port 9989 - iNi-Killer
port 9999 - The Prayer
port 10067 (UDP) - Portal of Doom
port 10085 - Syphillis
port 10086 - Syphillis
port 10101 - BrainSpy
port 10167 (UDP) - Portal of Doom
port 10528 - Host Control
port 10520 - Acid Shivers
port 10607 - Coma
port 10666 (UDP) - Ambush
port 11000 - Senna Spy
port 11050 - Host Control
port 11051 - Host Control
port 11223 - Progenic trojan, Secret Agent
port 12076 - Gjamer
port 12223 - Hack´99 KeyLogger
port 12345 - GabanBus, My Pics, NetBus, Pie Bill Gates, Whack Job, X-bill
port 12346 - GabanBus, NetBus, X-bill
port 12349 - BioNet
port 12361 - Whack-a-mole
port 12362 - Whack-a-mole
port 12623 (UDP) - DUN Control
port 12624 - Buttman
port 12631 - WhackJob
port 12754 - Mstream
port 13000 - Senna Spy
port 13010 - Hacker Brazil
port 15092 - Host Control
port 15104 - Mstream
port 16660 - Stacheldracht
port 16484 - Mosucker
port 16772 - ICQ Revenge
port 16969 - Priority
port 17166 - Mosaic
port 17300 - Kuang2 The Virus
port 17777 - Nephron
port 18753 (UDP) - Shaft
port 19864 - ICQ Revenge
port 20001 - Millennium
port 20002 - AcidkoR
port 20034 - NetBus 2 Pro, NetRex, Whack Job
port 20203 - Chupacabra
port 20331 - Bla
port 20432 - Shaft
port 20432 (UDP) - Shaft
port 21544 - GirlFriend, Kidterror, Schwindler, WinSp00fer
port 22222 - Prosiak
port 23023 - Logged
port 23432 - Asylum
port 23456 - Evil FTP, Ugly FTP, Whack Job
port 23476 - Donald Dick
port 23476 (UDP) - Donald Dick
port 23477 - Donald Dick
port 26274 (UDP) - Delta Source
port 26681 - Spy Voice
port 27374 - SubSeven
port 27444 (UDP) - Trinoo
port 27573 - SubSeven
port 27665 - Trinoo
port 29104 - Host Control
port 29891 (UDP) - The Unexplained
port 30001 - TerrOr32
port 30029 - AOL Trojan
port 30100 - NetSphere
port 30101 - NetSphere
port 30102 - NetSphere
port 30103 - NetSphere
port 30103 (UDP) - NetSphere
port 30133 - NetSphere
port 30303 - Sockets de Troie
port 30947 - Intruse
port 30999 - Kuang2
port 31335 (UDP) - Trinoo
port 31336 - Bo Whack, ButtFunnel
port 31337 - Baron Night, BO client, BO2, Bo Facil
port 31337 (UDP) - BackFire, Back Orifice, DeepBO, Freak>
port 31338 - NetSpy DK, ButtFunnel
port 31338 (UDP) - Back Orifice, DeepBO
port 31339 - NetSpy DK
port 31666 - BOWhack
port 31785 - Hack´a´Tack
port 31787 - Hack´a´Tack
port 31788 - Hack´a´Tack
port 31789 (UDP) - Hack´a´Tack
port 31791 (UDP) - Hack´a´Tack
port 31792 - Hack´a´Tack
port 32100 - Peanut Brittle, Project nEXT
port 32418 - Acid Battery
port 33333 - Blakharaz, Prosiak
port 33577 - PsychWard
port 33777 - PsychWard
port 33911 - Spirit 2001a
port 34324 - BigGluck, TN
port 34555 (UDP) - Trinoo (Windows)
port 35555 (UDP) - Trinoo (Windows)
port 37651 - YAT
port 40412 - The Spy
port 40421 - Agent 40421, Masters Paradise
port 40422 - Masters Paradise
port 40423 - Masters Paradise
port 40426 - Masters Paradise
port 41666 - Remote Boot
port 41666 (UDP) - Remote Boot
port 44444 - Prosiak
port 47262 (UDP) - Delta Source
port 50505 - Sockets de Troie
port 50766 - Fore, Schwindler
port 51996 - Cafeini
port 52317 - Acid Battery 2000
port 53001 - Remote Windows Shutdown
port 54283 - SubSeven
port 54320 - Back Orifice 2000
port 54321 - School Bus
port 54321 (UDP) - Back Orifice 2000
port 57341 - NetRaider
port 58339 - ButtFunnel
port 60000 - Deep Throat
port 60068 - Xzip 6000068
port 60411 - Connection
port 61348 - Bunker-Hill
port 61466 - Telecommando
port 61603 - Bunker-Hill
port 63485 - Bunker-Hill
port 65000 - Devil, Stacheldracht
port 65432 - The Traitor
port 65432 (UDP) - The Traitor
port 65535 - RC
이렇게 있습니다.

이걸 봄으로서 무슨 프로그램을 사용하여 컴을 공격했는지 알수 있습니다.
그리고 그냥 netstat 명령어를 사용하지 마시고

netstat -an 이라는 명령을 사용해서 보시기 바랍니다.

 

 

 

netstat 명령어로 장애처리

 

1. netstat -rn

netstat 명령은 라우팅 테이블을 보여주므로 네트웍 상태를 확인할 수 있음.
(참고: Cisco router: sh ip route, Extreme switch: sh iproute)


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:
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
210.116.105.0 210.116.105.112 U 3 1306 hme0
10.107.11.0 10.107.11.112 U 2 685 hme1
10.107.0.0 10.107.11.254 UG 0 19334
224.0.0.0 210.116.105.112 U 3 0 hme0
default 210.116.105.126 UG 0 179635
127.0.0.1 127.0.0.1 UH 0 4414 lo0


2. netstat -an


netstat의 기능 하나는 한 호스트에서의 연결 내역(all connections)과 서비스의 목록(listening ports)을 보여주는 것이다. (netstat –a)


바이러스, 웜 이나 해킹등의 상태를 확인할 수 있는 수단이 될 수도 있다.

Listening이나 Established 된 Session의 IP 주소나 포트를 확인한다.
http://www.ccgsecurity.com/port.asp

Pipe line과 함께 Unix/Linux는 grep, Windows는 find 옵션을 병행하여, 특정 포트를 검색한다.


analysisman:/home/elca% netstat -an | grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 210.116.123.195:21 211.226.105.161:3044 ESTABLISHED
tcp 0 48 210.116.123.195:22 210.116.123.196:3619 ESTABLISHED
tcp 0 0 210.116.123.195:22 210.116.123.196:3618 ESTABLISHED

C:\>netstat -an | find "445"
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
UDP 0.0.0.0:445 *:*

3. netstat -i, netstat -e

netstat –i (Unix/Linux), netstat –e (Windows) 옵션을 이용하여 해당 인터페이스의 패킷량과 에러, Collision 등을 확인할 수 있다.

특정 프로토콜의 연결 현황 파악하기
- Unix: netstat -P protocol (tcp/udp…)
- Linux: netstat -tcp/-udp
- Windows: netstat -p protocol
* -s (statistics)옵션을 같이 사용하면 해당 프로토콜의 통계치를 볼 수 있다.

C:\>netstat -s -p tcp
TCP Statistics
Active Opens = 204
Passive Opens = 734
Failed Connection Attempts = 2
Reset Connections = 263
Current Connections = 2
Segments Received = 44759
Segments Sent = 26058
Segments Retransmitted = 15

상기 예제를 보면 26,058 TCP 세그먼트가 서버에 의해 전송되었고 15개의 재전송(Retransmission)이 발생하였다. 이것은 1% 보다 작다. 만약, 퍼센트가 이보다 높아진다면 Analyzer를 걸어서 TCP 트래픽을 조사해야 한다

 

 

 

네트워크를 확실하게 보호하고 점검, 모니터링한다 - Netstat Agent

 

사용자 삽입 이미지
nsagent.zip
(709KB, DN:77)
사용자 삽입 이미지
네트워크를 확실하게 보호하고 점검, 모니터링한다 - Netstat Agent  
사용자 삽입 이미지



Netstat Agent 는 네트워크를 점검하고 모니터링할 수 있는 필수 네트워크툴로써 다음과 같은 기능을 가지고 있다.

- 네트워크의 연결상태를 모두 보여준다.
- 열려져 있는 TCP, UDP 포트, IP 주소, 연결상태, 프로토콜 상태에 대한 정보를 보여준다.
- 핑(ping) 기능을 제공한다.
- 트레이서(tracer) 기능을 제공한다.
- 라우트(route) 기능을 제공한다.
- ARP 기능을 제공한다.