共用方式為


在 Windows Server 中接聽 TCP 連接埠 445 時,無法存取 SMB 共用

本文提供無法存取伺服器消息塊 (SMB) 共用資源的問題解決方案,即使目標 Windows Server 中已啟用共用資源也一定。

原始 KB 編號: 4471134

徵兆

即使目標 Windows Server 上啟用共用資源,您也無法存取伺服器訊息塊 (SMB) 共用資源。 當您執行 netstat 命令以顯示網路連線時,結果會顯示 TCP 連接埠 445 正在接聽。 不過,網路追蹤顯示 TCP 連接埠 445 上的通訊失敗,如下所示:

來源 Destination 通訊協定 描述
用戶端 SERVER TCP TCP:Flags=......S., SrcPort=62535, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=4085616235, Ack=0, Win=8192 (交涉縮放比例0x8) = 8192
用戶端 SERVER TCP TCP:[SynReTransmit #600]Flags=......S., SrcPort=62535, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=4085616235, Ack=0, Win=8192 (交涉縮放比例0x8) = 8192
用戶端 SERVER TCP TCP:[SynReTransmit #600]Flags=......S., SrcPort=62535, DstPort=Microsoft-DS(445), PayloadLen=0, Seq=4085616235, Ack=0, Win=8192 (交涉縮放比例0x8) = 8192

使用下列命令啟用 篩選平台原則變更事件的稽 核之後,您可能會遇到指出封鎖的事件標識碼 5152 等某些事件。

auditpol /set /subcategory:"Filtering Platform Packet Drop" /success:enable /failure:enable

事件識別碼 5152 的範例:

事件記錄檔 事件來源 事件識別碼 訊息文字
安全性 Microsoft-Windows-Security-Auditing 5152 描述:
Windows 篩選平臺已封鎖封包。

應用程式資訊:
進程標識碼:0
應用程式名稱: -
網路資訊:
方向:輸入
來源位址:192.168.88.50
來源埠:52017
目的地位址:192.168.88.53
目的地埠:445
通訊協定:6 篩選資訊:
篩選運行時間標識碼:67017
層次名稱:傳輸
層次運行時間標識碼:12

原因

發生此問題的原因是使用與 Wannacrypt 相同的 SMBv1 弱點的 Adylkuzz 惡意代碼新增了名為 NETBC 的 IPSec 原則,該原則會封鎖使用 TCP 連接埠 445 之 SMB 伺服器上的連入流量。 某些 Adylkuzz-cleanup 工具可以移除惡意代碼,但無法刪除 IPSec 原則。 如需詳細資訊,請參閱 Win32/Adylkuzz.B

解決方法

若要修正此問題,請依照下列步驟操作:

  1. 安裝適用於操作系統的安全性更新 MS17-010 版本。

  2. 請遵循 Win32/Adylkuzz.B[現在該怎麼做] 索引標籤上的步驟。

  3. 使用 Microsoft 安全性掃描器執行掃描。

  4. 檢查IPSec原則是否使用下列命令來封鎖 TCP 連接埠 445(並查看引用的結果以取得範例)。

    netsh ipsec static show policy all
    
    Policy Name: netbc  
    Description: NONE  
    Last Modified: <DateTime>  
    Assigned: YES  
    Master PFS: NO  
    Polling Interval: 180 minutes
    
    netsh ipsec static show filterlist all level=verbose
    
    FilterList Name: block  
    Description: NONE  
    Store: Local Store <WIN>  
    Last Modified: <DateTime>  
    GUID: {ID}  
    No. of Filters: 1  
    Filter(s)  
    ---------  
    Description: 445  
    Mirrored: YES  
    Source IP Address: <IP Address>  
    Source Mask: 0.0.0.0  
    Source DNS Name: <IP Address>  
    Destination IP Address: <IP Address>  
    Destination DNS Name: <IP Address>  
    Protocol: TCP  
    Source Port: ANY  
    Destination Port : 445  
    

    注意

    當您在未受感染的伺服器上執行命令時,沒有任何原則。

  5. 如果IPSec原則存在,請使用下列其中一種方法加以刪除。

    • 執行以下命令:

      netsh ipsec static delete policy name=netbc
      
    • 使用組策略編輯器 (GPEdit.msc):

      本地組原則編輯器/計算機設定/Windows 設定/安全性設定/IPSec 安全性

其他相關資訊

自 2016 年 10 月起,Microsoft一直針對支援的 Windows Server 更新版本使用新的維護模型。 這個用於散發更新的新維護模型可簡化安全性和可靠性問題的解決方式。 Microsoft建議讓您的系統保持最新狀態,以確保系統受到保護,並套用最新的修正程式。

此威脅可以執行下列命令:

netsh ipsec static add policy name=netbc
netsh ipsec static add filterlist name=block
netsh ipsec static add filteraction name=block action=block
netsh ipsec static add filter filterlist=block any srcmask=32 srcport=0 dstaddr=me dstport=445 protocol=tcp description=445
netsh ipsec static add rule name=block policy=netbc filterlist=block filteraction=block
netsh ipsec static set policy name=netbc assign=y

它也可以新增防火牆規則,以使用下列命令來允許連線:

netsh advfirewall firewall add rule name="Chrome" dir=in program="C:\Program Files (x86)\Google\Chrome\Application\chrome.txt" action=allow
netsh advfirewall firewall add rule name="Windriver" dir=in program="C:\Program Files (x86)\Hardware Driver Management\windriver.exe" action=allow