談防火墻及防火墻的滲透技術
1、使用多堡壘主機;
2、合并內部路由器與外部路由器;
3、合并堡壘主機與外部路由器;
4、合并堡壘主機與內部路由器;
5、使用多臺內部路由器;
6、使用多臺外部路由器;
7、使用多個周邊網(wǎng)絡;
8、使用雙重宿主主機與屏蔽子網(wǎng)。本文引用地址:http://butianyuan.cn/article/155529.htm
隨著人們對網(wǎng)絡安全意識的提高,防火墻的應用越來越廣泛。有錢的用高級硬件防火墻,沒錢的用免費的軟件防火墻。那么,硬件防火墻和軟件防火墻相比,有哪些優(yōu)點呢?
硬件防火墻采用專用的硬件設備,然后集成生產(chǎn)廠商的專用防火墻軟件。從功能上看,硬件防火墻內建安全軟件,使用專屬或強化的操作系統(tǒng),管理方便,更換容易,軟硬件搭配較固定。硬件防火墻效率高,解決了防火墻效率、性能之間的矛盾,可以達到線性。
軟件防火墻一般基于某個操作系統(tǒng)平臺開發(fā),直接在計算機上進行軟件的安裝和配置。由于客戶平臺的多樣性,軟件防火墻需支持多操作系統(tǒng),如Unix、Linux、SCO-Unix、Windows等,代碼龐大、安裝成本高、售后支持成本高、效率低。
1、性能優(yōu)勢。防火墻的性能對防火墻來說是至關重要的。它決定了每秒鐘通過防火墻的數(shù)據(jù)流量。單位是Bps,從幾十M到幾百M不等,還有千兆防火墻甚至達到幾G的防火墻。而軟件防火墻則不可能達到如此高的速率。
2、CPU占用率的優(yōu)勢。硬件防火墻的CPU占用率當然是0了,而軟件防火墻就不同了,如果處于節(jié)約成本的考慮將防火墻軟件安裝在提供服務的主機上,當數(shù)據(jù)流量較大時,CPU占用率將是主機的殺手,將拖跨主機。
3、售后支持。硬件防火墻廠家會對防火墻產(chǎn)品有跟蹤的服務支持,而軟件防火墻的用戶能得到這種機會的相對較少,而且廠家也不會在軟件防火墻上下太大的功夫和研發(fā)經(jīng)費。
防火墻滲透
以上我們簡單的介紹了防火墻的原理,分類,優(yōu)缺點等。下面,我們將對防火墻的滲透技術做一下簡單的介紹。
精心配置過的防火墻固然將讓絕大多數(shù)crackers擋在外圍,掌握網(wǎng)絡控制的主動權,但是,防火墻并不是萬能的,我們也在上一節(jié)的內容中簡單的講了防火墻的缺點。沒有任何一樣網(wǎng)絡產(chǎn)品可以說是絕對安全的。綠盟的san的一篇的文章介紹了滲透防火墻的shellcode,有興趣的朋友可以參考一下。 說到通道技術,我想再提一下“端口復用”,很多朋友以為通道技術就是端口復用技術。那么,錯了,端口復用是指一個端口上建立了多個連接,而不是在一個端口上面開放了多個服務而互不干擾。假如你想在已經(jīng)開放了WWW服務的主機上,在80端口再添加一項服務,只有2種可能:1.添加服務失敗 2.WWW服務出錯。那么什么是通道呢?這里所謂的通道,是指一種繞過防火墻端口屏蔽的通訊方式。防火墻兩端的數(shù)據(jù)包封裝在防火墻所允許通過的數(shù)據(jù)包類型或是端口上,然后穿過防火墻與處在防火墻后面的主機通訊,當封裝的數(shù)據(jù)包到達目的地時,再將數(shù)據(jù)包還原,并將還原后的數(shù)據(jù)包交送到相應的服務上,是在一個端口上面開放了多個服務而互不干擾的。
為了通信,不論是什么防火墻,都不可能把所有的服務,所有的端口都封閉。(如果有那樣的防火墻,還不如拔網(wǎng)線來的直接,呵呵)大多數(shù)的防火墻或多或少都要開放一個端口或服務(比如HTTP),只要開放了端口和服務,就給了我們滲透的可能。HTTP是一種比較簡單而常用的互交式協(xié)議,你給服務器發(fā)送一個請求,服務器就返回給你一個回應。幾乎所有的主機都被允許發(fā)送HTTP請求。網(wǎng)絡上HTTP協(xié)議使用的是如此廣泛,這也決定了我們可以通過使用通道技術而輕松的通過防火墻或其他類似設備而將我們需要的數(shù)據(jù)發(fā)送至目標。一個很典型的例子就是http-tunnel.
在http-tunnel的官方網(wǎng)站http://www.http-tunnel.com
上有這么一句話:“http-tunnel在HTTP請求中建立了一個雙向的虛擬數(shù)據(jù)連接。HTTP請求可以經(jīng)過代理而被發(fā)送,這就可以被那些處在限制了端口的防火墻背后的用戶使用。如果通過HTTP代理的WWW瀏覽是被允許的,那么http-tunnel也就可以成立,也就是說,可以在防火墻外telnet或者PPP到防火墻的內部。”這樣看來,攻擊者可以使用這種技術來實現(xiàn)遠程控制。我們來看看http-tunnel的設計思路:
A主機在防火墻的外面,沒有做任何限制。B主機在防火墻內部,受到防火墻保護,防火墻配置的訪問控制原則是只允許80端口的數(shù)據(jù)進出,但主機開放了telnet服務?,F(xiàn)在假設需要從A系統(tǒng)Telnet到B系統(tǒng)上去,怎么辦?使用正常的telnet肯定是不可能了,因為telnet使用的23端口被防火墻屏蔽,防火墻收到這個telnet的包后,發(fā)現(xiàn)不符合只允許80端口的數(shù)據(jù)通過的過濾原則,就丟棄了。但我們知道可用的有80端口,那么這個時候使用Httptunnel通道,就是一個好的辦法,思路如下:
在A機器上運行tunnel的客戶端,讓它偵聽本機的一個不被使用的任意指定端口(最好是1024以上65535以下),如,8888。同時將來自8888端口上的數(shù)據(jù)指引到B機的80端口上,因為是80端口,防火墻是允許通過的。然后在B機上起一個服務端,(在只有80端口對外開放的情況下,只能先得到一個WEBSHELL,想辦法提升自己的權限,并運行服務端)同樣掛接在80端口上,同時指引80端口的來自客戶端的轉發(fā)到本機的telnet服務端口23,這樣就OK了?,F(xiàn)在在A機上telnet本機端口8888,根據(jù)剛才的設置數(shù)據(jù)包會被轉發(fā)到目標端口為80的B機,因為防火墻允許通過80端口的數(shù)據(jù),因此數(shù)據(jù)包暢通的穿過防火墻,到達B機。此時B機在80端口偵聽的進程收到來自A的數(shù)據(jù)包,會將數(shù)據(jù)包還原,再交還給telnet進程。當數(shù)據(jù)包需要由B到A返回時,將由80端口再回送,同樣可以順利的通過防火墻。
上述功能似乎用端口映射也能做的到,把A主機上的23端口重定向到80端口,再把B主機上的80端口重定向到23端口就行了。但如果B主機已經(jīng)開啟了WWW服務了呢?要使用上述功能,使用端口映射必須犧牲B主機的80端口,這是得不償失的。試想在一次滲透防火墻的對某臺主機的攻擊中,把別人本來已經(jīng)開啟的WWW服務DOWN了,你還能在這臺主機上呆多久?但是,使用http-tunnel就可以完美實現(xiàn),即使B主機已經(jīng)開放80,提供WWW,我們也照樣可以發(fā)送telnet到其80端口上,享受到“正版”的telnet服務。
對于通道技術,我們的解決方案是采用應用層的數(shù)據(jù)包檢測技術,因為在正常的HTTP請求中,GET、POST等行為是必不可少的,如果來自一個連接的HTTP請求中,總是沒有GET、POST,那么這個連接肯定有問題。從而終止此連接?,F(xiàn)在已經(jīng)有公司的IDS產(chǎn)品能夠查出隱藏在80中的tunnel,但是這些IDS產(chǎn)品的費用恐怕也不是中小型企業(yè)能承受的了的。
對于防火墻的滲透,還有一些方法,比如找防火墻本身的設計缺陷等等,但那些難度太大??峙虏皇俏覀儜摽紤]的了。
總結
我們又把防火墻和防火墻的滲透深入淺出的復習了一遍?,F(xiàn)在我們應該更清楚的知道,防火墻不是萬能的,即使是經(jīng)過精心配置的防火墻也抵擋不住隱藏在看似正常數(shù)據(jù)下的通道程序。那么,對于一個網(wǎng)絡來說,我們應該怎么做才能夠保證它的最大安全呢?
1.根據(jù)需要合適的配置防火墻,盡量少開端口。
2.采用過濾嚴格的WEB程序。
3.采用加密的HTTP協(xié)議(HTTPS)。
4.如果條件允許,購買一臺功能較強大的NIDS。
5.管理好你的內網(wǎng)用戶,防止攻擊者和內網(wǎng)用戶直接連接繞過防火墻。
6.經(jīng)常升級你的firewall產(chǎn)品。
路由器相關文章:路由器工作原理
路由器相關文章:路由器工作原理
評論