如何使用 Windows 防火牆日誌跟踪防火牆活動
已發表: 2022-01-29
在過濾 Internet 流量的過程中,所有防火牆都具有某種類型的日誌記錄功能,用於記錄防火牆如何處理各種類型的流量。 這些日誌可以提供有價值的信息,例如源和目標 IP 地址、端口號和協議。 您還可以使用 Windows 防火牆日誌文件來監控 TCP 和 UDP 連接以及被防火牆阻止的數據包。
為什麼以及何時防火牆日誌記錄有用
- 驗證新添加的防火牆規則是否正常工作,或者如果它們沒有按預期工作,則對其進行調試。
- 確定 Windows 防火牆是否是應用程序故障的原因 — 使用防火牆日誌記錄功能,您可以檢查禁用的端口開放、動態端口開放、分析帶有推送和緊急標誌的丟棄數據包,並分析發送路徑上丟棄的數據包。
- 幫助和識別惡意活動 - 使用防火牆日誌記錄功能,您可以檢查網絡中是否發生任何惡意活動,但您必須記住它不提供追踪活動來源所需的信息。
- 如果您發現從一個 IP 地址(或一組 IP 地址)反复嘗試訪問您的防火牆和/或其他高配置系統的嘗試不成功,那麼您可能需要編寫一條規則以刪除來自該 IP 空間的所有連接(確保IP 地址沒有被欺騙)。
- 來自內部服務器(如 Web 服務器)的傳出連接可能表明有人正在使用您的系統對位於其他網絡上的計算機發起攻擊。
如何生成日誌文件
默認情況下,日誌文件被禁用,這意味著沒有信息寫入日誌文件。 要創建日誌文件,請按“Win 鍵 + R”打開“運行”框。 鍵入“wf.msc”並按 Enter。 出現“具有高級安全性的 Windows 防火牆”屏幕。 在屏幕右側,單擊“屬性”。

出現一個新對話框。 現在單擊“私人配置文件”選項卡,然後在“日誌記錄部分”中選擇“自定義”。

將打開一個新窗口,並從該屏幕中選擇您的最大日誌大小、位置,以及是否只記錄丟棄的數據包、成功連接或兩者兼而有之。 丟棄的數據包是 Windows 防火牆已阻止的數據包。 成功連接既指傳入連接,也指您通過 Internet 建立的任何連接,但這並不總是意味著入侵者已成功連接到您的計算機。

默認情況下,Windows 防火牆將日誌條目寫入%SystemRoot%\System32\LogFiles\Firewall\Pfirewall.log並僅存儲最後 4 MB 的數據。 在大多數生產環境中,此日誌會不斷寫入您的硬盤,如果您更改日誌文件的大小限制(以記錄長時間的活動),則可能會導致性能影響。 因此,您應該僅在主動解決問題時啟用日誌記錄,然後在完成後立即禁用日誌記錄。
接下來,單擊“公共配置文件”選項卡並重複您為“私人配置文件”選項卡執行的相同步驟。 您現在已經打開了專用和公共網絡連接的日誌。 日誌文件將以 W3C 擴展日誌格式 (.log) 創建,您可以使用您選擇的文本編輯器對其進行檢查或將其導入電子表格。 單個日誌文件可以包含數千個文本條目,因此如果您通過記事本閱讀它們,請禁用自動換行以保留列格式。 如果您在電子表格中查看日誌文件,則所有字段都將按邏輯顯示在列中,以便於分析。

在“具有高級安全性的 Windows 防火牆”主屏幕上,向下滾動直到看到“監控”鏈接。 在“詳細信息”窗格中的“日誌記錄設置”下,單擊“文件名”旁邊的文件路徑。 日誌在記事本中打開。

解釋 Windows 防火牆日誌
Windows 防火牆安全日誌包含兩個部分。 標頭提供有關日誌版本和可用字段的靜態描述性信息。 日誌的主體是作為試圖穿越防火牆的流量的結果而輸入的編譯數據。 這是一個動態列表,新條目不斷出現在日誌底部。 字段在頁面上從左到右書寫。 當沒有可用於該字段的條目時,使用 (-)。

根據 Microsoft Technet 文檔,日誌文件的標題包含:
版本 — 顯示安裝的 Windows 防火牆安全日誌的版本。
軟件 — 顯示創建日誌的軟件的名稱。
時間——表示日誌中的所有時間戳信息都是本地時間。
字段 — 顯示可用於安全日誌條目的字段列表(如果數據可用)。
雖然日誌文件的正文包含:
date — 日期字段以 YYYY-MM-DD 格式標識日期。
time — 本地時間以 HH:MM:SS 格式顯示在日誌文件中。 小時以 24 小時格式引用。
操作 — 當防火牆處理流量時,會記錄某些操作。 記錄的操作是 DROP 用於斷開連接,OPEN 用於打開連接,CLOSE 用於關閉連接,OPEN-INBOUND 用於打開到本地計算機的入站會話,INFO-EVENTS-LOST 用於 Windows 防火牆處理的事件,但是未記錄在安全日誌中。
協議 — 使用的協議,例如 TCP、UDP 或 ICMP。
src-ip — 顯示源 IP 地址(嘗試建立通信的計算機的 IP 地址)。
dst-ip — 顯示連接嘗試的目標 IP 地址。
src-port — 嘗試連接的發送計算機上的端口號。
dst-port — 發送計算機嘗試建立連接的端口。
size — 顯示數據包大小(以字節為單位)。
tcpflags — 有關 TCP 標頭中 TCP 控制標誌的信息。
tcpsyn — 顯示數據包中的 TCP 序列號。
tcpack — 顯示數據包中的 TCP 確認號。
tcpwin — 顯示數據包中的 TCP 窗口大小(以字節為單位)。
icmptype — 有關 ICMP 消息的信息。
icmpcode — 有關 ICMP 消息的信息。
info — 顯示取決於發生的操作類型的條目。
路徑 — 顯示通信的方向。 可用的選項有發送、接收、轉發和未知。
如您所見,日誌條目確實很大,並且可能有多達 17 條與每個事件相關聯的信息。 但是,只有前八條信息對於一般分析很重要。 現在,有了您手中的詳細信息,您就可以分析惡意活動的信息或調試應用程序故障。
如果您懷疑有任何惡意活動,請在記事本中打開日誌文件,並在操作字段中使用 DROP 過濾所有日誌條目,並註意目標 IP 地址是否以 255 以外的數字結尾。如果您發現許多此類條目,則採取數據包的目標 IP 地址的註釋。 完成對問題的故障排除後,您可以禁用防火牆日誌記錄。
排除網絡問題有時可能會非常令人生畏,在排除 Windows 防火牆故障時,推薦的良好做法是啟用本機日誌。 儘管 Windows 防火牆日誌文件對於分析網絡的整體安全性沒有用處,但如果您想監控幕後發生的事情,它仍然是一種很好的做法。
