萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 網路應用技術

網路連接埠安全防護實務:從認識到封鎖、重導向的完整防禦體系

前言:連接埠是攻擊面的入口

TCP/IP 協定定義 65,536 個 Port(0–65535),分 TCP/UDP 兩類。駭客掃描開放 Port、利用已知服務漏洞(如 MS08-067 針對 445、CVE-2019-0708 針對 3389)滲透內網。掌握 Port 分類、檢視、封鎖、重導向四大技能,是主機硬化的必修課。

一、連接埠分類速查表

範圍類別特性典型服務
0–1023系統保留/知名埠需 root/Admin 權限綁定,IANA 指派21 FTP、22 SSH、25 SMTP、53 DNS、80 HTTP、110 POP3、443 HTTPS
1024–49151登記埠應用程式向 IANA 登記使用1433 SQL Server、3306 MySQL、3389 RDP、5900 VNC、8080 Proxy
49152–65535動態/私用埠OS 自動分配給客戶端暫時連線Ephemeral ports、P2P、動態 RPC

二、查看本機開放連接埠三大法

1. netstat 指令(內建、無需安裝)

netstat -na          # 數值顯示所有連線與監聽埠
netstat -nab         # 顯示建立連線的進程名(需管理員)
netstat -anob        # 加上 PID

關鍵欄位:Local Address(本機 IP:Port)、State(LISTENING=監聽中、ESTABLISHED=已連線、TIME_WAIT=關閉等待)。

2. PowerShell 進階查詢

Get-NetTCPConnection -State Listen | Select-Object LocalAddress,LocalPort,OwningProcess | Sort-Object LocalPort
Get-Process -Id (Get-NetTCPConnection -State Listen).OwningProcess | Select-Object Id,ProcessName,Path -Unique

3. 圖形化工具

  • TCPView (Sysinternals):即時刷新、高亮新連線、右鍵 Kill Process。
  • CurrPorts (NirSoft):可匯出 CSV/HTML、支援命令列自動化。
  • PortReporter (Microsoft):長期記錄 Port 開閉變化,適合審計。

三、高風險連接埠封鎖清單與作法

協定/埠號風險關閉方法
TCP 135, 139, 445, 593, 1025RPC/DCOM/NetBIOS/SMB 漏洞利用、永恆之藍裝置管理員 → 顯示隱藏裝置 → 非 Plug and Play → NetBT → 停用;或防火牆封鎖
UDP 123NTP 放大攻擊、蠕蟲傳播services.msc → 停用 Windows Time
UDP 137, 138NetBIOS 名稱解析洩露主機名同上 NetBT 停用
UDP 1900SSDP/UPnP 暴力破解、DDoS 反射services.msc → 停用 SSDP Discovery
TCP 3389RDP 暴力破解、藍色保鏢非必要關閉遠端桌面;必須開啟時改 Port + NLA + 防火牆限制來源 IP
TCP 2513, 2745, 3127, 6129 等知名木馬後門(SubSeven, Bagle, MyDoom 變種)防火牆封鎖 + 定期掃毒

四、連接埠重導向:隱藏真實服務埠

原理:將知名服務埠(如 3389)映射到高位非標準埠(如 53389),降低自動掃描命中率。
RDP 修改範例(登錄編輯器):

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:0000d06d   ; 53389 (十進位)

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:0000d06d

用戶端連線:另存 .rdp 檔 → 記事本開啟 → 末行加 server port:i:53389 → 雙擊連線。
注意:重導向非萬能,仍需配合防火牆限制來源 IP、啟用 NLA、強密碼、MFA、VPN/堡壘機等纵深防禦。

五、自動化防護腳本範例(PowerShell)

# 封鎖高風險埠
$blockPorts = @(135,139,445,593,1025,3389,2513,2745,3127,6129)
foreach ($p in $blockPorts) {
    New-NetFirewallRule -DisplayName "Block TCP $p" -Direction Inbound -Protocol TCP -LocalPort $p -Action Block -Profile Any
    New-NetFirewallRule -DisplayName "Block UDP $p" -Direction Inbound -Protocol UDP -LocalPort $p -Action Block -Profile Any
}
# 關閉非必要服務
Set-Service -Name "W32Time" -StartupType Disabled
Set-Service -Name "SSDPSRV" -StartupType Disabled
# 停用 NetBIOS over TCP/IP (需重開機)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NetBT\Parameters" -Name "EnableLMHOSTS" -Value 0

六、持續監控與審計建議

  • 每日排程 netstat -nab > %date:~0,10%_ports.log 留存基線。
  • SIEM/Log 收集器設定告警:新增 LISTENING 埠、非預期進程綁定知名埠、連線數暴增。
  • 定期掃描:Nmap nmap -sS -p- 192.168.1.0/24 驗證對外暴露面。

結語

「關掉不需要的門,把必要的門換把鎖,再裝上監視器。」連接埠管理是主機防禦的基石,配合系統修補、最小權限、應用程式白名單,才能構建真正有彈性的防線。

copyright © 萬盛學電腦網 all rights reserved