防火墻技術基礎知識大全
什么是防火墻?防火墻是一個或一組在兩個網(wǎng)絡之間執(zhí)行訪問控制策略的系統(tǒng),包括硬件和軟件,目的是保護網(wǎng)絡不被可疑的人侵擾。本質(zhì)上,它遵從的是一種允許或阻止業(yè)務來往的網(wǎng)絡通信安全機制,也就是提供可控的過濾網(wǎng)絡通信,只允許授權的通訊。下面就讓小編帶你去看看防火墻基礎知識運用大全,希望對你有所幫助吧
網(wǎng)絡安全中的防火墻技術?
網(wǎng)絡安全與防火墻的關系是目標和手段的關系,保障網(wǎng)絡及業(yè)務系統(tǒng)的安全是目標,使用防火墻執(zhí)行訪問控制攔截不該訪問的請求是手段。要達成安全的目標,手段多種多樣,需要組合使用,僅有防火墻是遠遠不夠的。
狹義的防火墻通常指網(wǎng)絡層的硬件防火墻設備,或主機層的防火墻軟件,一般基于五元組(源IP、源端口、目標IP、目標端口、傳輸協(xié)議)中的部分要素進行訪問控制(放行或阻斷)。
廣義的防火墻,還包括Web應用防火墻(Web Application Firewall,簡稱WAF),主要功能是攔截針對WEB應用的攻擊,如SQL注入、跨站腳本、命令注入、WEBSHELL等,產(chǎn)品形態(tài)多種多樣。
此外,還有NGFW(下一代防火墻),但這個下一代的主要特性(比如往應用層檢測方向發(fā)展等)基本沒有大規(guī)模使用,暫不展開。
在筆者看來,在當前防火墻基礎上擴展的下一代防火墻,未必就是合理的發(fā)展方向,主要原因之一就是HTTPS的普及,讓網(wǎng)絡層設備不再具備應用層的檢測與訪問控制能力。也正是基于這個考慮,Janusec打造的WAF網(wǎng)關,可用于HTTPS的安全防御、負載均衡、私鑰加密等。
網(wǎng)絡安全之最全防火墻技術詳解
一、安全域
防火墻的安全域包括安全區(qū)域和安全域間。
安全區(qū)域
在防火墻中,安全區(qū)域(Security Zone),簡稱為區(qū)域(zone),是一個或多個接口的組合,這些接口所包含的用戶具有相同的安全屬性。每個安全區(qū)域具有全局唯一的安全優(yōu)先級,即不存在兩個具有相同優(yōu)先級的安全區(qū)域。
設備認為在同一安全區(qū)域內(nèi)部發(fā)生的數(shù)據(jù)流動是可信的,不需要實施任何安全策略。只有當不同安全區(qū)域之間發(fā)生數(shù)據(jù)流動時,才會觸發(fā)防火墻的安全檢查,并實施相應的安全策略。
安全域間
任何兩個安全區(qū)域都構成一個安全域間(Interzone),并具有單獨的安全域間視圖,大部分的防火墻配置都在安全域間視圖下配置。
例如:配置了安全區(qū)域 zone1 和 zone2,則在 zone1 和 zone2 的安全域間視圖中,可以配置 ACL 包過濾功能,表示對 zone1 和 zone2 之間發(fā)生的數(shù)據(jù)流動實施 ACL 包過濾。
在安全域間使能防火墻功能后,當高優(yōu)先級的用戶訪問低優(yōu)先級區(qū)域時,防火墻會記錄報文的 IP、 v__ 等信息,生成一個流表。當報文返回時,設備會查看報文的 IP、 v__ 等信息,因為流表里記錄有發(fā)出報文的信息,所以有對應的表項,返回的報文能通過。低優(yōu)先級的用戶訪問高優(yōu)先級用戶時,默認是不允許訪問的。因此,把內(nèi)網(wǎng)設置為高優(yōu)先級區(qū)域,外網(wǎng)設置為低優(yōu)先級區(qū)域,內(nèi)網(wǎng)用戶可以主動訪問外網(wǎng),外網(wǎng)用戶則不能主動訪問內(nèi)網(wǎng)。
基于安全域的防火墻的優(yōu)點
傳統(tǒng)的交換機/路由器的策略配置通常都是圍繞報文入接口、出接口展開的,隨著防火墻的不斷發(fā)展,已經(jīng)逐漸擺脫了只連接外網(wǎng)和內(nèi)網(wǎng)的角色,出現(xiàn)了內(nèi)網(wǎng)/外網(wǎng)/DMZ(Demilitarized Zone)的模式,并且向著提供高端口密度的方向發(fā)展。在這種組網(wǎng)環(huán)境中,傳統(tǒng)基于接口的策略配置方式給網(wǎng)絡管理員帶來了極大的負擔,安全策略的維護工作量成倍增加,從而也增加了因為配置引入安全風險的概率。
除了復雜的基于接口的安全策略配置,某些防火墻支持全局的策略配置,全局策略配置的缺點是配置粒度過粗,一臺設備只能配置同樣的安全策略,滿足不了用戶在不同安全區(qū)域或者不同接口上實施不同安全策略的要求,使用上具有明顯的局限性。
基于安全域的防火墻支持基于安全區(qū)域的配置方式,所有攻擊檢測策略均配置在安全區(qū)域上,配置簡潔又不失靈活性,既降低網(wǎng)絡管理員配置負擔,又能滿足復雜組網(wǎng)情況下針對安全區(qū)域實施不同攻擊防范策略的要求。
二、防火墻工作模式
為了增加防火墻組網(wǎng)的靈活性,設備不再定義整個設備的工作模式,而是定義接口的工作模式,接口的工作模式如下:
路由模式:如果設備接口具有 IP 地址通過三層與外連接,則認為該接口工作在路由模式下。
透明模式:如果設備接口無 IP 地址通過二層對外連接,則認為該接口工作在透明模式下。
如果設備既存在工作在路由模式的接口(接口具有 IP 地址),又存在工作在透明模式的接口(接口無 IP 地址),則認為該設備工作在混合模式下。
1、路由模式
當設備位于內(nèi)部網(wǎng)絡和外部網(wǎng)絡之間,同時為設備與內(nèi)部網(wǎng)絡、外部網(wǎng)絡相連的接口分別配置不同網(wǎng)段的 IP 地址,并重新規(guī)劃原有的網(wǎng)絡拓撲結構。
如圖所示,規(guī)劃了 2 個安全區(qū)域:Trust 區(qū)域和 Untrust 區(qū)域,設備的 Trust 區(qū)域接口與公司內(nèi)部網(wǎng)絡相連, Untrust區(qū)域接口與外部網(wǎng)絡相連。
需要注意的是, Trust 區(qū)域接口和 Untrust 區(qū)域接口分別處于兩個不同的子網(wǎng)中。
當報文在三層區(qū)域的接口間進行轉發(fā)時,根據(jù)報文的 IP 地址來查找路由表。此時設備表現(xiàn)為一個路由器。但是,與路由器不同的是,設備轉發(fā)的 IP 報文還需要進行過濾等相關處理,通過檢查會話表或 ACL 規(guī)則以確定是否允許該報文通過。除此之外,防火墻還需要完成其它攻擊防范檢查。
采用路由模式時,可以完成 ACL(Access Control List)包過濾、 ASPF 動態(tài)過濾等功能。然而,路由模式需要對網(wǎng)絡拓撲結構進行修改,例如,內(nèi)部網(wǎng)絡用戶需要更改網(wǎng)關,路由器需要更改路由配置等。進行網(wǎng)絡改造前,請權衡利弊。
2、透明模式
如果設備工作在透明模式,則可以避免改變拓撲結構。此時,設備對于子網(wǎng)用戶來說是完全透明的,即用戶感覺不到設備的存在。
設備透明模式的典型組網(wǎng)方式如圖所示。設備的 Trust 區(qū)域接口與公司內(nèi)部網(wǎng)絡相連, Untrust 區(qū)域接口與外部網(wǎng)絡相連。需要注意的是, Trust 區(qū)域接口和 Untrust 區(qū)域接口必須處于同一個子網(wǎng)中。
采用透明模式時,只需在網(wǎng)絡中像放置網(wǎng)橋(bridge)一樣插入設備即可,無需修改任何已有的配置。IP 報文同樣會經(jīng)過相關的過濾檢查,內(nèi)部網(wǎng)絡用戶依舊受到防火墻的保護。
如圖所示,安全區(qū)域 A 和 B 在同一網(wǎng)段且有數(shù)據(jù)交互,連接安全區(qū)域 A 和 B 的接口分別加入 VLAN A 和 VLAN B,且必須加入 VLAN A 和 VLAN B 的組成的橋接組,當防火墻在這兩個透明模式的接口間轉發(fā)報文時,需要先進行 VLAN 橋接,將報文入 VLAN 變換為出 VLAN,再根據(jù)報文的 MAC 地址查 MAC 表找到出接口。此時設備表現(xiàn)為一個透明網(wǎng)橋。但是,設備與網(wǎng)橋不同,設備轉發(fā)的 IP 報文還需要送到上層進行過濾等相關處理,通過檢查會話表或 ACL 規(guī)則以確定是否允許該報文通過。此外,防火墻還需要完成其它攻擊防范檢查。
說明:
要求兩個工作在透明模式且有數(shù)據(jù)交互的接口,必須加入到不同的 VLAN 中;同時,這兩個接口必須加入同一個 VLAN 橋接組中,而且只能加入一個橋接組。
設備在透明模式的接口上進行 MAC 地址學習,在透明模式的接口間轉發(fā)報文時,通過查 MAC 表進行二層轉發(fā)。
3、設備的混合模式
如果設備既存在工作在路由模式的接口(接口具有 IP 地址),又存在工作在透明模式的接口(接口無 IP 地址),則認為設備工作在混合模式下。
網(wǎng)絡 A 和 B 是不同的網(wǎng)段,設備連接網(wǎng)絡 A 和 B 的接口是三層接口,對 A 和 B 之間的報文要進行路由轉發(fā);網(wǎng)絡 C 和 D 是相同網(wǎng)段,設備連接網(wǎng)絡 C 和 D 的接口是二層接口, 對 C 和 D 之間的報文要進行 VLAN 橋接和二層轉發(fā)。
三、包過濾防火墻
包過濾防火墻的基本原理是:
通過配置 ACL 實施數(shù)據(jù)包的過濾。實施過濾主要是基于數(shù)據(jù)包中的 IP 層所承載的上層協(xié)議的協(xié)議號、源/目的 IP 地址、源/目的端口號和報文傳遞的方向等信息。透明防火墻模式下,還可以根據(jù)報文的源/目的 MAC 地址、以太類型等進行過濾。
包過濾應用在防火墻中,對需要轉發(fā)的數(shù)據(jù)包,先獲取數(shù)據(jù)包的包頭信息,然后和設定的 ACL 規(guī)則進行比較,根據(jù)比較的結果決定對數(shù)據(jù)包進行轉發(fā)或者丟棄。
設備對包過濾防火墻的支持
? 普通 IP 報文過濾:防火墻基于訪問控制列表 ACL 對報文進行檢查和過濾。防火墻檢查報文的源/目的 IP 地址、源/目的端口號、協(xié)議類型號,根據(jù)訪問控制列表允許符合條件的報文通過,拒絕不符合匹配條件的報文。防火墻所檢查的信息來源于 IP、 TCP 或 UDP 包頭。
? 二層報文過濾:透明防火墻可以基于訪問控制列表 ACL 對二層報文進行檢查和過濾。防火墻檢查報文的源/目的 MAC、以太類型字段,根據(jù)訪問控制列表允許符合條件的報文通過,拒絕不符合匹配條件的報文。防火墻所檢查的信息來源于 MAC 頭。
? 分片報文過濾:包過濾提供了對分片報文進行檢測過濾的支持。包過濾防火墻將識別報文類型,如:非分片報文、首片分片報文、后續(xù)分片報文, 對所有類型的報文都做過濾。對于首片分片報文,設備根據(jù)報文的三層信息及四層信息,與 ACL 規(guī)則進行匹配,如果允許通過,則記錄首片分片報文的狀態(tài)信息,建立后續(xù)分片的匹配信息表。當后續(xù)分片報文到達時,防火墻不再進行 ACL 規(guī)則的匹配,而是根據(jù)首片分片報文的 ACL 匹配結果進行轉發(fā)。另外,對于不匹配 ACL 規(guī)則的報文,防火墻還可以配置缺省處理方式。
四、狀態(tài)防火墻
包過濾防火墻屬于靜態(tài)防火墻,目前存在的問題如下:
? 對于多通道的應用層協(xié)議(如 FTP、 SIP 等),部分安全策略配置無法預知。
? 無法檢測某些來自傳輸層和應用層的攻擊行為(如 TCP SYN、 Java Applets 等)。
? 無法識別來自網(wǎng)絡中偽造的 ICMP 差錯報文,從而無法避免 ICMP 的惡意攻擊。
? 對于 TCP 連接均要求其首報文為 SYN 報文,非 SYN 報文的 TCP 首包將被丟棄。在這種處理方式下,當設備首次加入網(wǎng)絡時,網(wǎng)絡中原有 TCP 連接的非首包在經(jīng)過新加入的防火墻設備時均被丟棄,這會對中斷已有的連接。
因此,提出了狀態(tài)防火墻——ASPF(Application Specific Packet Filter)的概念。ASPF 能夠實現(xiàn)的檢測有:
? 應用層協(xié)議檢測,包括 FTP、 HTTP、 SMTP、 RTSP、 H.323(Q.931、 H.245、 RTP/RTCP)檢測;
? 傳輸層協(xié)議檢測,包括 TCP 和 UDP 檢測,即通用 TCP/UDP 檢測。
ASPF 的功能
ASPF 的主要功能如下:
? 能夠檢查應用層協(xié)議信息,如報文的協(xié)議類型和端口號等信息,并且監(jiān)控基于連接的應用層協(xié)議狀態(tài)。對于所有連接,每一個連接狀態(tài)信息都將被 ASPF 維護,并用于動態(tài)地決定數(shù)據(jù)包是否被允許通過防火墻進入內(nèi)部網(wǎng)絡,以阻止惡意的入侵。
? 能夠檢測傳輸層協(xié)議信息(即通用 TCP/UDP 檢測),能夠根據(jù)源、目的地址及端口號決定 TCP 或 UDP 報文是否可以通過防火墻進入內(nèi)部網(wǎng)絡。
ASPF 的其它功能有:
? ASPF 不僅能夠根據(jù)連接的狀態(tài)對報文進行過濾,還能夠對應用層報文的內(nèi)容加以檢測,提供對不可信站點的 Java Blocking 功能,用于保護網(wǎng)絡不受有害的 Java Applets 的破壞。
? 支持 TCP 連接首包檢測。對 TCP 連接的首報文進行檢測,查看是否為 SYN 報文,如果不是 SYN 報文則根據(jù)當前配置決定是否丟棄該報文。
? 支持 ICMP 差錯報文檢測。正常 ICMP 差錯報文中均攜帶有本報文對應連接的相關信息,根據(jù)這些信息可以匹配到相應的連接。如果匹配失敗,則根據(jù)當前配置決定是否丟棄該 ICMP 報文。
在網(wǎng)絡邊界, ASPF 和包過濾防火墻協(xié)同工作,能夠為企業(yè)內(nèi)部網(wǎng)絡提供更全面的、更符合實際需求的安全策略。
ASPF 基本概念
Java Blocking
Java Blocking 是對通過 HTTP 協(xié)議傳輸?shù)?Java Applets 程序進行阻斷。當配置了 Java Blocking 后,用戶為試圖在 Web 頁面中獲取包含 Java Applets 程序而發(fā)送的請求指令將會被阻斷。
單通道協(xié)議和多通道協(xié)議
單通道協(xié)議:從會話建立到刪除的全過程中,只有一個通道參與數(shù)據(jù)交互,如 SMTP、 HTTP。
多通道協(xié)議:包含一個控制通道和若干其它控制或數(shù)據(jù)通道,即控制信息的交互和數(shù)據(jù)的傳送是在不同的通道上完成的,如 FTP、 RTSP。
應用層協(xié)議檢測基本原理
如圖所示,為了保護內(nèi)部網(wǎng)絡,一般情況下需要在路由器上配置訪問控制列表,以允許內(nèi)部網(wǎng)的主機訪問外部網(wǎng)絡,同時拒絕外部網(wǎng)絡的主機訪問內(nèi)部網(wǎng)絡。但訪問控制列表會將用戶發(fā)起連接后返回的報文過濾掉,導致連接無法正常建立。
當在設備上配置了應用層協(xié)議檢測后, ASPF 可以檢測每一個應用層的會話,并創(chuàng)建一個狀態(tài)表項和一個臨時訪問控制列表(Temporary Access Control List, TACL):
1. 狀態(tài)表項在 ASPF 檢測到第一個向外發(fā)送的報文時創(chuàng)建,用于維護一次會話中某一時刻會話所處的狀態(tài),并檢測會話狀態(tài)的轉換是否正確。
2. 臨時訪問控制列表的表項在創(chuàng)建狀態(tài)表項的同時創(chuàng)建,會話結束后刪除,它相當于一個擴展 ACL 的 permit項。TACL 主要用于匹配一個會話中的所有返回的報文,可以為某一應用返回的報文在防火墻的外部接口上建立一個臨時的返回通道。
下面以 FTP 檢測為例說明多通道應用層協(xié)議檢測的過程。
如圖所示, FTP 連接的建立過程如下:假設 FTP client 以 1333 端口向 FTP server 的 21 端口發(fā)起 FTP 控制通道的連接,通過協(xié)商決定由 FTP server 的 20 端口向 FTP Client 的 1600 端口發(fā)起數(shù)據(jù)通道的連接,數(shù)據(jù)傳輸超時或結束后連接刪除。
FTP 檢測在 FTP 連接建立到拆除過程中的處理如下:
1. 檢查從出接口上向外發(fā)送的 IP 報文,確認為基于 TCP 的 FTP 報文。
2. 檢查端口號確認連接為控制連接,建立返回報文的 TACL 和狀態(tài)表項。
3. 檢查 FTP 控制連接報文,解析 FTP 指令,根據(jù)指令更新狀態(tài)表項。如果包含數(shù)據(jù)通道建立指令,則創(chuàng)建數(shù)據(jù)連接的 TACL;對于數(shù)據(jù)連接,不進行狀態(tài)檢測。
4. 對于返回報文,根據(jù)協(xié)議類型做相應匹配檢查,檢查將根據(jù)相應協(xié)議的狀態(tài)表項和 TACL 決定報文是否允許通過。
5. FTP 連接刪除時,狀態(tài)表及 TACL 隨之刪除。
單通道應用層協(xié)議(如 SMTP、 HTTP)的檢測過程比較簡單,當發(fā)起連接時建立 TACL,連接刪除時隨之刪除TACL 即可。
傳輸層協(xié)議檢測基本原理
這里的傳輸層協(xié)議檢測是指通用 TCP/UDP 檢測。通用 TCP/UDP 檢測與應用層協(xié)議檢測不同,是對報文的傳輸層信息進行的檢測,如源、目的地址及端口號等。通用 TCP/UDP 檢測要求返回到 ASPF 外部接口的報文要與前面從 ASPF 外部接口發(fā)出去的報文完全匹配,即源、目的地址及端口號恰好對應,否則返回的報文將被阻塞。因此對于 FTP、 H.323 這樣的多通道應用層協(xié)議,在不配置應用層檢測而直接配置 TCP 檢測的情況下會導致數(shù)據(jù)連接無法建立。
五、黑名單
黑名單,指根據(jù)報文的源 v__ 和源 IP 地址進行過濾的一種方式。同 ACL 相比,由于進行匹配的域非常簡單,可以以很高的速度實現(xiàn)報文的過濾,從而有效地將特定 IP 地址發(fā)送來的報文屏蔽,同時支持用戶靜態(tài)配置黑名單和防火墻動態(tài)生成黑名單。
設備對黑名單的支持
除了用戶可以靜態(tài)配置黑名單外,當設備發(fā)現(xiàn)特定 IP 地址在進行 IP 掃描攻擊或端口掃描攻擊時,會將發(fā)起攻擊的 IP 主動插入到黑名單中。如果黑名單已使能的話,在此后的一定時間內(nèi),來自這個 IP 地址的任何報文,都可以被黑名單過濾掉。
用戶可以配置靜態(tài)和動態(tài)黑名單的老化時間。
無論命中了黑名單的數(shù)據(jù)包是否為 ACL 規(guī)則允許的訪問,防火墻對此類數(shù)據(jù)包予以丟棄。
用戶可以將黑名單配置信息導出到文件中,也可以通過文件導入黑名單配置。
六、白名單
在防火墻上加入白名單的主機不會再被加入動態(tài)和靜態(tài)黑名單,使用源 v__ 和 IP 地址來表示一個白名單項。白名單主要用在網(wǎng)絡上的特定設備發(fā)出的合法業(yè)務報文具備 IP 掃描攻擊和端口掃描攻擊特性的場合,防止該特定設備被防火墻加入黑名單。
白名單只有靜態(tài)的。
白名單的特點
如果用戶將某個主機的 v__ 和 IP 地址加入防火墻白名單,防火墻就不會對該主機發(fā)出的報文進行 IP 掃描攻擊和端口掃描攻擊檢查,也不會將其 IP 地址生成動態(tài)黑名單,也不允許用戶將白名單主機添加到靜態(tài)黑名單中。
設備對白名單的支持
當設備收到一個報文后,就會檢查是否是來自于白名單項的報文。如果是,設備對該報文就不會進行 IP 掃描攻擊和端口掃描攻擊檢查,也不會將源 IP 生成動態(tài)黑名單,但是其他安全過濾功能,比如 ACL 包過濾、 ASPF、流量統(tǒng)計和監(jiān)控等,還是要進行,以達到防火墻的最大安全過濾效果。
用戶可以配置白名單的老化時間。
用戶可以將白名單配置信息導出到文件中,也可以通過文件導入白名單配置。
端口映射
應用層協(xié)議通常使用知名端口號進行通信。端口映射允許用戶對不同的應用層協(xié)議定義一組新的端口號,還可以指定使用非知名端口的主機范圍。
端口映射只有和 ASPF、 NAT 等針對業(yè)務敏感的特性聯(lián)合使用的時候才具有實際意義。例如在一個企業(yè)私網(wǎng)中,內(nèi)部 FTP 服務器 10.10.10.10 通過 2121 端口提供 FTP 服務。用戶通過 NAT 服務器訪問 FTP 服務器時,只能使用2121 做為端口號。
由于默認情況下 FTP 報文的端口號是 21,這時 FTP 服務器無法將 21 端口的報文識別為 FTP應用。在這樣的場合則需要使用端口映射功能把 2121 端口映射成 FTP 協(xié)議,則 NAT 服務器就把 2121 端口的報文識別為 FTP 協(xié)議報文轉發(fā)給 FTP 服務器,實現(xiàn)用戶對 FTP 服務器的訪問。
設備對端口映射的支持
設備對端口映射的支持都是通過 ACL 來實現(xiàn)的,只有匹配某條 ACL 的報文,才會實施端口映射。端口映射使用基本 ACL(編號 2000~2999)。端口映射在使用 ACL 過濾報文時,使用報文的目的 IP 地址去匹配基本 ACL 規(guī)則中配置的 IP 地址。
如圖所示,外部 PC 通過 Router 訪問內(nèi)部 WWW 服務器(端口號為 8080),在外部 PC 的報文通過 Router 時,命中 ACL 的報文會進行端口映射,只有目的地址是 129.38.2.4 的報文才可以通過 Router 進行端口映射訪問 WWW服務器。
八、攻擊防范
網(wǎng)絡攻擊的種類
網(wǎng)絡攻擊一般分為拒絕服務型攻擊、掃描窺探攻擊和畸形報文攻擊三大類:
1、拒絕服務型攻擊
拒絕服務型 DoS(Denial of Service)攻擊是使用大量的數(shù)據(jù)包攻擊系統(tǒng),使系統(tǒng)無法接受正常用戶的求,或者主機掛起不能正常的工作。主要 DoS 攻擊有 SYN Flood、 Fraggle 等。
拒絕服務攻擊和其他類型的攻擊不同之處在于:攻擊者并不是去尋找進入內(nèi)部網(wǎng)絡的入口,而是阻止合法用戶訪問資源或防火墻。
2、掃描窺探攻擊
掃描窺探攻擊是利用 ping 掃描(包括 ICMP 和 TCP)來標識網(wǎng)絡上存活著的系統(tǒng),從而準確地指出潛在的目標。利用 TCP 和 UDP 等進行端口掃描,就能檢測出操作系統(tǒng)的種類和潛在的服務種類。
攻擊者通過掃描窺探就能大致了解目標系統(tǒng)提供的服務種類,為進一步侵入系統(tǒng)做好準備。
3、畸形報文攻擊
畸形報文攻擊是通過向目標系統(tǒng)發(fā)送有缺陷的 IP 報文,使得目標系統(tǒng)在處理這樣的 IP 包時會出現(xiàn)崩潰,給目標系統(tǒng)帶來損失。主要的畸形報文攻擊有 Ping of Death、 Teardrop 等。
設備對攻擊防范的支持:
Land 攻擊
Land 攻擊,就是把 TCP 的 SYN 包的源地址和目的地址都設置為目標計算機的 IP 地址。這將導致目標計算機向它自己發(fā)送 SYN-ACK 報文,目標計算機又向自己發(fā)回 ACK 報文并創(chuàng)建一個空連接,每一個這樣的連接都將保留直到超時。
各種類型的主機對 Land 攻擊反應不同,許多 UNI__ 主機將崩潰, Windows NT 主機會變得極其緩慢。
Smurf 攻擊
簡單的 Smurf 攻擊,用來攻擊一個網(wǎng)絡。攻擊者向目標網(wǎng)絡發(fā)送 ICMP 應答請求報文,該報文的目標地址設置為目標網(wǎng)絡的廣播地址,這樣,目標網(wǎng)絡的所有主機都對此 ICMP 應答請求作出答復,導致網(wǎng)絡阻塞。如圖所示。
高級的 Smurf 攻擊,主要用來攻擊目標主機。攻擊者向目標主機所在的網(wǎng)絡發(fā)送 ICMP 應答請求報文,該報文的源地址設置為目標主機的地址,這樣,所有的應答報文都將發(fā)送給目標主機。最終導致目標主機處理速度緩慢,甚至崩潰。
Smurf 攻擊報文的發(fā)送需要一定的流量和持續(xù)時間,才能真正構成攻擊。理論上講,目標網(wǎng)絡的主機越多,攻擊的效果越明顯。
WinNuke 攻擊
NetBIOS 作為一種基本的網(wǎng)絡資源訪問接口,廣泛的應用于文件共享,打印共享,進程間通信(IPC),以及不同操作系統(tǒng)之間的數(shù)據(jù)交換。一般情況下, NetBIOS 是運行在 LLC2 鏈路協(xié)議之上的,是一種基于組播的網(wǎng)絡訪問接口。
為了在 TCP/IP 協(xié)議棧上實現(xiàn) NetBIOS, RFC 規(guī)定了一系列交互標準,以及幾個常用的 TCP/UDP 端口,如下。
? 139:NetBIOS 會話服務的 TCP 端口。
? 137:NetBIOS 名字服務的 UDP 端口。
? 136:NetBIOS 數(shù)據(jù)報服務的 UDP 端口。
Windows 操作系統(tǒng)實現(xiàn)了 NetBIOS over TCP/IP 功能,并開放了 139 端口。
WinNuke 攻擊就是利用了 Windows 操作系統(tǒng)的一個漏洞,向這個 139 端口發(fā)送一些攜帶 TCP 帶外(OOB)數(shù)據(jù)報文,但這些攻擊報文與正常攜帶 OOB 數(shù)據(jù)報文不同的是,其指針字段與數(shù)據(jù)的實際位置不符,即存在重疊,Windows 操作系統(tǒng)在處理這些數(shù)據(jù)的時候,就會崩潰。
SYN Flood 攻擊
SYN Flood 攻擊利用 TCP 三次握手的一個漏洞向目標計算機發(fā)動攻擊。攻擊者向目標計算機發(fā)送 TCP 連接請求(SYN 報文),然后對于目標返回的 SYN-ACK 報文不作回應。目標計算機如果沒有收到攻擊者的 ACK 回應,就會一直等待,形成半連接,直到連接超時才釋放。
攻擊者利用這種方式發(fā)送大量 TCP SYN 報文,讓目標計算機上生成大量的半連接,迫使其大量資源浪費在這些半連接上。目標計算機一旦資源耗盡,就會出現(xiàn)速度極慢、正常的用戶不能接入等情況。
攻擊者還可以偽造 SYN 報文,其源地址是偽造的或者不存在的地址,向目標計算機發(fā)起攻擊。
ICMP Flood 攻擊
通常情況下,網(wǎng)絡管理員會用 PING 程序對網(wǎng)絡進行監(jiān)控和故障排除,大概過程如下:
1. 源計算機向接收計算機發(fā)出 ICMP 響應請求報文(ICMP ECHO)。
2. 接收計算機接收到 ICMP 響應請求報文后,會向源計算機回應一個 ICMP 應答報文(ECHO Reply)。
這個過程是需要 CPU 處理的,在有些情況下還可能消耗掉大量的資源。
如果攻擊者向目標計算機發(fā)送大量的 ICMP ECHO 報文(產(chǎn)生 ICMP 洪水),則目標計算機會忙于處理這些 ECHO報文,而無法繼續(xù)處理其它的數(shù)據(jù)報文。
UDP Flood 攻擊
UDP Flood 攻擊的原理與 ICMP Flood 攻擊類似,攻擊者通過發(fā)送大量的 UDP 報文給目標計算機,導致目標計算機忙于處理這些 UDP 報文而無法繼續(xù)處理正常的報文。
地址掃描與端口掃描攻擊攻擊者運用掃描工具探測目標地址和端口,目標地址會對這些探測作出響應,攻擊者根據(jù)這些響應用來確定哪些目標系統(tǒng)是存活著并且連接在網(wǎng)絡上、目標主機開放或者關閉了哪些端口。
Ping of Death 攻擊
所謂 Ping of Death,就是利用一些尺寸超大的 ICMP 報文對系統(tǒng)進行的一種攻擊。
IP 報文的長度字段為 16 位,這表明一個 IP 報文的最大長度為 65535。對于 ICMP 回應請求報文,如果數(shù)據(jù)長度大于 65507,就會使 ICMP 數(shù)據(jù)+IP 頭長度(20)+ICMP 頭長度(8) > 65535。對于有些防火墻或系統(tǒng),在接收到一個這樣的報文后,由于處理不當,會造成系統(tǒng)崩潰、死機或重啟。
Large-ICMP 攻擊
同 ping of death 類似, Large-ICMP 也是利用一些大尺寸的 ICMP 報文對系統(tǒng)進行的一種攻擊,與 ping of death 不同的是, Large-ICMP 報文的長度不會超過 IP 報文的最大長度 65535,但是對一些操作系統(tǒng)也會造成破環(huán)。
需要在防火墻上配置允許通過的 ICMP 報文的最大長度。
ICMP-Unreachable 攻擊
某些系統(tǒng)在收到網(wǎng)絡(報文類型字段為 3,代碼字段為 0)或主機(報文類型字段為 3,代碼字段為 1)不可達的ICMP 報文后,對于后續(xù)發(fā)往此目的地的報文直接認為不可達。
攻擊者利用這種機制,向目標主機發(fā)送虛假的 ICMP-Unreachable 報文,干擾了目標主機的路由信息,影響了報文發(fā)送。
ICMP-Redirect 攻擊
ICMP-Redirect 攻擊和 ICMP-Unreachable 攻擊類似。
網(wǎng)絡設備可以向同一個子網(wǎng)的主機發(fā)送 ICMP 重定向報文,請求主機修改路由。
攻擊者利用這個原理,跨越網(wǎng)段向另外一個網(wǎng)絡的目標主機發(fā)送虛假的重定向報文,以改變目標主機的路由表。
這種攻擊干擾了目標主機的路由信息,影響了報文發(fā)送。
IP-fragment 攻擊
IP 報文中有幾個字段與分片有關:DF(Don’ t Fragmentate)位、 MF 位、 Fragment Offset、 Length。
如果上述字段的值出現(xiàn)矛盾,而設備處理不當,會對設備造成一定的影響,甚至癱瘓。矛盾的情況有:
? DF 位被置位,而 MF 位同時被置位或 Fragment Offset 不為 0。
? DF 位為 0,而 Fragment Offset + Length > 65535。
另外,由于分片報文可以增加目的設備緩沖和重組的負擔,應直接丟棄目的地址為設備本身的分片報文。
Teardrop 攻擊
在網(wǎng)絡傳輸?shù)倪^程中,如果 IP 報文的長度超過鏈路層的 MTU(最大傳輸單元),就會進行分片。在 IP 報頭中有一個偏移字段(OFFSET)和一個分片標志(MF),如果 MF 標志設置為 1,則表明這個 IP 報文是一個大 IP包的分片,其中偏移字段指出了這個片斷在整個 IP 包中的位置。接收端可以根據(jù)報文頭中的這些信息還原該 IP包。
比如,一個較大的報文在 MTU 較小的鏈路上傳輸?shù)臅r候,被分成了兩個 IP 報文,這兩個 IP 報文將在目的端進行組裝,還原為原始的 IP 報文。
如果一個攻擊者打破這種正常情況,把偏移字段設置成不正確的值,即可能出現(xiàn)重合或斷開的情況。某些 TCP/IP協(xié)議棧在收到類似這種含有重疊偏移的偽造分段時會崩潰,這就是所謂的 Teardrop 攻擊。
Fraggle 攻擊
Fraggle 攻擊的原理與 Smurf 攻擊的原理類似,不過, Fraggle 攻擊發(fā)送的是 UDP 報文而非 ICMP 報文。因為發(fā)送的是 UDP 報文, Fraggle 攻擊可以穿過一些阻止 ICMP 報文進入的防火墻。
Fraggle 攻擊利用的原理是:UDP 端口 7(ECHO)和端口 19(Chargen)在收到 UDP 報文后,都會產(chǎn)生回應。如下:
? UDP 的 7 號端口收到報文后,會象 ICMP Echo Reply 一樣回應收到的內(nèi)容。
? UDP 的 19 號端口在收到報文后,會產(chǎn)生一串字符流。
這兩個 UDP 端口都會產(chǎn)生大量應答報文,擠占網(wǎng)絡帶寬。
攻擊者可以向目標主機所在的網(wǎng)絡發(fā)送源地址為被攻擊主機、而目的地址為其所在子網(wǎng)的廣播地址或子網(wǎng)網(wǎng)絡地址的 UDP 報文,目的端口號為 7(ECHO)或 19(Chargen)。子網(wǎng)中啟用了此功能的每個系統(tǒng)都會向受害主機發(fā)送回應報文,從而產(chǎn)生大量的流量,導致受害網(wǎng)絡的阻塞或受害主機崩潰。
如果目標主機所在網(wǎng)絡上的主機沒有啟動這些功能,這些主機將產(chǎn)生一個 ICMP 不可達消息,仍然消耗帶寬。也可將源端口改為端口 19(Chargen) ,目的端口為 7(ECHO),這樣會自動不停地產(chǎn)生回應報文,其危害性更大。
Tracert 攻擊
Tracert 是利用 TTL(Time To Live)為 0 時返回的 ICMP 超時報文,和達到目的地時返回的 ICMP 端口不可達報文來發(fā)現(xiàn)報文到達目的地所經(jīng)過的路徑。
攻擊者可以利用 Tracert 窺探網(wǎng)絡的結構。對網(wǎng)絡造成潛在的危險。
畸形 TCP 報文攻擊
畸形 TCP 報文是通過故意錯誤設置 TCP 頭中的 6 個標記位,造成接收方 TCP 協(xié)議棧的處理錯誤,達到攻擊的目的。
九、流量統(tǒng)計及監(jiān)控
防火墻不僅要對數(shù)據(jù)流量進行監(jiān)控,還要對內(nèi)外部網(wǎng)絡之間的連接發(fā)起情況進行檢測,進行大量的統(tǒng)計計算與分析。防火墻的統(tǒng)計分析一方面可以通過專門的分析軟件對日志信息進行事后分析,另一方面,防火墻系統(tǒng)本身可以完成一部分分析功能,具有一定的實時性。
比如,通過分析外部網(wǎng)絡向內(nèi)部網(wǎng)絡發(fā)起的 TCP/UDP 連接數(shù)是否超過設定閾值,可以確定是否需要限制該方向發(fā)起新連接,或者限制向內(nèi)部網(wǎng)絡某一 IP 地址發(fā)起新連接。
圖是防火墻的一個典型應用示例,當啟動了外部網(wǎng)絡到內(nèi)部網(wǎng)絡的基于 IP 地址的統(tǒng)計分析功能時,如果外部網(wǎng)絡對 Web 服務器 129.1.9.1 發(fā)起的 TCP 連接數(shù)超過了設定的閾值,將限制外部網(wǎng)絡向該服務器發(fā)起新連接,直到連接數(shù)降到正常范圍。
設備支持的流量統(tǒng)計及監(jiān)控方法如下:
系統(tǒng)級的流量統(tǒng)計和監(jiān)控
系統(tǒng)級的流量統(tǒng)計和監(jiān)控,對系統(tǒng)中所有啟用了防火墻功能的安全域間的數(shù)據(jù)流生效,即設備統(tǒng)計所有安全域間的 ICMP、 TCP、 UDP 等連接數(shù)。當連接數(shù)超過配置閾值時,設備采取限制連接措施,直至連接數(shù)降至閾值以下。
基于安全區(qū)域的流量統(tǒng)計和監(jiān)控
基于安全區(qū)域的流量統(tǒng)計和監(jiān)控,對本安全區(qū)域和其他安全區(qū)域之間的數(shù)據(jù)流生效,即設備會統(tǒng)計本安全區(qū)域和其他所有安全域間建立的 TCP、 UDP 等連接總數(shù)。當本安全區(qū)域和其他所有安全域間建立的連接總數(shù)或者某個方向的連接總數(shù)超過配置的閾值時,設備采取限制連接數(shù)措施,直至連接數(shù)降至閾值以下。
基于 IP 地址的流量統(tǒng)計和監(jiān)控
基于 IP 地址的流量統(tǒng)計和監(jiān)控,用于統(tǒng)計和監(jiān)控安全區(qū)域中單個 IP 地址所建立的 TCP/UDP 連接。設備通過分析源 IP 地址發(fā)起或目的地址接收的 TCP 或 UDP 連接總數(shù)是否超過設定的閾值,可以確定是否需要限制該方向的新的連接的發(fā)起,以防止系統(tǒng)受到惡意的攻擊或因系統(tǒng)太忙而發(fā)生拒絕服務的情況。
當 TCP/UDP 連接數(shù)降至閾值以下后,源 IP 地址或目的地址可以重新發(fā)起或者接受 TCP 或 UDP 連接。
十、防火墻日志
防火墻可以實時記錄防火墻的動作和狀態(tài)(例如實施了某種防火墻措施、檢測到某種網(wǎng)絡攻擊等),并將信息記錄到日志中。
對日志內(nèi)容的分析和歸檔,能夠使管理員檢查防火墻的安全漏洞、何時何人試圖違背安全策略、網(wǎng)絡攻擊的類型,實時的日志記錄還可以用來檢測正在進行的入侵。
當需要對防火墻的動作和狀態(tài)進行記錄,以便檢查防火墻的安全漏洞、檢測網(wǎng)絡攻擊和入侵等,可以配置防火墻日志功能。
設備對防火墻日志的支持
黑名單日志
設備在發(fā)現(xiàn)有地址掃瞄、端口掃瞄等攻擊的時候,在黑名單使能的情況下會動態(tài)生成黑名單日志。
手動加入的黑名單同樣也會生成黑名單日志。
動態(tài)生成的黑名單、手動加入的靜態(tài)黑名單到老化時間之后,會生成解除黑名單日志。
攻擊日志
設備發(fā)現(xiàn)各種攻擊類型后,會生成攻擊日志,記錄攻擊類型和參數(shù)。
流量監(jiān)控日志
當系統(tǒng)全局、區(qū)域出入的會話數(shù)超過所配置的連接數(shù)閾值上限時,設備會生成流量監(jiān)控日志,當會話數(shù)低于所配置的連接數(shù)閾值下限時,設備會生成流量恢復日志。
流日志
設備的流日志是在會話表老化的情況下,封裝流日志信息,發(fā)送到日志服務器。
十一、虛擬防火墻
近年來小型私有網(wǎng)絡不斷增加,這些網(wǎng)絡一般對應小型企業(yè)。此類用戶有如下特點:
? 有較強的安全防范需求。
? 經(jīng)濟上無法負擔一臺專有安全設備。
設備支持從邏輯上劃分為多臺虛擬防火墻,分別為多個小型私有網(wǎng)絡提供獨立的安全保障。
每臺虛擬防火墻都是 v__(Virtual Private Network)實例(v__-Instance)、安全實例的綜合體。它能夠為虛擬防火墻用戶提供私有的路由轉發(fā)平面、安全服務
v__ 實例
v__ 實例為虛擬防火墻用戶提供相互隔離的 v__ 路由,與虛擬防火墻一一對應。這些 v__ 路由將為各虛擬防火墻接收的報文提供路由支持。
安全實例
安全實例為虛擬防火墻用戶提供相互隔離的安全服務,與虛擬防火墻一一對應。這些安全實例具備私有的接口、安全區(qū)域、安全域間、 ACL 和 NAT 規(guī)則,并能為虛擬防火墻用戶提供黑名單、包過濾、流量統(tǒng)計和監(jiān)控、攻擊防范、 ASPF 和 NAT 等私有的安全服務。
十二、防火墻主備
防火墻設備是所有信息流都必須通過的單一點,一旦出現(xiàn)故障所有信息流都會中斷。保障信息流不中斷至關重要,這就需要解決防火墻設備單點故障問題。
為了解決這一問題,可以由兩臺防火墻實現(xiàn)冗余路由備份,其中一臺為主用(Master)防火墻,另一臺為備用(Backup)防火墻。主用和備用防火墻各接口分別連接相應的安全區(qū)域。防火墻主備狀態(tài)由 VRRP 協(xié)議協(xié)商確定,通過 HSB 協(xié)議實現(xiàn)防火墻會話表項的同步。
防火墻主備
防火墻是狀態(tài)防火墻,只檢查會話流的首包,并動態(tài)生成會話表項。對于每一個動態(tài)生成的會話連接,防火墻上都有一個會話表項與之對應,會話表項中記錄了用戶會話的狀態(tài)信息,后續(xù)報文(包括返回報文)只有匹配會話表項才能通過防火墻。
如圖所示, Firewall A 作為 Master 設備并承擔所有數(shù)據(jù)傳輸任務,其上創(chuàng)建了很多動態(tài)會話表項;而 Firewall B則處于備份狀態(tài),沒有任何流量經(jīng)過。
如果 Firewall A 出現(xiàn)故障或相關鏈路出現(xiàn)問題, Firewall B 將會切換狀態(tài)變成新的 Master,并開始承擔傳輸任務。
如果狀態(tài)切換前,會話表項沒有備份到 Firewall B,則先前經(jīng)過 Firewall A 的所有會話都會因為無法匹配 Firewall B 的會話表而無法通信,導致業(yè)務中斷。
為了實現(xiàn) Master 防火墻出現(xiàn)故障時能由 Backup 防火墻平滑地接替工作,在 Master 和 Backup 的防火墻之間實時備份會話表和狀態(tài)信息;當前防火墻主備通過 HSB 機制實現(xiàn)在 Master 和 Backup 防火墻之間進行會話表和狀態(tài)信息的備份和同步。
防火墻主備的狀態(tài)要求
防火墻的 VRRP 狀態(tài)需要保持一致,這樣表示防火墻上和各安全區(qū)域相連的若干接口狀態(tài)相同,即同時處于主用狀態(tài)或同時處于備用狀態(tài)。
?假設 Firewall A 和 Firewall B 的 VRRP 狀態(tài)一致,即 Firewall A 的所有接口均為主用狀態(tài), Firewall B 的所有接口均為備用狀態(tài)。此時, Trust 區(qū)域的 PC1 訪問 Untrust 區(qū)域的 PC2,報文的轉發(fā)路線為(1)-(2)-(3)-(4)。Firewall A 轉發(fā)訪問報文時,動態(tài)生成會話表項。當 PC2 的返回報文經(jīng)過(5)-(6)-(7)-(8)到達 Firewall A 時,則由于能夠匹配會話表項,從而順利返回,通信順暢。
? 假設 Firewall A 和 Firewall B 的 VRRP 狀態(tài)不一致,例如, Firewall B 與 Trust 區(qū)域相連的接口為備用狀態(tài),但與 Untrust 區(qū)域的接口為主用狀態(tài),則 PC1 的報文通過 Firewall A 設備到達 PC2 后,在 Firewall A 上動態(tài)生成會話表項。PC2 的返回報文通過路線(5)-(9)返回。此時由于 Firewall B 上沒有相應數(shù)據(jù)流的會話表項,在沒有其他報文過濾規(guī)則允許通過的情況下, Firewall B 將丟棄該報文,導致會話中斷。
另外,下行與交換機相連的鏈路可以通過交換機的 SmartLink 確保鏈路的可靠性,同時在兩臺防火墻設備間通過直連鏈路確保下行鏈路故障時能夠通過此鏈路將相應流量轉發(fā)到對端防火墻。
了解防火墻
當今市場上有兩類主導性的防火墻:應有代理(application pro__y)和包過濾網(wǎng)關(packet filtering gateway)。盡管應有代理被廣泛地認定比包過濾網(wǎng)關安全,他們的限制特性和對性能的影響卻使得它們的應有場合局限于從因特網(wǎng)上其它公司外的分組流動,而不是從本公司的Web服務器外出的分組流動。相反,包過濾網(wǎng)關或者更尖端的有狀態(tài)分組過濾網(wǎng)關則能在許多具有高性能要求的較大機構中找到。
防火墻自誕生以來以保護無數(shù)的網(wǎng)絡或計算機多過了窺視的眼睛和邪惡的破壞者,然而他們還遠遠不是治理安全的萬靈丹。市場上每個防火墻產(chǎn)品幾乎每年都有安全脆弱點被發(fā)現(xiàn)。更糟糕的是,大多數(shù)防火墻往往配置不當且無人維護和監(jiān)視,從而把它們轉化成了電子制門器(保持大門敞開著)。而黑客的責任就是攻克這些脆弱的或無人看管的防火墻,然后告訴它的主人,你的門爛了,還是再換個更好的吧!這次是個警告,如果下次進來的人沒有良心,你就慘了。
那防火墻的工作原理又是什么呢?
防火墻常常就是一個具備包過濾功能的簡單路由器,支持Internet安全。這是使Internet連接更加安全的一種簡單方法,因為包過濾是路由器的固有屬性。
包是網(wǎng)絡上信息流動的單位。網(wǎng)絡上傳輸?shù)奈募话阍诎l(fā)出端被劃分成一個一個的IP包,經(jīng)過網(wǎng)上的中間站,最終傳到目的地,然后這些IP包中的數(shù)據(jù)又重新組成原來的文件。
每個IP包有兩個部分:數(shù)據(jù)部分和包頭。包頭中含有源地址和目標地址等信息。(這一部分的內(nèi)容要有TCP/IP的基礎)
IP包的過濾一直是一種簡單而有效的方法,它通過件包頭信息和管理員設定的規(guī)則表比較,讀出并拒絕那些不符合標準的包,過濾掉不應入站的信息。
IP包過濾規(guī)則一般基于部分的或全部的IP包信息,例如對于TCP包頭信息為:
1. IP協(xié)議類型
2. IP源地址
3. IP目標地址
4. IP選擇域的內(nèi)容
5. TCP源端口號
6. TCP目標端口號
7. TCP ACK標識,指出這個包是否是聯(lián)接中的第一個包,是否是對另一個包的響應
IP包過濾的一個重要的局限是它不能分辨好的和壞的用戶,只能區(qū)分好的飽和壞的包。包過濾只能工作在由黑白分明安全策略的網(wǎng)中,即內(nèi)部是好的,外部是可疑的。對于FTP協(xié)議,IP包過濾就不十分有效。FTP允許聯(lián)接外部服務器并使聯(lián)接返回到端口20,這幾乎毫不費力的通過那些過濾器。
防火墻/應用網(wǎng)關(Application Gateways)還有一種常見的防火墻是應用代理防火墻(有時也稱為應用網(wǎng)關)。這些防火墻的工作方式和過濾數(shù)據(jù)報的防火墻、以路由器為基礎的防火墻的工作方式稍有不同。它是基于軟件的;當某遠程用戶想和一個運行應用網(wǎng)關的網(wǎng)絡建立聯(lián)系時,此應用網(wǎng)關會阻塞這個遠程聯(lián)接,然后對聯(lián)接請求的各個域進行檢查。如果此聯(lián)接請求符合預定的規(guī)則,網(wǎng)關便會在遠程主機和內(nèi)部主機之間建立一個”橋”,”橋”是指兩種協(xié)議之間的轉換器。例如,一個典型的網(wǎng)關一般不將IP數(shù)據(jù)報轉發(fā)給內(nèi)部網(wǎng)絡,而是自己作為轉換器和解釋器進行轉換過程。這種方式的時被稱之為man-in-the-middle configuration。這種應用網(wǎng)關代理模型的長處是不進行IP報文轉發(fā),更為重要的是可以在”橋”上設置更多的控制,而且這種工具還能提供非常成熟的日志功能。然而所有的這些優(yōu)點都是通過犧牲速度換取的,因為每次聯(lián)接請求和所有發(fā)往內(nèi)部網(wǎng)的報文在網(wǎng)關上經(jīng)歷接受、分析、轉換和再轉發(fā)等幾個過程,完成這些過程所需時間顯然比完成以路由器為基礎的數(shù)據(jù)報過濾的時間長得多。
IP轉發(fā)(IP forwarding)是指收到一個外部請求的服務器將此請求信息以IP報文的格式轉發(fā)給內(nèi)部網(wǎng)。讓IP轉交功能有效是一個嚴重的錯誤:如果你允許IP轉發(fā),那么入侵者便能從外部進入你的內(nèi)部網(wǎng)絡并訪問其上的工作站。
透明性是代理服務器的主要優(yōu)點。用戶端,代理服務給用戶的假象是:用戶是直接與真正的服務器連接;而在服務器端代理服務給用戶的假象是:服務器是直接面對連在代理服務器上的用戶。要注意的是,代理服務器只有在需要嚴格控制內(nèi)部與外部主機直接聯(lián)接的場合才是一個比較有效的機制。而雙宿主主機與包過濾也是具有這種特性的另外兩種機制。如果內(nèi)、外部主機能夠直接相互通信,那么用戶就沒有必要使用代理服務,在這種情況下,代理服務也不可能起作用。而這種由旁路的拓撲與網(wǎng)絡的信息安全是相矛盾的。
最常見的防火墻是按照基本概念工作的邏輯設備,用于在公共網(wǎng)上保護私人網(wǎng)絡。配置一堵防火墻是很簡單的,步驟如下:
1. 選擇一臺具有路由能力的PC
2. 加上兩塊接口卡,例如以太網(wǎng)卡或串行卡等
3. 禁止IP轉發(fā)
4. 打開一個網(wǎng)卡通向Internet
5. 打開另一個網(wǎng)卡通向內(nèi)部網(wǎng)
現(xiàn)在,兩個不同的網(wǎng)絡被這個防火墻分割開來。由于內(nèi)部網(wǎng)不能再訪問Internet,所以訪問網(wǎng)際空間就必須經(jīng)過防火墻。欲進入內(nèi)部網(wǎng)絡,必須先通過防火墻。
而且,若站點正處于防火墻保護之下,對它的訪問也是被禁止的,用戶不得不先登陸防火墻后在進入Internet,這時便需要代理服務器了。因此,為了使防火墻有效,必須超越其概念設計。
防火墻的設計列有好幾種,但都可分為兩類:網(wǎng)絡級防火墻及應用級防火墻。它們采用不同的方式提供相同的功能,任何一種都能適合站點防火墻的保護需要。而且現(xiàn)在有些防火墻產(chǎn)品具有雙重性能。
1. 網(wǎng)絡級防火墻
這一類型的防火墻,通常使用簡單的路由器,采用包過濾技術,檢查個人的IP包并決定允許或不允許基于資源的服務、目的地址及時用端口。
最新式的防火墻較之以前更為復雜,它能監(jiān)控通過防火墻的聯(lián)接狀態(tài)等等。這是一類快速且透明的防火墻,易于實現(xiàn)。
2. 應用級防火墻
應用級防火墻通常是運行在防火墻上的軟件部分。這一類的設備也稱為應用網(wǎng)關。它是運行代理服務器軟件的計算機。由于代理服務器在同一級上運行,所以它對采集訪問信息并加以控制是非常有用的。因此,此類防火墻能提供關于出入站訪問的詳細信息,從而較之網(wǎng)絡級防火墻,安全性更強。
若打算將服務器安在內(nèi)部網(wǎng)內(nèi),由于代理服務器將阻塞大多數(shù)連結,因此與服務器的連結受到很大限制。但這是一個高度安全的設計,適用于內(nèi)部網(wǎng)上高水平的保護。
若站點上已實現(xiàn)了類似的防火墻,也許想將Web服務器至于防火墻之外(Web A),并且可能通過一個代理服務器在內(nèi)部網(wǎng)與Web服務器之間建立聯(lián)接。但這很可能使站點出現(xiàn)安全漏洞。
還有許多種類的防火墻,它們都有自己的特色:
1. 隔離式過濾器
2. 堡壘主機
3. 雙宿主機網(wǎng)關
4. 安全IP通道
5. IP過濾
6. Circuit網(wǎng)關
防火墻可以極大的增強Web站點的安全。根據(jù)不同的需要,防火墻在網(wǎng)絡中配置有很多方式。根據(jù)防火墻和Web服務器所處的位置,總可以分為3種配置:Web服務器置于防火墻之內(nèi)、Web服務器置于防火墻之外和Web服務器置于防火墻之上。
將Web服務器裝在防火墻內(nèi)的好處是它得到了安全保護,不容易被黑客闖入,但不易被外界所用。當Web站點主要用于宣傳企業(yè)形象時,顯然這不是好的配置,這時應當將Web服務器放在防火墻之外。
事實上,為了保證組織內(nèi)部網(wǎng)絡的安全,將Web服務器完全置于防火墻之外使比較合適的。在這種模式中,Web服務器不受保護,但內(nèi)部網(wǎng)則處于保護之下,即使黑客進入了你的Web站點,內(nèi)部網(wǎng)仍是安全的。代理支持在此十分重要,特別是在這種配置中,防火墻對Web站點的保護幾乎不起作用。
一些管理員試圖在防火墻機器上運行Web服務器,以此增強Web站點的安全性。這種配置的缺點是,一旦服務器有一點毛病,整個系統(tǒng)全處于危險之中。
這種基本配置有多種變化,包括利用代理服務器、雙重防火墻、利用成對的”入”、”出”服務器提供對公眾信息的訪問及內(nèi)部網(wǎng)絡的私人文檔的訪問。
有一些防火墻的結構不允許將Web服務器設置其外。在這種情況下將不得不打通防火墻??梢赃@樣作:
1. 允許防火墻傳遞對端口80的請求,訪問請求或被限制到Web站點或從Web站點返回(假定你正使用”screened host”型防火墻;
2. 可以在防火墻機器上安裝代理服務器,但需一個”雙宿主網(wǎng)關”類型的防火墻。來自Web服務器的所有訪問請求在被代理服務器截獲之后才傳給服務器。對訪問請求的回答直接返回給請求者。
現(xiàn)實世界要想繞過配置得當?shù)姆阑饓赡茈y以置信的困難。然而使用諸如traceroute、hping 和nmap之類信息匯集工具,共記者可以發(fā)現(xiàn)(或者至少能夠推斷)經(jīng)由目標網(wǎng)點的路由器和防火墻的訪問通路,并確定所用防火墻的類型。當前發(fā)現(xiàn)的許多脆弱點的根源在于防火墻的誤配置和缺乏管理性監(jiān)視,然而這兩種條件一旦被發(fā)掘,所導致的后果可能是毀滅性的。
代理和包過濾這兩種防火墻中都存在一些特定的脆弱點,包括未加認證的Web和telnet訪問以及本地主機登錄。對于其中大多數(shù)脆弱點,可采取相應的對策防止對它們的發(fā)掘,然而有些脆弱點卻只能監(jiān)測是否有人在發(fā)掘它們而已。
許多人深信防火墻不可逆轉的將來是應用代理和有狀態(tài)分組包過濾技術的有機結合,這種結合提供了限制誤配置的一些技巧。反應性特性也將成為下一代防火墻的部分內(nèi)容。NAI已在他們的Active Security體系結構上實現(xiàn)了某種形式的反應性特性。它允許一個被檢測到的入侵活動引發(fā)受影響防火墻的預想設計好的變動。舉例來說,如果某個IDS系統(tǒng)檢測到了ICMP隧道攻擊,它就會接著指導防火墻關閉對進入ICMP回射請求分組的響應。這樣的情形總是存在拒絕服務性攻擊的機會,這也是需要知識豐富的所謂安全人員的原因。
防火墻技術基礎知識大全
下一篇:防火墻基礎知識大全科普