2022年9月26日 星期一

TCPView:即時顯示電腦中正在進行的連線,也可以中斷異常連線

有時候我們會在防火牆上發現某台電腦有異常大量的連線數,此時想要知道到底有哪些程式甚至病毒木馬正在連線,可以透過 TCPView 這支免安裝的小程式,即時顯示電腦中有哪些連線,並且可以中斷任何一條連線,提供快速直觀的網路異常分析管理,是很實用的工具。


TCPView 是 Windows 程式,會顯示系統上所有 TCP 和 UDP 端點的詳細清單,包括 TCP 連線的本機和遠端位址和狀態。 TCPView 也會報告擁有端點的進程名稱。 TCPView 提供更資訊且方便呈現的 Netstat 程式子集。

下載下來的壓縮檔解壓後有下面幾個檔案。

各個 exe 執行檔案說明:
tcpview:32位元 x86 視窗版
tcpview64:64位元 x86 視窗版
tcpview64a:64位元 ARM 視窗版
tcpvcon:32位元 x86 命令提示字元版
tcpvcon64:64位元 x86 命令提示字元版
tcpvcon64a:64位元 ARM 命令提示字元版


當啟動 TCPView 時,它會列舉所有作用中的 TCP 和 UDP 端點,將所有 IP 位址解析為其功能變數名稱版本,下面是打開 tcpview 程式後顯示的畫面。

其中常用的欄位及功能說明:

TCPView可以清楚了解作業系統與網路之間的運作,以下簡單的說明個欄位的功能及用途。

Process Name:運作的程式名稱,不過這個欄位同一支程式並不會只有一個,若有多個連線就會出現多個的程式名稱,所以無需看到太多個同一程式執行就覺得有問題,那只代表該程式有多個連線。

Process ID:每個程式執行,系統就會給該程式一個 Process ID 權限,與使用的權限有相關。

Protocol:程式要與網路做連線,就必需要有個通訊協定,Protocol 也有分成 TCP 及 UDP,若要開防火牆的連接埠時,就必須要知道目前該程式所運作的 Protocol 是什麼,不然就算是連接埠號碼是對的,也是無法對外開放連線。另外提一下 TCP 及 UDP 有 65536 個連接埠號碼。

Local Address:本地的連線端的位址,一般來說都會顯示為該電腦的電腦名稱或是 IP 位址。

Local Port:本地的連線端的連接埠。

Remote Address:遠端的被連線端的位址,一般來說都是顯示該程式所連線的網址或是 IP 位址,有些會顯示本地的連線端電腦名稱或是 Localhost,其實只是暫時與本地端坐連線,可以不理會。

Remote Port:遠端的被連線端的連接埠,這樣就可以了解目前程式所連線的連接埠。

State:狀態可以了解目前程式是正在連線還是關閉連線中。


想要知道某條連線由哪個程式發起的,可以先選擇其中一條連線後,點選上方選單的 "Process",再點選"Properties"。


這時會跳出一個視窗,顯示此連線的程式來源與路徑,可以點擊"Explore"透過檔案總管開啟至路徑的資料夾。



想要中斷某條連線,可以先選擇其中一條想要中斷的連線後,點選上方選單的 "Process",再點選"Kill"。

這時會跳出一個視窗,詢問是否要中斷此連線,再點擊"確定"就可以中斷連線。


因為連線資料一直變動,想要更改刷新速度,可以點選上方選單的"View",再點選"Update Speed",就可以變更更新速度了。


也可以點選畫面左上角的功能按鈕,暫停畫面的更新。


至於 Tcpvcon 使用方式類似內建 Windows netstat 公用程式:

tcpvcon [-a] [-c] [-n] [process name or PID]

-a 顯示所有端點 (預設為顯示已建立的 TCP 連線) 。

-c 將輸出列印為 CSV。

-n 不解析位址。


官方網站與下載點:

https://learn.microsoft.com/zh-tw/sysinternals/downloads/tcpview



沒有留言:

張貼留言