包過濾型防火墻是最常見的防火墻類型,它位于Internet和內部網絡之間。包過濾型防火墻在網絡之間完成數據包轉發的普通路由功能,并利用包過濾規則來允許或拒絕數據包。一般情況下,包過濾型防火墻定義的過濾規則為:內部網絡上的主機可以直接訪問Internet,Internet上的主機對內部網絡上的主機進行訪問是有限制的,這種類型防火墻系統的外網端口默認設置為對沒有特別允許的數據包都拒絕。
包過濾防火墻對所接收的每個數據包做允許或拒絕的動作,防火墻審查每個數據包以便確定其是否與某一條包過濾規則匹配。過濾規則基于IP包的包頭信息,包頭信息中包括 IP源地址、IP目標地址、TCP/UDP目標端口、ICMP消息類型,如果有匹配并且規則允許該數據包通過,那么該數據包就會按照路由表中的信息被轉發;如果匹配并且規則拒絕該數據包,那么該數據包就會被丟棄;如果沒有匹配規則,用戶配置的默認參數會決定是轉發還是丟棄數據包。
網絡管理員可以根據管理的需要設定包過濾防火墻的過濾規則,一般情況下,典型的過濾規則包括以下內容。
(1)允許外部的WWW客戶訪問指定的內部主機。
(2)允許外部的FTP會話與指定的內部主機連接。
(3)允許外部的Telne會話與指定的內部主機連接。
(4)允許外部的SMTP會話與指定的內部主機連接。
(5)允許所有外出的數據包。
(6)拒絕所有來自外部主機的數據包。
針對不同類型的攻擊,需采用不同的方法來應對。
特定的源IP地址欺騙式攻擊(Source IP Address Spoofing Attacks)。這種類型的攻擊的特點是黑客從外部傳輸一個假裝是來自內部主機的數據包,即數據包中所包含的IP地址為內部網絡上的IP地址。希望通過冒用源IP地址來滲透到只使用了源地址安全功能的系統中。在這樣的系統中,來自內部的信任主機的數據包被接收,而來自其他主機的數據包全部被丟棄。對于源IP地址欺騙式攻擊,可以利用丟棄所有來自包過濾防火墻外部端口的,使用內部源地址的數據包的方法來防范。
源路由攻擊(Source Routing Attacks)。這種類型的攻擊的特點是源站點指定了數據包在 Internet中所走的路線。這種類型的攻擊是為了旁路安全措施,并導致數據包循著一個對方不可預料的路徑到達目的地,只需丟棄所有含源路由選項的數據包即可防范這種類型的攻擊。
極小數據段式攻擊(Tiny Fragment Attacks)。這種類型的攻擊的特點是入侵者使用了IP分段的特性,創建極小的分段并強行將TCP頭信息分成多個數據包段,這種攻擊是為了繞過用戶定義的過濾規則。黑客寄希望于包過濾防火墻只檢查第1個分段,而允許其余的分段通過。對于這種類型的攻擊,只要丟棄協議類型為TCP,IP FragmentOffset等于1的數據包就可以進行控制。