Posted on 2009-01-06 16:16
Prayer 閱讀(8258)
評論(0) 編輯 收藏 引用 所屬分類:
LINUX/UNIX/AIX
Netstat
這個命令可以加一些參數: -n 顯示IP地址和端口的數目。 -S 顯示每個協議的連接狀態。 -a 顯示所有的連接和監聽端口。(服務所有連接通常不顯示的) -e 顯示太網的連接狀態。最好與-s合用。 -P PROTO 顯示特定的協議連接狀態。
顯示: Proto Local Address Foreign Address State TCP 192.168.14.246:1148 61.152.160.154:80 ESTABLISHED TCP 192.168.14.246:1180 222.137.116.47:80 ESTABLISHED TCP 192.168.14.246:1181 222.137.116.47:80 ESTABLISHED TCP 192.168.14.246:1182 159.226.202.59:80 ESTABLISHED TCP 192.168.14.246:1183 207.46.198.60:80 TIME_WAIT
不用說都看得懂吧:>>> 主要注意state;個人覺得這個命令好用:>>>相比之下非常方便,當然也有用X-NetStat Professional,或者netxray這些專業軟件的.我比較LIKE 直接DOS命令:>>方面,系統自帶;這個東東在WEB等服務器上如果遭到攻擊用的時候比較多:> ,排除法
下面是專業網絡設備上的一些方法,:>> 在路由器上我們可以用 show tcp brief all在路由器R1上telnet R1后可以看到如下顯示:
R1#sh tcp bri all TCB Local Address Foreign Address (state) 007736F4 6.6.125.1.11011 6.6.5.5.23 ESTAB
在命令輸出顯示的界面中可以清楚的看到顯示本地端口11011連到目的端口23。
幾個常用的網絡測試命令:
#ping
#show interface 查看端口狀態
#show static 查看靜態地址映射
netstat命令查看本機開放端口:
用netstat -a —n命令查看端口!netstat后有一些英文,我來簡單說一下這些英文具體都代表什么
LISTEN:偵聽來自遠方的TCp端口的連接請求
SYN-SENT:再發送連接請求后等待匹配的連接請求
SYN-RECEIVED:再收到和發送一個連接請求后等待對方對連接請求的確認
ESTAbLISHED:代表一個打開的連接
FIN-WAIT-1:等待遠程TCp連接中斷請求,或先前的連接中斷請求的確認
FIN-WAIT-2:從遠程TCp等待連接中斷請求
CLOSE-WAIT:等待從本地用戶發來的連接中斷請求
CLOSING:等待遠程TCp對連接中斷的確認
LAST-ACK:等待原來的發向遠程TCp的連接中斷請求的確認
TIME-WAIT:等待足夠的時間以確保遠程TCp接收到連接中斷請求的確認
CLOSED:沒有任何連接狀態
當前最為常見的木馬通常是基于TCP/UDP協議進行client端與server端之間的通訊的,既然利用到這兩個協議,就不可避免要在server端(就是被種了木馬的機器了)打開監聽端口來等待連接。例如鼎鼎大名的冰河使用的監聽端口是7626,Back Orifice 2000則是使用54320等等。那么,我們可以利用查看本機開放端口的方法來檢查自己是否被種了木馬或其它黑客程序。以下是詳細方法介紹。
1. Windows本身自帶的netstat命令
關于netstat命令,我們先來看看windows幫助文件中的介紹:
Netstat
顯示協議統計和當前的 TCP/IP 網絡連接。該命令只有在安裝了 TCP/IP 協議后才可以使用。
netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
參數
-a
顯示所有連接和偵聽端口。服務器連接通常不顯示。
-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命令的使用方法了。現在就讓我們現學現用,用這個命令看一下自己的機器開放的端口。進入到命令行下,使用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端口已經開放,正在監聽等待連接,像這樣的情況極有可能是已經感染了冰河!急忙斷開網絡,用殺毒軟件查殺病毒是正確的做法。
2.工作在windows2000下的命令行工具fport
使用windows2000的朋友要比使用windows9X的幸運一些,因為可以使用fport這個程序來顯示本機開放端口與進程的對應關系。
Fport是FoundStone出品的一個用來列出系統中所有打開的TCP/IP和UDP端口,以及它們對應應用程序的完整路徑、PID標識、進程名稱等信息的軟件。在命令行下使用,請看例子:
D:\\>fport FPort v1.33 - TCP/IP Process to Port Mapper Copyright 2000 by Foundstone, Inc. http://www.foundstone.com
Pid Process Port Proto Path 748 tcpsvcs -> 7 TCP C:\\WINNT\\System32\\ tcpsvcs 748 tcpsvcs -> 9 TCP C:\\WINNT\\System32\\tcpsvcs 748 tcpsvcs -> 19 TCP C:\\WINNT\\System32\\tcpsvcs 416 svchost -> 135 TCP C:\\WINNT\\system32\\svchost
是不是一目了然了。這下,各個端口究竟是什么程序打開的就都在你眼皮底下了。如果發現有某個可疑程序打開了某個可疑端口,可千萬不要大意哦,也許那就是一只狡猾的木馬!
Fport的最新版本是2.0。在很多網站都提供下載,但是為了安全起見,當然最好還是到它的老家去下:http://www.foundstone.com/knowledge/zips/fport.zip
3.與Fport功能類似的圖形化界面工具Active Ports
Active Ports為SmartLine出品,你可以用來監視電腦所有打開的TCP/IP/UDP端口,不但可以將你所有的端口顯示出來,還顯示所有端口所對應的程序所在的路徑,本地IP和遠端IP(試圖連接你的電腦IP)是否正在活動。下面是軟件截圖:
是不是很直觀?更棒的是,它還提供了一個關閉端口的功能,在你用它發現木馬開放的端口時,可以立即將端口關閉。這個軟件工作在Windows NT/2000/XP平臺下。你可以在http://www.smartline.ru/software/aports.zip得到它。
其實使用windows xp的用戶無須借助其它軟件即可以得到端口與進程的對應關系,因為windows xp所帶的netstat命令比以前的版本多了一個O參數,使用這個參數就可以得出端口與進程的對應來。
上面介紹了幾種查看本機開放端口,以及端口和進程對應關系的方法,通過這些方法可以輕松的發現基于TCP/UDP協議的木馬,希望能給你的愛機帶來幫助。但是對木馬重在防范,而且如果碰上反彈端口木馬,利用驅動程序及動態鏈接庫技術制作的新木馬時,以上這些方法就很難查出木馬的痕跡了。所以我們一定要養成良好的上網習慣,不要隨意運行郵件中的附件,安裝一套殺毒軟件,像國內的瑞星就是個查殺病毒和木馬的好幫手。從網上下載的軟件先用殺毒軟件檢查一遍再使用,在上網時打開網絡防火墻和病毒實時監控,保護自己的機器不被可恨的木馬入侵。
|