国产91免费_国产精品电影一区_日本s色大片在线观看_中文在线免费看视频

您現在的位置: 通信界 >> 通信終端 >> 技術正文  
 
基于WINDOWS 2000的主機防火墻
[ 通信界 / 馮愛娟   王蔚然 / www.6611o.com / 2006/11/29 10:55:43 ]
 

馮愛娟   王蔚然 (電子科技大學電子工程學院, 成都 610054)


  摘要:主機防火墻在分布式防火墻體系結構中承擔了重要的角色,其把安全策略延伸到網絡的各個主機。本文介紹了幾種利用驅動程序來實現基于Windows2000的嵌入式主機防火墻的方法,比較了其中的優劣,并對其中的NDIS HOOK實現防火墻技術給出了一個具體例子。
  關鍵詞:分布式防火墻; 主機防火墻; NDIS; NDIS  HOOK


  隨著網絡的廣泛使用 ,網絡安全問題成為人們關注的焦點 。以往采用的安全保護中使用得最多的是傳統的防火墻機制 ,但是由于它對網絡拓撲結構的依賴,隨著不斷擴大的網絡互連,傳統防火墻的缺陷也日益突出,由此分布式防火墻應運而生。分布式防火墻在保留傳統防火墻優勢的同時,減小甚至去除了它對網絡拓撲結構的依賴性。分布式防火墻可以認為是由3部分組成的立體防護系統:一部分是網絡防火墻,它承擔著傳統邊界防火墻看守大門的職責;一部分是主機防火墻,它解決了邊界防火墻不能解決的問題(例如來自內部的攻擊和結構限制等);還有一部分是集中管理,它解決了由分布技術而帶來的管理問題。分布式防火墻最重要的優勢在于它能夠保護物理拓撲上不屬于內部網絡、但位于邏輯上的"內部"網絡的那些主機。
  分布式防火墻技術增加了針對主機的入侵檢測和防護功能,加強了對來自內部攻擊防范,對用戶網絡環境可以實施全方位的安全策略,并提供了多層次立體的防范體系。在分布式防火墻的組成里,主機防火墻是最有特色的部分。主機防火墻駐留在被保護的主機上,用戶可以針對該主機上的具體應用和對外提供的服務設定個性化的安全策略。主機防火墻對分布式防火墻體系結構的突出貢獻是,使安全策略不僅僅停留在網絡與網絡之間,還把安全策略推廣延伸到每個網絡的各個主機上。
1   主機防火墻技術
  主機防火墻運行于宿主機操作系統內核,通過替換或掛接操作系統網絡協議堆棧完成數據包過濾,因此與主機操作系統及網絡協議有莫大的關系。其主要手段是分析主機操作系統網絡協議,在適當的位置插入攔截點,所有的網絡數據包通訊都要經過這些攔截點,再根據安全策略制定的規則對經過攔截點的網絡信息進行監控和審查,過濾掉不符合安全規則的信息,以保護主機不受外界的非法訪問和攻擊。目前在絕大多數內部網的主機運行的是Windows操作系統,也是主機防火墻最重要的系統運行平臺。下面主要闡述在Windows2000中主機防火墻的關鍵技術及其實現。
1.1  Windows操作系統的總體構架
  Windows操作系統的總體構架分為兩個層次,上面的為應用層(用戶態),下面的為核心層(核心態)。其結構如圖1所示。


  應用程序位于上層,處于用戶態,工作在Ring-3級,受到Windows保護機制的嚴格限制,例如不能直接操作硬件,不能直接操作其他應用程序的內存緩沖區等。而核心層的驅動程序則不一樣,它處于核心態,工作在Ring-0級,可以執行任何特權指令,幾乎可以對所用資源進行直接讀寫操作,Windows 不為它提供任何保護,它具有與操作系統核心同等級別的權限。由于操作系統自身存在許多安全漏洞,運行在其上的應用軟件無一不受到威脅。主機防火墻運行在該主機上,所以其運行機制是主機防火墻的關鍵技術之一。為了自身的安全和徹底堵住操作系統的漏洞,主機防火墻嵌入操作系統內核的形態運行,直接接管網卡,把所有數據包進行檢查后再提交給操作系統,從操作系統最底層實現對非法訪問的阻截。本文介紹的基于Windows2000的主機防火墻采用核心層數據包過濾技術。
1.2  NDIS的基本概念
  Windows的網絡模型最主要的包括一個NDIS(網絡驅動程序接口規范)的管理庫,它不僅抽象了底層硬件驅動程序的接口,也抽象了上層協議的接口和協議之上的傳輸設備接口。NDIS為網絡驅動的開發提供了一套標準的接口,給數據交換提出了一個靈活的環境,使得網絡驅動程序的跨平臺性更好,傳輸協議可用它與網卡驅動程序進行通信。所有的網絡通信最終必須通過 NDIS 完成,所以這是網絡數據攔截的良好位置。其模型如圖2所示。
  NDIS支持下列幾種類型的驅動程序:
  1. 小端口驅動程序(Miniport drivers)。小端口驅動可以通過NDIS接口來管理網絡接口卡(NIC),并且開放Miniport接口供高級驅動程序調用。
  2. 中間驅動程序 (Intermediate drivers,簡稱IM Driver)。中間層驅動處于驅動程序層級的中間位置,能夠截獲所有的Protocol 驅動程序通信。
  3. 協議驅動程序(Protocol drivers)。協議驅動程序,處于驅動程序層級的最高層,開放Protocol接口供底層驅動調用,實現與Protocol與Miniport接口的對接。
1.3 利用驅動程序實現數據包過濾技術
  利用驅動程序來攔截網絡數據包一般有以下幾種方法來實現:
  1、 NDIS中間層驅動程序 (IM Driver)。由于IM Driver所處的特殊位置,所以它可以攔截所有的數據包(如果是以太網就是以太幀)。利用NDIS IM Driver可以在網卡驅動程序和傳輸驅動程序之間插入一層自己的處理,從而用來攔截所有的數據報并完成重新組包、加密、網絡地址轉換以及過濾等操作。這樣速度非?,效率也非常高。但是中間層驅動過濾技術編程接口復雜,而且與操作系統版本關心密切,與硬件聯系大,移植性低,而且自動安裝太困難。由于以上原因,市面上還沒有基于IMD的防火墻。
  2、 TDI過濾驅動程序(TDI Filter Driver)。當應用程序要發送或接收網絡數據包的時候,都是通過與協議驅動所提供的接口來進行的。協議驅動提供了一套系統預定義的標準接口來和應用程序之間進行交互。因此,我們只需要開發一個過濾驅動來截獲這些交互的接口,就可以實現網絡數據包的攔截。TDI層的網絡數據攔截還可以得到操作網絡數據包的進程詳細信息,這也是個人防火墻的一個重要功能。但是TDI 過濾驅動器位于TcpIp.sys之上,那些由TcpIp.sys接收并直接處理的數據包(比如ICMP)就不會傳到上面,從而無法過濾這些數據包。
  3、 NDIS HOOK 解決了IM Driver和TDI Filter Driver具有的問題,是較為常用的數據包過濾技術。NDIS HOOK 的工作原理是直接替換NDIS的函數庫中函數地址,這樣只要向NDIS發出的請求,就會先經過自己編寫的函數處理,這些函數可以過濾掉特定的網絡數據包再轉發給系統函數。NDIS HOOK安裝前后的結構示意圖分別如圖3和圖4所示。NDIS HOOK可以完成NDIS函數和TDI函數所能完成的功能,而且攔截的是較為底層的數據包,不容易被滲透。

2 使用NDIS HOOK實現主機防火墻
  Windows2000的驅動程序流程,如圖5所示,其主要掛接過程如下:
  1、 在操作系統加載了NDIS驅動程序之后,通過自定義函數HookFunction替換NdisSend函數入口為MyNdisSend,并保存原函數指針為NdisSendAddr。與Windows 9x/Me不同,Windows2000下的協議驅動一般不再通過NdisSend發送數據,而是通過協議驅動與網卡綁定后NDIS為其分配的SendHandler來進行數據的發送,必須HOOK這個SendHandler才能真正截獲發送的數據包。
  2、 通過HookFunction函數替換NdisRegisterProtocol函數入口為MyNdisRegisterProtocol,并保存函數指針為NdisRegisterProtocolAddr。
  3、 在MyNdisRegisterProtocol函數替換TCP/IP協議驅動的接收函數ReceiveHandler指針為MyReceriveHandler, 截獲接收到的ICMP、IGMP、TCP、UDP等數據包,對它們依據防火墻過濾規則進行檢驗,對允許通過的數據包,將調用原來的函數處理;否則丟棄數據包。MyNdisRegisterPro還替換了OpenAdapterCompletehandler函數指針為MyOpenAdapterComplete。
  4、 通過HookFunction函數替換了完成協議與網卡的綁定的函數NdisOpenAdapter為MyNdisOpenAdapter,再利用MyNdisOpenAdapter或者MyOpenAdapterComplete HOOK TCP/IP協議驅動數據包發送函數SendHandler,截獲待發送的ICMP、IGMP、TCP、UDP等數據包,對它們依據防火墻過濾規則進行檢驗,對于允許通過的數據包,將調用原來的函數處理;否則丟棄數據包。
  5、 驅動程序卸載時,卸載函數PacketUnload還原被HookFunction替換的系統函數。
3 小結
  Windows平臺使用NDIS HOOK 實現主機防火墻是比較合適的技術,這種方法在實驗室中投入運行(運行環境:Windows 2000)。實踐證明采用這種技術實現的主機防火墻安裝方便,而且能過濾所有的網絡數據包,必將在網絡防范中起重要作用。

作者簡介:
  馮愛娟,女,1979出生,電子科技大學碩士研究生,主要研究方向網絡安全。王蔚然,電子科技大學教授、博導,電子學會會士,主要研究方向為網絡安全信息獲取、傳輸、處理等。

 

作者:馮愛娟   王蔚然 合作媒體:四川省通信學會 編輯:顧北

 

 

 
 熱點技術
普通技術 “5G”,真的來了!牛在哪里?
普通技術 5G,是偽命題嗎?
普通技術 云視頻會議關鍵技術淺析
普通技術 運營商語音能力開放集中管理方案分析
普通技術 5G網絡商用需要“無憂”心
普通技術 面向5G應運而生的邊緣計算
普通技術 簡析5G時代四大關鍵趨勢
普通技術 國家網信辦就《數據安全管理辦法》公開征求意見
普通技術 《車聯網(智能網聯汽車)直連通信使用5905-5925MHz頻段管理規定(
普通技術 中興通訊混合云解決方案,滿足5G多元業務需求
普通技術 大規模MIMO將帶來更多無線信道,但也使無線信道易受攻擊
普通技術 蜂窩車聯網的標準及關鍵技術及網絡架構的研究
普通技術 4G與5G融合組網及互操作技術研究
普通技術 5G中CU-DU架構、設備實現及應用探討
普通技術 無源光網絡承載5G前傳信號可行性的研究概述
普通技術 面向5G中傳和回傳網絡承載解決方案
普通技術 數據中心布線系統可靠性探討
普通技術 家庭互聯網終端價值研究
普通技術 鎏信科技CEO劉舟:從連接層構建IoT云生態,聚焦CMP是關鍵
普通技術 SCEF引入需求分析及部署應用
  版權與免責聲明: ① 凡本網注明“合作媒體:通信界”的所有作品,版權均屬于通信界,未經本網授權不得轉載、摘編或利用其它方式使用。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:通信界”。違反上述聲明者,本網將追究其相關法律責任。 ② 凡本網注明“合作媒體:XXX(非通信界)”的作品,均轉載自其它媒體,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責。 ③ 如因作品內容、版權和其它問題需要同本網聯系的,請在一月內進行。
通信視界
華為余承東:Mate30總體銷量將會超過兩千萬部
趙隨意:媒體融合需積極求變
普通對話 苗圩:建設新一代信息基礎設施 加快制造業數字
普通對話 華為余承東:Mate30總體銷量將會超過兩千萬部
普通對話 趙隨意:媒體融合需積極求變
普通對話 韋樂平:5G給光纖、光模塊、WDM光器件帶來新機
普通對話 安筱鵬:工業互聯網——通向知識分工2.0之路
普通對話 庫克:蘋果不是壟斷者
普通對話 華為何剛:挑戰越大,成就越大
普通對話 華為董事長梁華:盡管遇到外部壓力,5G在商業
普通對話 網易董事局主席丁磊:中國正在引領全球消費趨
普通對話 李彥宏:無人乘用車時代即將到來 智能交通前景
普通對話 中國聯通研究院院長張云勇:雙輪驅動下,工業
普通對話 “段子手”楊元慶:人工智能金句頻出,他能否
普通對話 高通任命克里斯蒂安諾·阿蒙為公司總裁
普通對話 保利威視謝曉昉:深耕視頻技術 助力在線教育
普通對話 九州云副總裁李開:幫助客戶構建自己的云平臺
通信前瞻
楊元慶:中國制造高質量發展的未來是智能制造
對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 楊元慶:中國制造高質量發展的未來是智能制造
普通對話 對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 對話倪光南:“中國芯”突圍要發揮綜合優勢
普通對話 黃宇紅:5G給運營商帶來新價值
普通對話 雷軍:小米所有OLED屏幕手機均已支持息屏顯示
普通對話 馬云:我挑戰失敗心服口服,他們才是雙11背后
普通對話 2018年大數據產業發展試點示范項目名單出爐 2
普通對話 陳志剛:提速又降費,中國移動的兩面精彩
普通對話 專訪華為終端何剛:第三代nova已成為爭奪全球
普通對話 中國普天陶雄強:物聯網等新經濟是最大機遇
普通對話 人人車李。航衲臧l力金融 拓展汽車后市場
普通對話 華為萬飚:三代出貴族,PC產品已走在正確道路
普通對話 共享退潮單車入冬 智享單車卻走向盈利
普通對話 Achronix發布新品單元塊 推動eFPGA升級
普通對話 金柚網COO邱燕:天吳系統2.0真正形成了社保管