你是否應通過 ISA防火墻來允許SSL
在實際操作過程中是否應該通過ISA防火墻來允許SSL的實際操作技巧,作為防火墻管理員,你首先要考慮的是如何控制外部用戶訪問你的內部網絡與相關內部網絡中用戶訪問外部網絡,你花了大量的時間來配置防火墻策略。
讓用戶只能訪問你想讓他們訪問的、連接到你想讓他們連接到的服務器、下載你允許他們下載的內容,并且只是你在想讓他們進行訪問的時間內進行訪問。
作為一個防火墻管理員,你可能主要考慮的是如何控制外部用戶訪問你的內部網絡和內部網絡中用戶訪問外部網絡,你花了大量的時間來配置防火墻策略,讓用戶只能訪問你想讓他們訪問的、連接到你想讓他們連接到的服務器、下載你允許他們下載的內容,并且只是你在想讓他們進行訪問的時間內進行訪問。
訪問控制是防火墻的實質,也是最重要的東西。如果你沒有訪問控制,你將不會有任何控制的權力。你必須具有允許或拒絕VPN連接、允許或拒絕遠程桌面連接、允許或拒絕訪問Web服務器、允許或拒絕傳輸文件的能力等等。你同樣需要控制用戶/用戶組的權力,這樣可以只是讓你允許的用戶進行訪問。
你的防火墻具有增強你的訪問控制的能力,因為它具有全部通過它建立連接的信息。ISA防火墻可以識別網絡層、傳輸層和應用層的信息,然后基于你創建的防火墻策略來允許或者拒絕他們;但是常規的硬件防火墻只是可以識別網絡層和傳輸層的信息,不能對應用層的信息進行識別。
SSL隧道的威脅
但是,當你的防火墻遇到加密的通信時,它們會怎么樣呢?我們以遠程客戶訪問內部網絡中的OWA站點為例:一個常規的硬件防火墻(如PIX或者Netscreen),接受到一個進入TCP端口443的連接,此硬件防火墻上的一個ACL允許進入的連接,然后將其轉發到內部網絡中的OWA站點。
發起遠程訪問的OWA客戶端和OWA站點之間協商建立一個加密的SSL連接。此時,通過硬件防火墻的所有數據現在都是加密的,硬件防火墻不能監視到SSL隧道中的內容。
當OWA上的黑客或者蠕蟲病毒通過加密的SSL隧道對OWA服務器執行注入攻擊時,常規的狀態過濾硬件防火墻將不會阻止,只是認為“這是一個訪問內部OWA服務器的SSL連接,我已經允許了它,祝它好運”。呵呵,接下來,你可能需要花一個星期的時間來修復你的Exchange服務。
這明顯的不是好的安全情況,但是事實上確實如此。在這種情況下,你失去了對訪問的控制,因為你的訪問策略對加密隧道的內容無效,你的硬件防火墻無法控制進入的加密連接的內容。
任何人都可以使用HTTP(S)隧道
可能OWA的例子讓你很擔心,但是實際情況比你想像的還要嚴重。許多程序設計人員都使用HTTP隧道來封裝他們的程序,使他們的程序可以突破“限制性防火墻”的限制。所謂“限制性的防火墻”,就是只允許HTTP或者HTTPS出入。為了突破這個限制,他們將他們的程序使用的協議配置為使用HTTP頭。只要他們使用了HTTP頭,允許了HTTP/HTTPS的防火墻就會允許他們出入。
這些程序有很多,例如包含RPC over HTTP(S)的非Web應用程序HTTP隧道、GoToMyPC程序和大量明顯設計為暗中破壞防火墻策略的HTTP隧道程序(可以用GOOGLE搜索一下,http://www.google.com/search?hl=en&ie=UTF-8&q=HTTP+tunnel)。稱之為“SSL VPNs”的程序也屬于同類,它們同樣可以使用加密的SSL隧道來越過防火墻的安全策略。所有的這些應用程序,無論它們使用設計為增強活動性,如RPC over HTTP或者暗中破壞防火墻策略(使用SSL隧道的木馬等),都具有共同的特性:為了達到越過防火墻的控制和安全性的目的,將本身的應用協議隱藏在加密的SSL隧道之中。
就算對于沒有加密的HTTP隧道應用程序,在阻止它們使用出站的TCP 80通道時,常規的狀態過濾硬件防火墻都是無助的。與之對比的是,ISA防火墻的HTTP安全過濾器可以檢查HTTP頭的信息,然后阻止HTTP隧道連接。這是ISA防火墻對于網絡保護的一個主要安全性增強。
ISA防火墻解決了隱藏SSL加密注入的問題
在常規的狀態過濾硬件防火墻不能識別SSL隧道的內容,因此不能阻止隱藏在SSL隧道中的應用協議時,ISA防火墻卻具有這種能力。ISA防火墻作為第三代的狀態過濾和應用層識別防火墻,比簡單的包過濾防火墻具有更高級別的應用層安全特性。ISA防火墻可以中斷SSL連接,對SSL連接的內容進行檢查,然后對SSL的會話重新進行加密,然后轉發這個連接到內部網絡中對應的SSL站點中。
在遠程客戶訪問內部網絡的OWA站點的例子中,我們看到常規的狀態過濾硬件防火墻對注入攻擊進行了允許。對于我個人來說,如果采用的是常規的狀態過濾硬件防火墻,我絕不會允許遠程客戶訪問內部網絡中的任何資源。我個人意見是在防火墻不能對發布的OWA站點進行SSL隧道注入的保護時,我將不會使用OWA發布。
與常規的狀態過濾硬件防火墻對比的是,當ISA防火墻從遠程OWA客戶接受遠程訪問連接時,它將解密SSL隧道的通信,然后對數據包的內容執行應用層狀態識別。這由HTTP安全過濾器執行,它可以阻止許多HTTP注入攻擊(如病毒、蠕蟲和混合的攻擊)和允許你阻止SSL通信中未經過你同意的應用層協議。如果ISA防火墻從數據包中發現了可疑的或者危險的信息,那么連接將被丟棄。如果連接是干凈的和無害的,那么ISA防火墻將數據重新加密,然后在它自己和內部網絡中的目的OWA服務器間建立第二個SSL連接,再將SSL數據包轉發給內部的OWA服務器。
注意:OWA在此只是作為舉例,任何安全Web服務器(HTTPS)都是可以保護的。
很清楚的,ISA防火墻比傳統的常規狀態過濾硬件防火墻提供了更高級別的安全保護。現在大部分攻擊都是基于應用層的,針對網絡中的常見的服務或者服務器進行。ISA防火墻作為第三代防火墻,它獨一無二的設計,使它成為現代的應用程序安全識別過濾的旗手,具有通用的對于安全威脅的保護能力。
我們仍然受到出站SSL連接的威脅
盡管ISA防火墻具有那么多的優點,也不是說ISA防火墻的管理員生活就是完美的。盡管ISA防火墻對進入的SSL連接提供了應用層過濾識別保護,但是我們仍然擔心從內部網絡中到Internet站點的SSL隧道連接。在這種情況中,ISA防火墻和常規狀態過濾硬件防火墻提供同等級別的保護。
ISA防火墻執行入站的SSL橋接和應用層狀態識別,但是它不執行出站的SSL橋接。不過,當ISA防火墻開發團隊發布出站的SSL橋接的解決方案時,你就可以阻止內部用戶在加密的出站SSL連接中隱藏應用程序,這樣就是一個完整的SSL隧道安全解決方案了。
后記
最后,我想再提醒大家,提防“SSL VPNs”,其他任何程序都可以在SSL加密連接中隱藏它們的本質。強烈建議你在內部用戶需要訪問出站的SSL站點時,嚴格限制能夠訪問SSL站點的用戶/組,并且使用明確的域名來限制用戶可以使用SSL連接到的站點。絕不要允許使用“All Open”來允許用戶使用SSL協議訪問所有站點,否則,用戶可以通過SSL隧道來使用所有協議,而不僅僅是HTTPS,這可能是你不想看到的。
【編輯推薦】