回首頁
修改
Mail
FTP

中




2007年11月15日 星期四

[Windows]內建的 Netstat 指令技巧及介紹

netstat 只要是用來顯示活動tcp連線及電腦偵聽的port
乙太網路統計資訊、ip路由表、ipv4
語法如下:
netstat [-a][-e][-n][-o][-p Protocol][-r][-s][Interval]

-a 顯示所有活動tcp連線及偵聽的port
-e 顯示乙太網統計。該參數可以與 -s 選項結合使用。
-n 以數位格式顯示位址和連接阜號(而不是嘗試搜尋名稱)。
-s 顯示每個傳輸協定的統計。預設情況下,顯示 TCP、UDP、ICMP 和 IP 的統計。-p 選項可以用來指定預設的子集。
-p protocol
顯示由 protocol 指定的傳輸協定的連接;protocol 可以是 tcp 或 udp。如果與 -s 選項一同使用顯示每個傳輸協定的統計,protocol 可以是 tcp、udp、icmp 或 ip。
-r 顯示路由表的內容。
interval
重新顯示所選的統計,在每次顯示之間暫停 interval 秒。按 CTRL+B 停止重新顯示統計。如果省略該參數,netstat 將列印一次當前的配置資訊。


進入到指令行下,使用netstat指令的a和n兩個參數:
C:\>netstat -an

Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
TCP 0.0.0.0:21 0.0.0.0:0 LISTENING
TCP 0.0.0.0:7626 0.0.0.0:0 LISTENING
UDP 0.0.0.0:445 0.0.0.0:0
UDP 0.0.0.0:1046 0.0.0.0:0
UDP 0.0.0.0:1047 0.0.0.0:0
解釋一下,Active Connections是指當前本地機活動連接,Proto是指連接使用的傳輸協定名稱,Local Address是本機電腦的 IP 位址和連接正在使用的連接阜號,Foreign Address是連接該連接阜的遠端電腦的 IP 位址和連接阜號,State則是表明TCP 連接的狀態,你可以看到後面三行的監聽連接阜是UDP傳輸協定的,所以沒有State表示的狀態。
看!電腦的7626連接阜已經開放,正在監聽等待連接,像這樣的情況極有可能是已經感染了冰河!急忙中斷連線網路,用殺毒軟體查殺病毒是正確的做法。

偷偷入侵的IP 
在DOS中執行netstat -nap tcp後 有些IP會出現[ESTABLISHED] 那就代表它是在連線中 如果不能判斷是否為自家的區域網路 可以進一步使用追蹤指令:tracert 對方IP 這樣就可以知道對方是從哪裡上線的了

想監控特定連線的來源或 Port,在 UNIX 中內建了不少好用的程式,組合各個小工具後更是威力無窮;Windows 在這方面雖然也有相當多類似的程式可安裝,但內建的 Netstat 用起來總是有些缺憾
netstat –na 1 | find "特定IP"
顯示特定 IP 之連線,每隔一秒更新畫面一次 (適用於像是你已鎖定可疑對象,但不知他何時會連過來)
-a 代表列出所有連線
-n 代表僅列出 IP 及 Port,不解析為 hostname 及 service name,速度會快很多

netstat –nao 1 | find "特定IP"
加上 -o 參數可顯示觸發該連線之 process ID,
欲知 process name 則可以透過內建的 tasklist 這程式

netstat –na 1 | find "4444" | find "ESTABLISHED"
也可以針對特定 Port,不分對象的進行監控,
再透過 find "ESTABLISHED" 篩選掉僅 LISTENING 的部份

參考http://www.itis.tw/node/56 and Yahoo knowledge

0 回應: