導航:首頁 > 凈水問答 > windows基於包過濾的防火牆

windows基於包過濾的防火牆

發布時間:2021-11-05 06:27:54

❶ 防火牆的包過濾型是基於應用層的防火牆為什麼錯

包過濾防火牆工作在OSI網路參考模型的網路層和傳輸層,去查一下它的工作原理就知道了。

❷ windows防火牆和其他一般的軟體防火牆有什麼異同

windows防火牆完全屬於雞肋,但它還是擁有防火牆的最基礎的功能,例如:包過濾、阻擋外部攻擊。但它沒有其它防火牆的記錄和提示功能,也沒有當前主流防火牆的木馬牆功能。

❸ 包過濾型是基於( )的防火牆

包過濾是一種內置於Linux內核路由功能之上的防火牆類型,其防火牆工作在網版絡層。
1.1.3 包過濾防火牆的權工作原理
(1)使用過濾器。數據包過濾用在內部主機和外部主機之間, 過濾系統是一台路由器或是一台主機。過濾系統根據過濾規則來決定是否讓數據包通過。用於過濾數據包的路由器被稱為過濾路由器。
數據包過濾是通過對數據包的IP頭和TCP頭或UDP頭的檢查來實現的,主要信息有:
* IP源地址
* IP目標地址
* 協議(TCP包、UDP包和ICMP包)
* TCP或UDP包的源埠
* TCP或UDP包的目標埠
* ICMP消息類型
* TCP包頭中的ACK位
* 數據包到達的埠
* 數據包出去的埠
在TCP/IP中,存在著一些標準的服務埠號,例如,HTTP的埠號為80。通過屏蔽特定的埠可以禁止特定的服務。包過濾系統可以阻塞內部主機和外部主機或另外一個網路之間的連接,例如,可以阻塞一些被視為是有敵意的或不可信的主機或網路連接到內部網路中。

❹ 闡述數據包過濾防火牆的工作原理_______.

推薦看一看 朱雁冰 寫的《Windows防火牆與網路封包截獲技術》,上面介紹了三種分別基於用戶態和核心態下的防火牆編譯,雖然他提到的三種技術現在看來都有不足,但是是一本講解詳細的好書~~~!!

防火牆就是一種過濾塞(目前你這么理解不算錯),你可以讓你喜歡的東西通過這個塞子,別的玩意都統統過濾掉。在網路的世界裡,要由防火牆過濾的就是承載通信數據的通信包。

天下的防火牆至少都會說兩個詞:Yes或者No。直接說就是接受或者拒絕。最簡單的防火牆是乙太網橋。但幾乎沒有人會認為這種原始防火牆能管多大用。大多數防火牆採用的技術和標准可謂五花八門。這些防火牆的形式多種多樣:有的取代系統上已經裝備的TCP/IP協議棧;有的在已有的協議棧上建立自己的軟體模塊;有的乾脆就是獨立的一套操作系統。還有一些應用型的防火牆只對特定類型的網路連接提供保護(比如SMTP或者HTTP協議等)。還有一些基於硬體的防火牆產品其實應該歸入安全路由器一類。以上的產品都可以叫做防火牆,因為他們的工作方式都是一樣的:分析出入防火牆的數據包,決定放行還是把他們扔到一邊。

所有的防火牆都具有IP地址過濾功能。這項任務要檢查IP包頭,根據其IP源地址和目標地址作出放行/丟棄決定。看看下面這張圖,兩個網段之間隔了一個防火牆,防火牆的一端有台UNIX計算機,另一邊的網段則擺了台PC客戶機。

當PC客戶機向UNIX計算機發起telnet請求時,PC的telnet客戶程序就產生一個TCP包並把它傳給本地的協議棧准備發送。接下來,協議棧將這個TCP包「塞」到一個IP包里,然後通過PC機的TCP/IP棧所定義的路徑將它發送給UNIX計算機。在這個例子里,這個IP包必須經過橫在PC和UNIX計算機中的防火牆才能到達UNIX計算機。

現在我們「命令」(用專業術語來說就是配製)防火牆把所有發給UNIX計算機的數據包都給拒了,完成這項工作以後,「心腸」比較好的防火牆還會通知客戶程序一聲呢!既然發向目標的IP數據沒法轉發,那麼只有和UNIX計算機同在一個網段的用戶才能訪問UNIX計算機了。

還有一種情況,你可以命令防火牆專給那台可憐的PC機找茬,別人的數據包都讓過就它不行。這正是防火牆最基本的功能:根據IP地址做轉發判斷。但要上了大場面這種小伎倆就玩不轉了,由於黑客們可以採用IP地址欺騙技術,偽裝成合法地址的計算機就可以穿越信任這個地址的防火牆了。不過根據地址的轉發決策機制還是最基本和必需的。另外要注意的一點是,不要用DNS主機名建立過濾表,對DNS的偽造比IP地址欺騙要容易多了。

伺服器TCP/UDP 埠過濾

僅僅依靠地址進行數據過濾在實際運用中是不可行的,還有個原因就是目標主機上往往運行著多種通信服務,比方說,我們不想讓用戶採用 telnet的方式連到系統,但這絕不等於我們非得同時禁止他們使用SMTP/POP郵件伺服器吧?所以說,在地址之外我們還要對伺服器的TCP/ UDP埠進行過濾。

比如,默認的telnet服務連接埠號是23。假如我們不許PC客戶機建立對UNIX計算機(在這時我們當它是伺服器)的telnet連接,那麼我們只需命令防火牆檢查發送目標是UNIX伺服器的數據包,把其中具有23目標埠號的包過濾就行了。這樣,我們把IP地址和目標伺服器TCP/UDP埠結合起來不就可以作為過濾標准來實現相當可靠的防火牆了嗎?不,沒這么簡單。

客戶機也有TCP/UDP埠

TCP/IP是一種端對端協議,每個網路節點都具有唯一的地址。網路節點的應用層也是這樣,處於應用層的每個應用程序和服務都具有自己的對應「地址」,也就是埠號。地址和埠都具備了才能建立客戶機和伺服器的各種應用之間的有效通信聯系。比如,telnet伺服器在埠23偵聽入站連接。同時telnet客戶機也有一個埠號,否則客戶機的IP棧怎麼知道某個數據包是屬於哪個應用程序的呢?

由於歷史的原因,幾乎所有的TCP/IP客戶程序都使用大於1023的隨機分配埠號。只有UNIX計算機上的root用戶才可以訪問1024以下的埠,而這些埠還保留為伺服器上的服務所用。所以,除非我們讓所有具有大於1023埠號的數據包進入網路,否則各種網路連接都沒法正常工作。

這對防火牆而言可就麻煩了,如果阻塞入站的全部埠,那麼所有的客戶機都沒法使用網路資源。因為伺服器發出響應外部連接請求的入站(就是進入防火牆的意思)數據包都沒法經過防火牆的入站過濾。反過來,打開所有高於1023的埠就可行了嗎?也不盡然。由於很多服務使用的埠都大於1023,比如X client、基於RPC的NFS服務以及為數眾多的非UNIX IP產品等(NetWare/IP)就是這樣的。那麼讓達到1023埠標準的數據包都進入網路的話網路還能說是安全的嗎?連這些客戶程序都不敢說自己是足夠安全的。

雙向過濾

OK,咱們換個思路。我們給防火牆這樣下命令:已知服務的數據包可以進來,其他的全部擋在防火牆之外。比如,如果你知道用戶要訪問Web伺服器,那就只讓具有源埠號80的數據包進入網路:

不過新問題又出現了。首先,你怎麼知道你要訪問的伺服器具有哪些正在運行的埠號呢? 象HTTP這樣的伺服器本來就是可以任意配置的,所採用的埠也可以隨意配置。如果你這樣設置防火牆,你就沒法訪問哪些沒採用標准埠號的的網路站點了!反過來,你也沒法保證進入網路的數據包中具有埠號80的就一定來自Web伺服器。有些黑客就是利用這一點製作自己的入侵工具,並讓其運行在本機的80埠!

檢查ACK位

源地址我們不相信,源埠也信不得了,這個不得不與黑客共舞的瘋狂世界上還有什麼值得我們信任呢?還好,事情還沒到走投無路的地步。對策還是有的,不過這個辦法只能用於TCP協議。

TCP是一種可靠的通信協議,「可靠」這個詞意味著協議具有包括糾錯機制在內的一些特殊性質。為了實現其可靠性,每個TCP連接都要先經過一個「握手」過程來交換連接參數。還有,每個發送出去的包在後續的其他包被發送出去之前必須獲得一個確認響應。但並不是對每個TCP包都非要採用專門的ACK包來響應,實際上僅僅在TCP包頭上設置一個專門的位就可以完成這個功能了。所以,只要產生了響應包就要設置ACK位。連接會話的第一個包不用於確認,所以它就沒有設置ACK位,後續會話交換的TCP包就要設置ACK位了。

舉個例子,PC向遠端的Web伺服器發起一個連接,它生成一個沒有設置ACK位的連接請求包。當伺服器響應該請求時,伺服器就發回一個設置了ACK位的數據包,同時在包里標記從客戶機所收到的位元組數。然後客戶機就用自己的響應包再響應該數據包,這個數據包也設置了ACK位並標記了從伺服器收到的位元組數。通過監視ACK位,我們就可以將進入網路的數據限制在響應包的范圍之內。於是,遠程系統根本無法發起TCP連接但卻能響應收到的數據包了。

這套機制還不能算是無懈可擊,簡單地舉個例子,假設我們有台內部Web伺服器,那麼埠80就不得不被打開以便外部請求可以進入網路。還有,對UDP包而言就沒法監視ACK位了,因為UDP包壓根就沒有ACK位。還有一些TCP應用程序,比如FTP,連接就必須由這些伺服器程序自己發起。

FTP帶來的困難

一般的Internet服務對所有的通信都只使用一對埠號,FTP程序在連接期間則使用兩對埠號。第一對埠號用於FTP的「命令通道」提供登錄和執行命令的通信鏈路,而另一對埠號則用於FTP的「數據通道」提供客戶機和伺服器之間的文件傳送。

在通常的FTP會話過程中,客戶機首先向伺服器的埠21(命令通道)發送一個TCP連接請求,然後執行LOGIN、DIR等各種命令。一旦用戶請求伺服器發送數據,FTP伺服器就用其20埠 (數據通道)向客戶的數據埠發起連接。問題來了,如果伺服器向客戶機發起傳送數據的連接,那麼它就會發送沒有設置ACK位的數據包,防火牆則按照剛才的規則拒絕該數據包同時也就意味著數據傳送沒戲了。通常只有高級的、也就是夠聰明的防火牆才能看出客戶機剛才告訴伺服器的埠,然後才許可對該埠的入站連接。

UDP埠過濾

好了,現在我們回過頭來看看怎麼解決UDP問題。剛才說了,UDP包沒有ACK位所以不能進行ACK位過濾。UDP 是發出去不管的「不可靠」通信,這種類型的服務通常用於廣播、路由、多媒體等廣播形式的通信任務。NFS、DNS、WINS、NetBIOS-over-TCP/IP和 NetWare/IP都使用UDP。

