如何最佳化Windows防火牆的安全性

安全頻道發表於2020-07-01

如果您忽略或禁用了Windows防火牆,則可能會缺少一些易於設定和維護的良好基本保護。

  自從Windows XP sp2以來,Windows防火牆已經預設啟用,但我們仍然會看到一些因為老習慣而在部署時關閉防火牆的案例。隨著Windows 10和Server 2019,最需要的防火牆策略大多已經內建,設定訪問相對容易一些。但有時使用者仍應該加強Windows防火牆的設定,以更好地保護使用者不受橫向移動和攻擊。

   為二進位制檔案或可執行檔案構建規則

  如果應用程式需要一個特殊的規則,使用者應該基於二進位制檔案或可執行檔案,而不是基於埠進行構建。這樣可以確保防火牆只在應用程式處於活動狀態時開啟。如果使用埠構建防火牆規則,則該埠將保持開放狀態並公開系統。

   識別被阻止的應用程式

  當應用程式被阻止時,Windows裝置會預設發出通知。但IT管理員可能希望使用事件日誌來識別被阻止的應用程式,而不是使用系統托盤中容易錯過的可視彈出視窗。想要確定Windows防火牆阻止了哪些應用程式,首先要搜尋事件5031的事件日誌,它表明Windows防火牆阻止了一個應用程式接受網路上的連線。使用此事件檢測不存在Windows防火牆規則的應用程式。

  設定安全監控

  如果您使用安全事件日誌監視解決方案來監視事件,請記住以下幾點:

  ●如果您有一個預定義的應用程式來執行此事件報告的操作,則監視“Application”不屬於您定義的應用程式的事件。

  ●監視“Application”是否在標準資料夾中(例如,不在System32或Program Files中)或在受限資料夾中(例如,臨時Internet檔案)。

  ●如果在應用程式名稱中有一個預定義的受限子字串或單詞列表(例如,“mimikatz”或“cain.exe”),請在“Application”中檢查這些子字串。

  阻止PowerShell訪問Internet

  您可以使用Windows防火牆來阻止應用程式訪問資源。你可以阻止PowerShell訪問網際網路。下面的第一個規則允許PowerShell訪問本地子網。第二條規則是減少交通流量:

  C:\> netsh advfirewall firewall add rule name=“PS-Allow-LAN" dir=out \

  remoteip=localsubnet action=allow program="c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe" \

  enable=yes

  C:\> netsh advfirewall firewall add rule name=“PS-Deny-All" dir=out \

  action=block program="c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe" \

  enable=yes

  這樣可以保護您的系統免受利用PowerShell呼叫命令和控制計算機啟動勒索軟體和其他攻擊的攻擊。PowerShell不應該被刪除,而應該進行加固和記錄,以確保它按預期使用。

  你還可以為多個版本的PowerShell構建規則:

  C:\> for /R %f in (powershell*.exe) do ( netsh advfirewall firewall add rule name=“PS-Allow-LAN (%f)" dir=out remoteip=localsubnet action=allow program=“%f" enable=yes

  netsh advfirewall firewall add rule name=“PS-Deny-All (%f)" dir=out action=block program=“%f" enable=yes )

防火牆規則阻止PowerShell從網際網路訪問

  您將在出站防火牆規則設定中看到生成的規則:

Windows防火牆規則

  如果PowerShell有意透過另一個位置呼叫二進位制檔案或重新命名自身來隱藏自己,那麼這個過程將無法進行。

  使用PowerShell設定防火牆規則

  您可以按照Microsoft的說明使用PowerShell設定防火牆規則 。例如,要阻止伺服器上的出站埠80,請使用以下PowerShell命令:

  New-NetFirewallRule -DisplayName "Block Outbound Port 80" -Direction Outbound -LocalPort 80 -Protocol TCP -Action Block

  你需要填寫的基本屬性是:

  ●防火牆規則的友好名稱

  ●方向——是否阻塞離開計算機(出站)或進入計算機(入站)的流量

  ●行動——如果滿足規則,採取什麼行動,允許或阻止

  您可以使用許多PowerShell模組來更好地控制和管理Windows防火牆。所有這些都記錄在Netsecurity部分中。

  您需要填寫的基本屬性是:

  ●DisplayName –防火牆規則的友好名稱

  ●方向–阻止流量離開計算機(出站)或進入計算機(入站)

  ●行動-如果滿足規則,採取什麼行動,是允許還是進行阻止。

  您可以使用許多PowerShell模組來更好地控制和管理Windows防火牆。所有內容都記錄在“ Netsecurity” 部分中。

  檢查新的Windows 10安全基準

  不要忘記,微軟在Windows 10的每個版本都會發布新的安全基準。作為基準的一部分,它們包括建議的防火牆策略。

Windows 10 2004基準策略

  預設情況下,應該為域配置檔案和專用配置檔案阻止入站連線。

   定期審計設定

  最後,在檢查網路的安全狀態時,定期隨機抽取一些工作站,並審計它們的設定。檢查每個示例工作站上的防火牆策略。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545812/viewspace-2701491/,如需轉載,請註明出處,否則將追究法律責任。

相關文章