幾種查看本機開放端口的方法- -
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.exe
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.exe
748 tcpsvcs -> 9 TCP
C:\WINNT\System32\tcpsvcs.exe
748 tcpsvcs -> 19 TCP
C:\WINNT\System32\tcpsvcs.exe
416 svchost -> 135 TCP
C:\WINNT\system32\svchost.exe
是不是一目了然了。這下,各個端口究竟是什麼程序打開的就都在你眼皮底下了。如果發現有某個可疑程序打開了某個可疑端口,可千萬不要大意哦,也許那就是一隻狡猾的木馬!
Fport的最新版本是2.0。在很多網站都提供下載,但是為了安全起見,當然最好還是到它的老家去下:
http://www.foundstone.com/knowledge/zips/f
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協議的木馬,希望能給你的愛機帶來幫助。但是對木馬重在防範,而且如果碰上反彈端口木馬,利用驅動程序及動態鏈接庫技術製作的新木馬時,以上這些方法就很難查出木馬的痕跡了。所以我們一定要養成良好的上網習慣,不要隨意運行郵件中的附件,安裝一套殺毒軟件,像國內的瑞星就是個查殺病毒和木馬的好幫手。從網上下載的軟件先用殺毒軟件檢查一遍再使用,在上網時打開網絡防火牆和病毒實時監控,保護自己的機器不被可恨的木馬入侵。
問題還真多呢?想賺點分還真不容易啊!
問題還真多呢?想賺點分還真不容易啊!
tcp 0.0.0.0:135 pc-pc:0 listening
要弄明白這個問題就得弄明白後麵這個listening是什麼意思!這是tcp連接裏的一種狀態,一共有如下幾種:
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 0.0.0.0:135 pc-pc:0 listening
這是收到的一個廣播包,所以目標機就是本機
tcp 127.0.0.1:39000 pc-pc:53999 established
這是本機的39000跟53999端口建立了連接!這裏要說明一下的是為什麼本機會跟本機相連(有點繞口!)本地回環地址的作用有兩個:一是測試本機的網絡配置,能ping通127.0.0.1說明本機的網卡和ip協議安裝都沒有問題;另一個作用是某些server/client的應用程序在運行時需調用服務器上的資源,一般要指定server的ip地址,但當該程序要在同一台機器上運行而沒有別的server時就可以把server的資源裝在本機,server的ip地址設為127.0.0.1也同樣可以運行。
tcp 127.0.0.1:44080 pc-pc:56847 time_wait
等待足夠的時間以確保遠程tcp接收到連接中斷請求的確認
tcp 192.168.10.107:51442 192.168.10.166:5900 established
表示一個打開的連接,數據可以傳送給用戶
tcp 192.168.10.107:53516 74.125.153.125:https established
跟上麵的一樣,不過端口號換了!這裏有一個問題要的就是,你弄混http的工作原理了!http采用80端口通信是沒錯,但那是指服務端而非客戶端!上例中你的機器是客戶機,所以采用的是任意端口與服務器的80端口通信,而跟本地的80端口無關!如果還有不懂的話加我的q吧!一起來探討:254102810!
用戶登錄
還沒有賬號?立即注冊
用戶注冊
投稿取消
文章分類: |
|
還能輸入300字
上傳中....