看來最簡單的可行辦法就是不允許建立入站UDP連接。防火牆設置為只許轉發來自內部介面的UDP包,來自外部介面的UDP包則不轉發。現在的問題是,比方說,DNS名稱解析請求就使用UDP,如果你提供DNS服務,至少得允許一些內部請求穿越防火牆。還有IRC這樣的客戶程序也使用UDP,如果要讓你的用戶使用它,就同樣要讓他們的UDP包進入網路。我們能做的就是對那些從本地到可信任站點之間的連接進行限制。但是,什麼叫可信任!如果黑客採取地址欺騙的方法不又回到老路上去了嗎?

有些新型路由器可以通過「記憶」出站UDP包來解決這個問題:如果入站UDP包匹配最近出站UDP包的目標地址和埠號就讓它進來。如果在內存中找不到匹配的UDP包就只好拒絕它了!但是,我們如何確信產生數據包的外部主機就是內部客戶機希望通信的伺服器呢?如果黑客詐稱DNS伺服器的地址,那麼他在理論上當然可以從附著DNS的UDP埠發起攻擊。只要你允許DNS查詢和反饋包進入網路這個問題就必然存在。辦法是採用代理伺服器。

所謂代理伺服器,顧名思義就是代表你的網路和外界打交道的伺服器。代理伺服器不允許存在任何網路內外的直接連接。它本身就提供公共和專用的DNS、郵件伺服器等多種功能。代理伺服器重寫數據包而不是簡單地將其轉發了事。給人的感覺就是網路內部的主機都站在了網路的邊緣,但實際上他們都躲在代理的後面,露面的不過是代理這個假面具。

小結

IP地址可能是假的,這是由於IP協議的源路有機制所帶來的,這種機制告訴路由器不要為數據包採用正常的路徑,而是按照包頭內的路徑傳送數據包。於是黑客就可以使用系統的IP地址獲得返回的數據包。有些高級防火牆可以讓用戶禁止源路由。通常我們的網路都通過一條路徑連接ISP,然後再進入Internet。這時禁用源路由就會迫使數據包必須沿著正常的路徑返回。

還有,我們需要了解防火牆在拒絕數據包的時候還做了哪些其他工作。比如,防火牆是否向連接發起系統發回了「主機不可到達」的ICMP消息?或者防火牆真沒再做其他事?這些問題都可能存在安全隱患。ICMP「主機不可達」消息會告訴黑客「防火牆專門阻塞了某些埠」,黑客立即就可以從這個消息中聞到一點什麼氣味。如果ICMP「主機不可達」是通信中發生的錯誤,那麼老實的系統可能就真的什麼也不發送了。反過來,什麼響應都沒有卻會使發起通信的系統不斷地嘗試建立連接直到應用程序或者協議棧超時,結果最終用戶只能得到一個錯誤信息。當然這種方式會讓黑客無法判斷某埠到底是關閉了還是沒有使用。

❺ windows自帶防火牆有什麼用啊能防黑客攻擊么

基本上可以,但防止被PING這是肯定的

❻ 基於包過濾防火牆的原理和實現技術是怎樣的

推薦看一看 朱雁冰 寫的《Windows防火牆與網路封包截獲技術》,上面介紹了三種分別基於用戶態和核心態下的防火牆編譯,雖然他提到的三種技術現在看來都有不足,但是是一本講解詳細的好書~~~!!

防火牆就是一種過濾塞(目前你這么理解不算錯),你可以讓你喜歡的東西通過這個塞子,別的玩意都統統過濾掉。在網路的世界裡,要由防火牆過濾的就是承載通信數據的通信包。

天下的防火牆至少都會說兩個詞:Yes或者No。直接說就是接受或者拒絕。最簡單的防火牆是乙太網橋。但幾乎沒有人會認為這種原始防火牆能管多大用。大多數防火牆採用的技術和標准可謂五花八門。這些防火牆的形式多種多樣:有的取代系統上已經裝備的TCP/IP協議棧;有的在已有的協議棧上建立自己的軟體模塊;有的乾脆就是獨立的一套操作系統。還有一些應用型的防火牆只對特定類型的網路連接提供保護(比如SMTP或者HTTP協議等)。還有一些基於硬體的防火牆產品其實應該歸入安全路由器一類。以上的產品都可以叫做防火牆,因為他們的工作方式都是一樣的:分析出入防火牆的數據包,決定放行還是把他們扔到一邊。

所有的防火牆都具有IP地址過濾功能。這項任務要檢查IP包頭,根據其IP源地址和目標地址作出放行/丟棄決定。看看下面這張圖,兩個網段之間隔了一個防火牆,防火牆的一端有台UNIX計算機,另一邊的網段則擺了台PC客戶機。

當PC客戶機向UNIX計算機發起telnet請求時,PC的telnet客戶程序就產生一個TCP包並把它傳給本地的協議棧准備發送。接下來,協議棧將這個TCP包「塞」到一個IP包里,然後通過PC機的TCP/IP棧所定義的路徑將它發送給UNIX計算機。在這個例子里,這個IP包必須經過橫在PC和UNIX計算機中的防火牆才能到達UNIX計算機。

現在我們「命令」(用專業術語來說就是配製)防火牆把所有發給UNIX計算機的數據包都給拒了,完成這項工作以後,「心腸」比較好的防火牆還會通知客戶程序一聲呢!既然發向目標的IP數據沒法轉發,那麼只有和UNIX計算機同在一個網段的用戶才能訪問UNIX計算機了。

還有一種情況,你可以命令防火牆專給那台可憐的PC機找茬,別人的數據包都讓過就它不行。這正是防火牆最基本的功能:根據IP地址做轉發判斷。但要上了大場面這種小伎倆就玩不轉了,由於黑客們可以採用IP地址欺騙技術,偽裝成合法地址的計算機就可以穿越信任這個地址的防火牆了。不過根據地址的轉發決策機制還是最基本和必需的。另外要注意的一點是,不要用DNS主機名建立過濾表,對DNS的偽造比IP地址欺騙要容易多了。

伺服器TCP/UDP 埠過濾

僅僅依靠地址進行數據過濾在實際運用中是不可行的,還有個原因就是目標主機上往往運行著多種通信服務,比方說,我們不想讓用戶採用 telnet的方式連到系統,但這絕不等於我們非得同時禁止他們使用SMTP/POP郵件伺服器吧?所以說,在地址之外我們還要對伺服器的TCP/ UDP埠進行過濾。

比如,默認的telnet服務連接埠號是23。假如我們不許PC客戶機建立對UNIX計算機(在這時我們當它是伺服器)的telnet連接,那麼我們只需命令防火牆檢查發送目標是UNIX伺服器的數據包,把其中具有23目標埠號的包過濾就行了。這樣,我們把IP地址和目標伺服器TCP/UDP埠結合起來不就可以作為過濾標准來實現相當可靠的防火牆了嗎?不,沒這么簡單。

客戶機也有TCP/UDP埠

TCP/IP是一種端對端協議,每個網路節點都具有唯一的地址。網路節點的應用層也是這樣,處於應用層的每個應用程序和服務都具有自己的對應「地址」,也就是埠號。地址和埠都具備了才能建立客戶機和伺服器的各種應用之間的有效通信聯系。比如,telnet伺服器在埠23偵聽入站連接。同時telnet客戶機也有一個埠號,否則客戶機的IP棧怎麼知道某個數據包是屬於哪個應用程序的呢?

由於歷史的原因,幾乎所有的TCP/IP客戶程序都使用大於1023的隨機分配埠號。只有UNIX計算機上的root用戶才可以訪問1024以下的埠,而這些埠還保留為伺服器上的服務所用。所以,除非我們讓所有具有大於1023埠號的數據包進入網路,否則各種網路連接都沒法正常工作。

這對防火牆而言可就麻煩了,如果阻塞入站的全部埠,那麼所有的客戶機都沒法使用網路資源。因為伺服器發出響應外部連接請求的入站(就是進入防火牆的意思)數據包都沒法經過防火牆的入站過濾。反過來,打開所有高於1023的埠就可行了嗎?也不盡然。由於很多服務使用的埠都大於1023,比如X client、基於RPC的NFS服務以及為數眾多的非UNIX IP產品等(NetWare/IP)就是這樣的。那麼讓達到1023埠標準的數據包都進入網路的話網路還能說是安全的嗎?連這些客戶程序都不敢說自己是足夠安全的。

雙向過濾

OK,咱們換個思路。我們給防火牆這樣下命令:已知服務的數據包可以進來,其他的全部擋在防火牆之外。比如,如果你知道用戶要訪問Web伺服器,那就只讓具有源埠號80的數據包進入網路:

不過新問題又出現了。首先,你怎麼知道你要訪問的伺服器具有哪些正在運行的埠號呢? 象HTTP這樣的伺服器本來就是可以任意配置的,所採用的埠也可以隨意配置。如果你這樣設置防火牆,你就沒法訪問哪些沒採用標准埠號的的網路站點了!反過來,你也沒法保證進入網路的數據包中具有埠號80的就一定來自Web伺服器。有些黑客就是利用這一點製作自己的入侵工具,並讓其運行在本機的80埠!

檢查ACK位

源地址我們不相信,源埠也信不得了,這個不得不與黑客共舞的瘋狂世界上還有什麼值得我們信任呢?還好,事情還沒到走投無路的地步。對策還是有的,不過這個辦法只能用於TCP協議。

TCP是一種可靠的通信協議,「可靠」這個詞意味著協議具有包括糾錯機制在內的一些特殊性質。為了實現其可靠性,每個TCP連接都要先經過一個「握手」過程來交換連接參數。還有,每個發送出去的包在後續的其他包被發送出去之前必須獲得一個確認響應。但並不是對每個TCP包都非要採用專門的ACK包來響應,實際上僅僅在TCP包頭上設置一個專門的位就可以完成這個功能了。所以,只要產生了響應包就要設置ACK位。連接會話的第一個包不用於確認,所以它就沒有設置ACK位,後續會話交換的TCP包就要設置ACK位了。

舉個例子,PC向遠端的Web伺服器發起一個連接,它生成一個沒有設置ACK位的連接請求包。當伺服器響應該請求時,伺服器就發回一個設置了ACK位的數據包,同時在包里標記從客戶機所收到的位元組數。然後客戶機就用自己的響應包再響應該數據包,這個數據包也設置了ACK位並標記了從伺服器收到的位元組數。通過監視ACK位,我們就可以將進入網路的數據限制在響應包的范圍之內。於是,遠程系統根本無法發起TCP連接但卻能響應收到的數據包了。

這套機制還不能算是無懈可擊,簡單地舉個例子,假設我們有台內部Web伺服器,那麼埠80就不得不被打開以便外部請求可以進入網路。還有,對UDP包而言就沒法監視ACK位了,因為UDP包壓根就沒有ACK位。還有一些TCP應用程序,比如FTP,連接就必須由這些伺服器程序自己發起。

FTP帶來的困難

一般的Internet服務對所有的通信都只使用一對埠號,FTP程序在連接期間則使用兩對埠號。第一對埠號用於FTP的「命令通道」提供登錄和執行命令的通信鏈路,而另一對埠號則用於FTP的「數據通道」提供客戶機和伺服器之間的文件傳送。

在通常的FTP會話過程中,客戶機首先向伺服器的埠21(命令通道)發送一個TCP連接請求,然後執行LOGIN、DIR等各種命令。一旦用戶請求伺服器發送數據,FTP伺服器就用其20埠 (數據通道)向客戶的數據埠發起連接。問題來了,如果伺服器向客戶機發起傳送數據的連接,那麼它就會發送沒有設置ACK位的數據包,防火牆則按照剛才的規則拒絕該數據包同時也就意味著數據傳送沒戲了。通常只有高級的、也就是夠聰明的防火牆才能看出客戶機剛才告訴伺服器的埠,然後才許可對該埠的入站連接。

UDP埠過濾

好了,現在我們回過頭來看看怎麼解決UDP問題。剛才說了,UDP包沒有ACK位所以不能進行ACK位過濾。UDP 是發出去不管的「不可靠」通信,這種類型的服務通常用於廣播、路由、多媒體等廣播形式的通信任務。NFS、DNS、WINS、NetBIOS-over-TCP/IP和 NetWare/IP都使用UDP。

看來最簡單的可行辦法就是不允許建立入站UDP連接。防火牆設置為只許轉發來自內部介面的UDP包,來自外部介面的UDP包則不轉發。現在的問題是,比方說,DNS名稱解析請求就使用UDP,如果你提供DNS服務,至少得允許一些內部請求穿越防火牆。還有IRC這樣的客戶程序也使用UDP,如果要讓你的用戶使用它,就同樣要讓他們的UDP包進入網路。我們能做的就是對那些從本地到可信任站點之間的連接進行限制。但是,什麼叫可信任!如果黑客採取地址欺騙的方法不又回到老路上去了嗎?

有些新型路由器可以通過「記憶」出站UDP包來解決這個問題:如果入站UDP包匹配最近出站UDP包的目標地址和埠號就讓它進來。如果在內存中找不到匹配的UDP包就只好拒絕它了!但是,我們如何確信產生數據包的外部主機就是內部客戶機希望通信的伺服器呢?如果黑客詐稱DNS伺服器的地址,那麼他在理論上當然可以從附著DNS的UDP埠發起攻擊。只要你允許DNS查詢和反饋包進入網路這個問題就必然存在。辦法是採用代理伺服器。

所謂代理伺服器,顧名思義就是代表你的網路和外界打交道的伺服器。代理伺服器不允許存在任何網路內外的直接連接。它本身就提供公共和專用的DNS、郵件伺服器等多種功能。代理伺服器重寫數據包而不是簡單地將其轉發了事。給人的感覺就是網路內部的主機都站在了網路的邊緣,但實際上他們都躲在代理的後面,露面的不過是代理這個假面具。

小結

IP地址可能是假的,這是由於IP協議的源路有機制所帶來的,這種機制告訴路由器不要為數據包採用正常的路徑,而是按照包頭內的路徑傳送數據包。於是黑客就可以使用系統的IP地址獲得返回的數據包。有些高級防火牆可以讓用戶禁止源路由。通常我們的網路都通過一條路徑連接ISP,然後再進入Internet。這時禁用源路由就會迫使數據包必須沿著正常的路徑返回。

還有,我們需要了解防火牆在拒絕數據包的時候還做了哪些其他工作。比如,防火牆是否向連接發起系統發回了「主機不可到達」的ICMP消息?或者防火牆真沒再做其他事?這些問題都可能存在安全隱患。ICMP「主機不可達」消息會告訴黑客「防火牆專門阻塞了某些埠」,黑客立即就可以從這個消息中聞到一點什麼氣味。如果ICMP「主機不可達」是通信中發生的錯誤,那麼老實的系統可能就真的什麼也不發送了。反過來,什麼響應都沒有卻會使發起通信的系統不斷地嘗試建立連接直到應用程序或者協議棧超時,結果最終用戶只能得到一個錯誤信息。當然這種方式會讓黑客無法判斷某埠到底是關閉了還是沒有使用。

❼ 其他防火牆對於windows自帶防火牆有什麼好處

自己安裝的比自帶的功能強大

一、防火牆能夠作到些什麼?

1.包過濾

具備包過濾的就是防火牆?對,沒錯!根據對防火牆的定義,凡是能有效阻止網路非法連接的方式,都算防火牆。早期的防火牆一般就是利用設置的條件,監測通過的包的特徵來決定放行或者阻止的,包過濾是很重要的一種特性。雖然防火牆技術發展到現在有了很多新的理念提出,但是包過濾依然是非常重要的一環,如同四層交換機首要的仍是要具備包的快速轉發這樣一個交換機的基本功能一樣。通過包過濾,防火牆可以實現阻擋攻擊,禁止外部/內部訪問某些站點,限制每個ip的流量和連接數。

2.包的透明轉發

事實上,由於防火牆一般架設在提供某些服務的伺服器前。如果用示意圖來表示就是 Server—FireWall—Guest 。用戶對伺服器的訪問的請求與伺服器反饋給用戶的信息,都需要經過防火牆的轉發,因此,很多防火牆具備網關的能力。

3.阻擋外部攻擊

如果用戶發送的信息是防火牆設置所不允許的,防火牆會立即將其阻斷,避免其進入防火牆之後的伺服器中。

4.記錄攻擊

如果有必要,其實防火牆是完全可以將攻擊行為都記錄下來的,但是由於出於效率上的考慮,目前一般記錄攻擊的事情都交給IDS來完成了,我們在後面會提到。

以上是所有防火牆都具備的基本特性,雖然很簡單,但防火牆技術就是在此基礎上逐步發展起來的。

二、防火牆有哪些缺點和不足?

1.防火牆可以阻斷攻擊,但不能消滅攻擊源。

「各掃自家門前雪,不管他人瓦上霜」,就是目前網路安全的現狀。互聯網上病毒、木馬、惡意試探等等造成的攻擊行為絡繹不絕。設置得當的防火牆能夠阻擋他們,但是無法清除攻擊源。即使防火牆進行了良好的設置,使得攻擊無法穿透防火牆,但各種攻擊仍然會源源不斷地向防火牆發出嘗試。例如接主幹網10M網路帶寬的某站點,其日常流量中平均有512K左右是攻擊行為。那麼,即使成功設置了防火牆後,這512K的攻擊流量依然不會有絲毫減少。

2.防火牆不能抵抗最新的未設置策略的攻擊漏洞

就如殺毒軟體與病毒一樣,總是先出現病毒,殺毒軟體經過分析出特徵碼後加入到病毒庫內才能查殺。防火牆的各種策略,也是在該攻擊方式經過專家分析後給出其特徵進而設置的。如果世界上新發現某個主機漏洞的cracker的把第一個攻擊對象選中了您的網路,那麼防火牆也沒有辦法幫到您的。

3.防火牆的並發連接數限制容易導致擁塞或者溢出

由於要判斷、處理流經防火牆的每一個包,因此防火牆在某些流量大、並發請求多的情況下,很容易導致擁塞,成為整個網路的瓶頸影響性能。而當防火牆溢出的時候,整個防線就如同虛設,原本被禁止的連接也能從容通過了。

4.防火牆對伺服器合法開放的埠的攻擊大多無法阻止

某些情況下,攻擊者利用伺服器提供的服務進行缺陷攻擊。例如利用開放了3389埠取得沒打過sp補丁的win2k的超級許可權、利用asp程序進行腳本攻擊等。由於其行為在防火牆一級看來是「合理」和「合法」的,因此就被簡單地放行了。

5.防火牆對待內部主動發起連接的攻擊一般無法阻止

「外緊內松」是一般區域網絡的特點。或許一道嚴密防守的防火牆內部的網路是一片混亂也有可能。通過社會工程學發送帶木馬的郵件、帶木馬的URL等方式,然後由中木馬的機器主動對攻擊者連接,將鐵壁一樣的防火牆瞬間破壞掉。另外,防火牆內部各主機間的攻擊行為,防火牆也只有如旁觀者一樣冷視而愛莫能助。

6.防火牆本身也會出現問題和受到攻擊

防火牆也是一個os,也有著其硬體系統和軟體,因此依然有著漏洞和bug。所以其本身也可能受到攻擊和出現軟/硬體方面的故障。

7.防火牆不處理病毒

不管是funlove病毒也好,還是CIH也好。在內部網路用戶下載外網的帶毒文件的時候,防火牆是不為所動的(這里的防火牆不是指單機/企業級的殺毒軟體中的實時監控功能,雖然它們不少都叫「病毒防火牆」)。

看到這里,或許您原本心目中的防火牆已經被我拉下了神台。是的,防火牆是網路安全的重要一環,但不代表設置了防火牆就能一定保證網路的安全。「真正的安全是一種意識,而非技術!」請牢記這句話。

不管怎麼樣,防火牆仍然有其積極的一面。在構建任何一個網路的防禦工事時,除了物理上的隔離和目前新近提出的網閘概念外,首要的選擇絕對是防火牆。那麼,怎麼選擇需要的防火牆呢?

防火牆的分類

首先大概說一下防火牆的分類。就防火牆(本文的防火牆都指商業用途的網路版防火牆,非個人使用的那種)的組成結構而言,可分為以下三種:

第一種:軟體防火牆

軟體防火牆運行於特定的計算機上,它需要客戶預先安裝好的計算機操作系統的支持,一般來說這台計算機就是整個網路的網關。軟體防火牆就象其它的軟體產品一樣需要先在計算機上安裝並做好配置才可以使用。防火牆廠商中做網路版軟體防火牆最出名的莫過於Checkpoint。使用這類防火牆,需要網管對所工作的操作系統平台比較熟悉。

第二種:硬體防火牆

這里說的硬體防火牆是指所謂的硬體防火牆。之所以加上"所謂"二字是針對晶元級防火牆說的了。它們最大的差別在於是否基於專用的硬體平台。目前市場上大多數防火牆都是這種所謂的硬體防火牆,他們都基於PC架構,就是說,它們和普通的家庭用的PC沒有太大區別。在這些PC架構計算機上運行一些經過裁剪和簡化的操作系統,最常用的有老版本的Unix、Linux和FreeBSD系統。 值得注意的是,由於此類防火牆採用的依然是別人的內核,因此依然會受到os本身的安全性影響。國內的許多防火牆產品就屬於此類,因為採用的是經過裁減內核和定製組件的平台,因此國內防火牆的某些銷售人員常常吹噓其產品是「專用的os」等等,其實是一個概念誤導,下面我們提到的第三種防火牆才是真正的os專用。

第三種:晶元級防火牆

它們基於專門的硬體平台,沒有操作系統。專有的ASIC晶元促使它們比其他種類的防火牆速度更快,處理能力更強,性能更高。做這類防火牆最出名的廠商莫過於NetScreen.其他的品牌還有FortiNet,算是後起之秀了。這類防火牆由於是專用OS,因此防火牆本身的漏洞比較少,不過價格相對比較高昂,所以一般只有在「確實需要」的情況下才考慮。

在這里,特別糾正幾個不正確的觀念:

1.在性能上,晶元級防火牆>硬體防火牆>軟體防火牆。

在價格上看來,的確倒是如此的關系。但是性能上卻未必。防火牆的「好」,是看其支持的並發數、最大流量等等性能,而不是用軟體硬體來區分的。事實上除了晶元級防火牆外,軟體防火牆與硬體防火牆在硬體上基本是完全一樣的。目前國內的防火牆廠商由於大多採用硬體防火牆而不是軟體防火牆,原因1是考慮到用戶網路管理員的素質等原因,還有就是基於我國大多數民眾對「看得見的硬體值錢,看不到的軟體不值錢」這樣一種錯誤觀點的迎合。不少硬體防火牆廠商大肆詆毀軟體防火牆性能,不外是為了讓自己那加上了外殼的普通pc+一個被修改後的內核+一套防火牆軟體能夠賣出一個好價錢來而已。而為什麼不作晶元級防火牆呢?坦白說,國內沒有公司有技術實力。而且在中國市場上來看,某些國內的所謂硬體防火牆的硬體質量連diy的兼容機都比不上。看看國內XX的硬體防火牆那拙劣的硬碟和網卡,使用過的人都能猜到是哪家,我就不點名了。真正看防火牆,應該看其穩定性和性能,而不是用軟、硬來區分的。至少,如果筆者自己選購,我會選擇購買CheckPoint而非某些所謂的硬體防火牆的。

2.在效果上,晶元防火牆比其他兩種防火牆好

這同樣也是一種有失公允的觀點。事實上晶元防火牆由於硬體的獨立,的確在OS本身出漏洞的機會上比較少,但是由於其固化,導致在面對新興的一些攻擊方式時,無法及時應對;而另外兩種防火牆,則可以簡單地通過升級os的內核來獲取系統新特性,通過靈活地策略設置來滿足不斷變化的要求,不過其OS出現漏洞的概率相對高一些。

3.唯技術指標論

請以「防火牆買來是使用的」為第一前提進行購買。防火牆本身的質量如何是一回事,是否習慣使用又是另一回事。如果對一款產品的界面不熟悉,策略設置方式不理解,那麼即使用世界最頂級的防火牆也沒有多大作用。就如小說中武林中人無不嚮往的「倚天劍」、「屠龍刀」被我拿到,肯定也敵不過喬峰赤手的少林長拳是一般道理。防火牆技術發展至今,市場已經很成熟了,各類產品的存在,自然有其生存於市場的理由。如何把產品用好,遠比盲目地比較各類產品好。

IDS

什麼是IDS呢?早期的IDS僅僅是一個監聽系統,在這里,你可以把監聽理解成竊聽的意思。基於目前局網的工作方式,IDS可以將用戶對位於與IDS同一交換機/HuB的伺服器的訪問、操作全部記錄下來以供分析使用,跟我們常用的widnows操作系統的事件查看器類似。再後來,由於IDS的記錄太多了,所以新一代的IDS提供了將記錄的數據進行分析,僅僅列出有危險的一部分記錄,這一點上跟目前windows所用的策略審核上很象;目前新一代的IDS,更是增加了分析應用層數據的功能,使得其能力大大增加;而更新一代的IDS,就頗有「路見不平,拔刀相助」的味道了,配合上防火牆進行聯動,將IDS分析出有敵意的地址阻止其訪問。

就如理論與實際的區別一樣,IDS雖然具有上面所說的眾多特性,但在實際的使用中,目前大多數的入侵檢測的接入方式都是採用pass-by方式來偵聽網路上的數據流,所以這就限制了IDS本身的阻斷功能,IDS只有靠發阻斷數據包來阻斷當前行為,並且IDS的阻斷范圍也很小,只能阻斷建立在TCP基礎之上的一些行為,如Telnet、FTP、HTTP等,而對於一些建立在UDP基礎之上就無能為力了。因為防火牆的策略都是事先設置好的,無法動態設置策略,缺少針對攻擊的必要的靈活性,不能更好的保護網路的安全,所以IDS與防火牆聯動的目的就是更有效地阻斷所發生的攻擊事件,從而使網路隱患降至較低限度。

接下來,我簡單介紹一下IDS與防火牆聯動工作原理

入侵檢測系統在捕捉到某一攻擊事件後,按策略進行檢查,如果策略中對該攻擊事件設置了防火牆阻斷,那麼入侵檢測系統就會發給防火牆一個相應的動態阻斷策略,防火牆根據該動態策略中的設置進行相應的阻斷,阻斷的時間、阻斷時間間隔、源埠、目的埠、源IP和目的IP等信息,完全依照入侵檢測系統發出的動態策略來執行。一般來說,很多情況下,不少用戶的防火牆與IDS並不是同一家的產品,因此在聯動的協議上面大都遵從 opsec 或者 topsec協議進行通信,不過也有某些廠家自己開發相應的通信規范的。目前總得來說,聯動有一定效果,但是穩定性不理想,特別是攻擊者利用偽造的包信息,讓IDS錯誤判斷,進而錯誤指揮防火牆將合法的地址無辜屏蔽掉。

因為諸多不足,在目前而言,IDS主要起的還是監聽記錄的作用。用個比喻來形容:網路就好比一片黑暗,到處充滿著危險,冥冥中只有一個出口;IDS就象一支手電筒,雖然手電筒不一定能照到正確的出口,但至少有總比沒有要好一些。稱職的網管,可以從IDS中得到一些關於網路使用者的來源和訪問方式,進而依據自己的經驗進行主觀判斷(注意,的確是主觀判斷。例如用戶連續ping了伺服器半個小時,到底是意圖攻擊,還是無意中的行為?這都依據網路管理員的主觀判斷和網路對安全性的要求來確定對應方式。)對IDS的選擇,跟上面談到的防火牆的選擇類似,根據自己的實際要求和使用習慣,選擇一個自己夠用的,會使用的就足夠了。

最後,要說的依然是那句「世界上沒有一種技術能真正保證絕對地安全。」安全問題,是從設備到人,從伺服器上的每個服務程序到防火牆、IDS等安全產品的綜合問題;任何一個環節工作,只是邁向安全的步驟。
參考資料:TechTarget中文網

❽ 求個用C++編寫的包過濾防火牆

................................................................................................................
建議你去研究LINUX的IPTABLES

❾ windows系統中自帶的防火牆屬於什麼防火牆

(一)可以讓你根據不同使用環境自定義安全規則
在不同的電腦使用環境中用戶對防火牆的安全性的要求也不同,比如在辦公室或是家庭的區域網中,為方便區域網內用戶互相傳送文件或一起玩游戲,不需要太高的防火牆安全規則;而經常抱著筆記本到處使用公共Wifi連接上網的時候則不希望任何外部連接接入自己的計算機,需要設置比較高的防火牆安全規則。而 Win7自帶的防火牆就提供可以針對不同的網路環境輕松進行不同定義設置。你只需要點擊Win7防火牆主界面左側的「打開或關閉Windows防火牆」即可打開防火牆的自定義界面,在這里用戶可以分別對家庭或工作區域網以及公用網路設置不同的安全規則。
在兩個網路中用戶都有「啟用」和「關閉」兩個選擇,也就是啟用或者是禁用Windows防火牆。啟用防火牆下還有兩個復選框,一個是「阻止所有傳入連接,包括位於允許程序列表中的程序」,另一個是「Windows防火牆阻止新程序時通知我」。當用戶進入到一個不太安全的網路環境時,可以選中「阻止所有傳入連接」這個勾選框,禁止一切外部連接,即使是Windows防火牆設為「例外」的服務也會被阻止,為復雜環境中的計算機輕松提供嚴密的安全保護。
(二)支持詳細的軟體個性化設置,用戶可以單獨允許某個程序通過防火牆進行通訊。
點擊Win7防火牆主界面左側菜單中的「允許程序或功能通過Windows防火牆」,列表中可以看到常用的網路軟體,我們可以在這里通過勾選復選框允許或者阻止某個程序軟體在家庭或者公用網路中的通信狀態。如果需要添加允許通過Win7防火牆的程度或功能,只需要點擊右下角「允許運行另一程序」按鈕,即可設置需要通過防火牆的程序。
在「添加程序」界面中,我們可以手動選擇程序列表中的程序,如有些程序沒有出現在列表中,還可以點擊「瀏覽」按鈕手動選擇該程序所在地址。
(三)支持還原默認設置
當用戶用戶對防火牆設置不當,並且造成系統無法訪問網路的狀況,但是用戶又不清楚到底怎麼設置導致某些應用無法正常工作或者無法訪問網路,可以點擊Win7防火牆主界面左側的「還原默認設置」,將防火牆配置恢復到Win7防火牆的默認狀態。
簡而言之,Win7系統具有豐富的創新功能、卓越的兼容性,其性能安全穩定,操作方式簡單、安全、便捷,可以隨時檢查網路信息,根據設置靈活阻止或允許信息通過計算機。用好Win7防火牆,不僅有助於防止黑客或惡意軟體(如蠕蟲)通過網路訪問計算機,幫助阻止計算機向其他計算機發送惡意軟體,同時靈活的設置也能保證在安全的同時順暢使用網路和程序及應用。

❿ 包過濾防火牆可以實現基於什麼級別的控制

就是基於數據包中的IP地址、埠地址的過濾,比較簡單。但是現在已經不適用了,很多軟體都是自動轉換埠的,所以現在都是第二代防火牆,基於應用層的數據進行控制。你搜下WFilter NGF下一代防火牆就知道了。

閱讀全文

與windows基於包過濾的防火牆相關的資料

熱點內容
液相用溶劑過濾器 瀏覽:674
納濾水導電率 瀏覽:128
反滲透每小時2噸 瀏覽:162
做一個純凈水工廠需要多少錢 瀏覽:381
最終幻想4回憶技能有什麼用 瀏覽:487
污水提升器采通 瀏覽:397
反滲透和不發滲透凈水器有什麼區別 瀏覽:757
提升泵的揚程 瀏覽:294
澤德提升泵合肥經銷商 瀏覽:929
飲水機後蓋漏水了怎麼辦 瀏覽:953
小型電動提升器 瀏覽:246
半透膜和細胞膜區別 瀏覽:187
廢水拖把池 瀏覽:859
十四五期間城鎮污水處理如何提質增效 瀏覽:915
怎麼測試空氣凈化器的好壞 瀏覽:519
提升泵是幹嘛的 瀏覽:744
布油做蒸餾起沫咋辦 瀏覽:252
廣州工業油煙凈化器一般多少錢 瀏覽:204
喜哆哆空氣凈化器效果怎麼樣 瀏覽:424
油煙凈化器油盒在什麼位置 瀏覽:582