電腦之間通訊是通過連接埠進行的,例如:訪問一個網站時,Windows就會在本機開一個連接埠(例如1025連接埠),然後去串連遠方網站伺服器的一個連接埠,別人訪問你時也是如此。預設狀態下,Windows會開啟許多服務連接埠,駭客常常利用這些連接埠來實施入侵,因此掌握連接埠方面的知識,是安全上網必備的技能。
一、常用連接埠及其分類
電腦在Internet上相互連信需要使用TCP/IP協議,根據TCP/IP協議規定,電腦有256×256(65536)個連接埠,這些連接埠可分為TCP連接埠和UDP連接埠兩種。按照連接埠號碼劃分,它們又可以分為以下兩大類:
1.系統保留連接埠(從0到1023)
這些連接埠不允許使用,它們都有確切的定義,對應著網際網路上常見的一些服務,每一個開啟的此類連接埠,都代表一個系統服務,例如:80連接埠就代表Web服務。21對應著FTP,25對應著SMTP(發郵件)、110對應著POP3(收郵件)等。
HTTP:80:www服務。
DHCP:伺服器端的連接埠號碼是67
DHCP:客戶機端的連接埠號碼是68
POP3:POP3僅僅是接收協議,POP3用戶端使用SMTP向伺服器發送郵件。POP3所用的連接埠號碼是110。
SMTP: 連接埠號碼是25。SMTP真正關心的不是郵件如何被傳送,而只關心郵件是否能順利到達目的地。SMTP具有健壯的郵件處理特性,這種特性允許郵件依據一定標 准自動路由,SMTP具有當郵件地址不存在時立即通知使用者的能力,並且具有在一定時間內將不可傳輸的郵件返回傳送方的特點。
Telnet:連接埠號碼是23。Telnet是一種最老的Internet應用,起源於ARPNET。它的名字是“電信網路通訊協定(Telecommunication Network Protocol)”的縮寫。
FTP:FTP使用的連接埠有20和21。20連接埠用於資料轉送,21連接埠用於控制信令的傳輸,控制資訊和資料能夠同時傳輸,這是FTP的特殊這處。FTP採用的是TCP串連。
TFTP:連接埠號碼69,使用的是UDP的串連。
DNS:53,名稱服務
NetBIOS: 137,138,139,其中137、138是UDP連接埠,當通過網路位置傳輸檔案時用這個連接埠。而139連接埠:通過這個連接埠進入的串連試圖獲得 NetBIOS/SMB服務。這個協議被用於windows檔案和印表機共用和SAMBA。還有WINS Regisrtation也用它。
NNTP 網路新聞傳輸通訊協定:119
SNMP(簡易網路管理通訊協定):161連接埠
RPC(遠端程序呼叫)服務:135連接埠
QQ:使用8000(服務端)和4000連接埠(用戶端)
21 連接埠:21 連接埠主要用於FTP(File Transfer Protocol,檔案傳輸通訊協定)服務。
23 連接埠:23 連接埠主要用於Telnet(遠程登入)服務,是Internet上普遍採用的登入和模擬程式,最初設計被用來方便管理員遠端管理電腦,可現在真正將其發揮到極致的是"駭客"!
25 連接埠:25 連接埠為SMTP(Simple Mail Transfer Protocol,簡易郵件傳輸通訊協定)伺服器所開放,主要用於發送郵件,如今絕大多數郵件伺服器都使用該協議。
53 連接埠:53 連接埠為DNS(Domain Name Server,網域名稱伺服器)伺服器所開放,主要用於網域名稱解析,DNS 服務在NT 系統中使用的最為廣泛。
67、68 連接埠:67、68 連接埠分別是為Bootp 服務的Bootstrap Protocol Server(引導程式協議服務端)和Bootstrap Protocol Client(引導程式協議用戶端)開放的連接埠。
69 連接埠:TFTP 是Cisco 公司開發的一個簡單檔案傳輸通訊協定,類似於FTP。
79 連接埠:79 連接埠是為Finger 服務開放的,主要用於查詢遠程主機線上使用者、作業系統類型以及是否緩衝區溢位等使用者的詳細資料。
80 連接埠:80 連接埠是為HTTP(HyperText Transport Protocol,超文字傳輸通訊協定 (HTTP))開放的,這是上網衝浪使用最多的協議,主要用於在WWW(World Wide Web,全球資訊網)服務上傳輸資訊的協議。
99 連接埠:99 連接埠是用於一個名為“Metagram Relay”(亞對策延時)的服務,該服務比較少見,一般是用不到的。
109、110 連接埠:109 連接埠是為POP2(Post Office Protocol Version2,郵局協議2)服務開放的,110 連接埠是為POP3(郵件協議3)服務開放的,POP2、POP3 都是主要用於內送郵件的。
111 連接埠:111 連接埠是SUN 公司的RPC(Remote Procedure Call,遠端程序呼叫)服務所開放的連接埠,主要用於分布式系統中不同電腦的內部進程通訊,RPC 在多種網路服務中都是很重要的組件。
113 連接埠:113 連接埠主要用於Windows 的“Authentication Service”(驗證服務)。
119 連接埠:119 連接埠是為“Network News Transfer Protocol”(網路新聞群組傳輸協議,簡稱NNTP)開放的。
135 連接埠:135 連接埠主要用於使用RPC(Remote Procedure Call,遠端程序呼叫)協議並提供DCOM(分散式元件物件模型)服務。
137 連接埠:137 連接埠主要用於“NetBIOS Name Service”(NetBIOS名稱服務)。
139 連接埠:139 連接埠是為“NetBIOS Session Service”提供的,主要用於提供Windows 檔案和印表機共用以及Unix 中的Samba 服務。
143 連接埠:143 連接埠主要是用於“Internet Message Access Protocol”v2(網際網路訊息存取通訊協定,簡稱IMAP)。
161 連接埠:161 連接埠是用於“Simple Network Management Protocol”(簡易網路管理通訊協定,簡稱SNMP)。
443 連接埠:443 連接埠即網頁瀏覽連接埠,主要是用於HTTPS 服務,是提供加密和通過安全連接埠傳輸的另一種HTTP。
554 連接埠:554 連接埠預設情況下用於“Real Time Streaming Protocol”(即時資料流通訊協定,簡稱RTSP)。
2.動態連接埠(從1024到65535)
需要與別人通訊時,Windows會從1024起,在本機上分配一個動態連接埠,如果1024連接埠未關閉,再需要連接埠時就會分配1025連接埠供使用,依此類推。
但是有個別的系統服務會綁定在1024到49151的連接埠上,例如3389連接埠(遠程終端服務)。從49152到65535這一段連接埠,通常沒有捆綁系統服務,允許Windows動態分配給你使用。
1024 連接埠:1024 連接埠一般不固定分配給某個服務,在英文中的解釋是“Reserved”(保留)。
1080 連接埠:1080 連接埠是Socks 代理服務使用的連接埠,大家平時上網使用的WWW 服務使用的是HTTP 協議的代理服務。
1755 連接埠:1755 連接埠預設情況下用於“Microsoft Media Server”(微軟媒體伺服器,簡稱MMS)。
3389連接埠:遠端桌面 (嘿嘿!3389入侵就是用的這個口)
二、如何查看本機開放了哪些連接埠
預設狀態下,Windows會開啟很多“服務連接埠”,如果想查看本機開啟了哪些連接埠、有哪些網站正在與本機串連,可以用netstat命令:
Windows提供了netstat命令,能夠顯示當前的TCP/IP網路連接情況。
操作方法:單擊“開始→程式→附件→命令提示字元”,進入DOS視窗,輸入netstat-na斷行符號,就會顯示本機串連情況及開啟的連接埠。其中 LocalAddress代表本機IP地址和開啟的連接埠號碼,ForeignAddress是遠端電腦IP地址和連接埠號碼,State表明當前TCP的串連狀態。
在DOS視窗中輸入了netstat-nab命令,還將顯示每個串連都是由哪些程式建立的。如果發現本機開啟了可疑的連接埠,就可以用該命令察看它調用了哪些組件,然後再檢查各組件的建立時間和修改時間,如果發現異常,就可能是中了木馬。
三、關閉本機不用的連接埠
預設情況下Windows有很多連接埠是開放的,連網後駭客可以通過這些連接埠連上你的電腦,因此,應該封閉這些連接埠。主要有:TCP139、445、593、 1025連接埠和UDP123、137、138、445、1900連接埠、一些流行病毒的後門連接埠(如:TCP2513、2745、3127、6129連接埠),以及遠程服務訪問連接埠3389。
關閉的方法是:
①137、138、 139、445連接埠:它們都是為共用而開放的,應該禁止別人共用你的機器,所以要把這些連接埠全部關閉,方法是:單擊“開始→控制台→系統→硬體→裝置管理員”,單擊“查看”菜單下的“顯示隱藏的裝置”,雙擊“非隨插即用驅動程式”,找到並雙擊NetBiosoverTcpip,在開啟的 “NetBiosoverTcpip屬性”視窗,單擊選中“常規”標籤下的“不要使用這個裝置(停用)”,“確定”按鈕後重新啟動後即可。
關閉135連接埠
WindowsXP系統(關閉135連接埠)
運行dcomcnfg,展開“元件服務”→“電腦”,在“我的電腦”上點右鍵選“屬性”,切換到“預設屬性”,取消“啟用分布式COM”;然後切換到“預設協議”,刪除“連線導向的TCP/IP”。
以上選項有對應的註冊表索引值,因此也可通過註冊表來修改:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Ole:EnableDCOM的值改為“N”
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Rpc:DCOMProtocols中刪除“ncacn_ip_tcp”
此外,需要停用“DistributedTransactionCoordinator”服務。服務停用方法這裡系統服務最佳化
重啟電腦後,135連接埠就關閉了。
關閉139連接埠
控制台-網路和撥號連線-本地串連-屬性,雙擊Internet協議(TCP/IP)-進階-WINS-點選禁用TCP/IP上的NetBIOS-確定。
關閉445連接埠
運行regedit,開啟到HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/NetBT/Parameters
將建立的DWORD參數命名為“SMBDeviceEnabled”,數值為預設的“0”。
②關閉UDP123連接埠:單擊“開始→設定→控制台”,雙擊“管理工具→服務”,停止WindowsTime服務即可。關閉UDP123連接埠,可以防範某些蠕蟲。
③關閉UDP1900連接埠:在控制台中雙擊“管理工具→服務”,停止SSDPDiscoveryService服務。關閉這個連接埠,可防範DDoS攻擊。
④其他連接埠:可以用網路防火牆來關閉,或者在“控制台”中,雙擊“管理工具→本地安全性原則”,選中“IP安全性原則,在本機電腦”,建立IP安全性原則來關閉。
四、重新導向本機預設連接埠,保護系統安全
如果,原生預設連接埠不能關閉,應該將它“重新導向”。把該連接埠重新導向到另一個地址,這樣即可隱藏公認的預設連接埠,降低受破壞機率,保護系統安全。
例如:你的電腦上開放了遠程終端服務(TerminalServer)連接埠(預設是3389),可以將它重新導向到另一個連接埠(例如1123),方法:
1.在本機上(伺服器端)修改
定位到下列兩個登錄機碼,將其中的PortNumber,全部改成自訂的連接埠(例如1123)即可:
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/TerminalServer/Wds/rdpwd/Tds/tcp
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/TerminalServer/WinStations/RDP-Tcp
2.在用戶端上修改
依次開啟:“開始→程式→附件→通訊→遠端桌面連線”,開啟“遠端桌面連線”視窗,單擊“選項”按鈕擴充視窗,填寫完相關參數後,單擊“常規”下的“另存新檔”按鈕,將該串連參數匯出為.rdp檔案。用記事本開啟該檔案,在檔案最後添加一行:serverport:i:1123(這裡填寫你伺服器自訂的連接埠)。以後,直接雙擊這個.rdp檔案即可串連到伺服器這個自訂連接埠了。