SMB網路資料傳輸安全分析
林國龍 Bill Lin
- 精誠資訊/恆逸教育訓練中心-資深講師
- 技術分類:網路管理與通訊應用
伺服器訊息區塊(Server Message Block,縮寫為SMB),使用 TCP 445 Port。以Windows 作業系統為主體的區域網路中,最常使用的檔案傳輸通訊協議就是SMB了,登入網域、下載群組原則就是其最經典的應用。即使在混合Linux的網路環境中也會使用到Samba來支援SMB 作為檔案的傳輸協議。
在資訊安全的考量下,一個使用廣泛的網路協議,應該要對其進行適當的安全檢視與分析。就資訊安全的三大目標CIA,我們想分析看看,這個古老的協議是否可以滿足這個時代的安全需求?
1.首先,我們在Windows Server 2016中將資料夾共享,在此等簡易共享設定介面中,沒有設定傳輸加密或簽章的機制:
2.利用Windows 10 透過網路分享存取該共享的目錄,並寫入資料。
3.使用Wireshark擷取網路封包如下: 檔名為明碼呈現 ( gimi.txt ),檔案的內容也是明碼呈現 ( verygimi ):
4.利用伺服器管理員,將加密資料存取功能啟用:
5.再次使用Wireshark擷取網路封包如下: SMB的通訊都由SMB 2改為使用SMB 3,而SMB 3是支援加密功能的。
結論: SMB 早期的版本 1.x、2.x,並未支援加密功能,所以無法滿足資訊安全CIA的三大需求。SMB 3的加密功能可提供SMB資料的端對端加密,並保護資料免於在不受信任的網路上遭到竊取。此外,依照微軟的官方公告:SMB 3加密會使用進階加密標準 AES-CCM 演算法來加密和解密資料。AES-CCM 也會為加密的檔案共用提供資料完整性驗證 (簽署),所以可同時滿足C與I的兩大資安需求,若再加上其MPIO的功能,也可以算是A的其中一環。所以,改革後的新版SMB 3可以滿足現代資訊安全的需求;當然,前提是管理員有做了正確的設定才能實現。