freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

windows平臺下個人防火墻的設計與實現畢業(yè)論文-在線瀏覽

2024-08-04 05:38本頁面
  

【正文】 , 2010, 7(2):8492.]。目前很多比較優(yōu)秀著名的個人防火墻多采用復合型數據包過濾技術進行開發(fā),即采用兩種或多種封包截獲技術進行數據包的過濾,以達到全面、強大、平臺兼容的效果。 課題研究內容與結構本文主要研究通過實現FilterHook ,本課題主要分為核心層驅動和用戶層調用函數及界面兩個模塊,通過用戶層操作控制核心層驅動程序,從而實現個人防火墻。本文的整體結構如下:216。216。216。216。216。216。第二章 相關理論簡介本章將對課題實現中所用到的技術和開發(fā)工具進行介紹。另將主要介紹如FilterHook Driver、IP過濾驅動(IP Filter Driver)等所用到的技術。在Windows下數據包的攔截方式可分為用戶態(tài)和內核態(tài)數據包攔截兩大類[[] Chiong R, Dhakal S. On the Insecurity of Personal Firewall[J]. Information Technology,2008,(8):110.]。Winsock2是Windows ,SPI是Winsock2提供的一個可編程接口。Winsock2 SPI以DLL形式存在,編程簡單,調試方便。但無法攔截核心層或不用Socket的網絡通訊(如ICMP)的數據包,容易被木馬或病毒繞過[[] 朱雁輝. Windows防火墻與網絡封包截獲技術[M]. 北京:電子工業(yè)出版社,2002:7790.]。目前很多大型防火墻都是采用復合型的數據包過濾技術。FilterHook Driver將在后邊進行單獨的介紹。這就完成了數據包的過濾。且TDI驅動需重啟系統(tǒng)才能生效。2. NDIS中間層驅動:位于協(xié)議驅動和小端口驅動之間。NDIS由于是在網卡驅動程序和傳輸驅動程序間插入了一層,其優(yōu)點是過濾功能強大,能截獲所有的數據包,安全系數高[[] 劉鵬遠. Windows下個人防火墻實現技術路線分析[J]. 計算機工程與設計, 2008, 29(21):6568.]。3. NDISHook Driver:NDISHook Driver是目前大多數網絡防火墻采用的方法。替換其中某些關鍵函數,從而達到截獲網絡數據包的目的[[] Chris Ries. Defeating Windows Personal Firewalls: Filtering Methodologies, Attacks, and Defense[R]. VigilantMinds Inc, 2005:315.]。以上幾種方法對于團隊開發(fā)而言,NDISHook是最佳選擇,TDIFilter Driver次之。 FilterHook Driver國內關于TDI和NDIS驅動的資料比較多,但有關FilterHook Driver 的書籍資料就相對少很多。IP Filter ,該文件在Windows XP中的System32\drivers目錄下,它允許用戶注冊自己的IP數據包處理函數。FilterHook Driver主要利用IpFilterDriver()所提供的功能來攔截網絡數據包,可應用與TCP\IP協(xié)議[[] 潘瑜. 基于FilterHook技術的防火墻軟件設計與實現[J]. 江蘇技術師范學院學報, 2010, 16(9):1823.]。實現步驟如下:1. 建立FilterHook Driver。3. 獲得指針后,通過發(fā)送特殊的IRP請求安裝過濾函數,該請求傳遞的數據包含了過濾函數的指針。5. 結束過濾,撤銷過濾函數(通過傳遞NULL指針作為過濾函數指針來實現)。只有當FilterHook回調函數為空時,FilterHook Driver才能向IP Filter Driver注冊自己提供的回調函數,后者調用提供的回調函數來實現FilterHook Driver控制數據包過濾。但無法獲取當前應用程序進程信息,也無法取得數據包的以太幀,也不支持Windows 2000之前的系統(tǒng)。 TCP\IP網絡通信協(xié)議TCP\IP協(xié)議指因特網整個TCP\IP協(xié)議族,而不是表面上的TCP和IP協(xié)議的合稱。與OSI七層參考模型不完全相同,TCP\IP協(xié)議族通常被認為是一個四層協(xié)議系統(tǒng)。防火墻系統(tǒng)的過濾驅動模塊工作在Windows TCP\IP協(xié)議模型的傳輸層。 IP網際協(xié)議IP是TCP\IP協(xié)議族中最為核心的協(xié)議。IP數據報由IP首部和數據組成。其首部的固定部分的字段為:版本(4bit)、首部長度(4bit)、服務類型(8bit)、總長度(16bit)、標識(16bit)、標志(3bit)、片偏移(13bit)、生存時間TTL(8bit)、協(xié)議(8bit)、首部檢驗和(16bit)、源地址(32bit)、目的地址(32bit)。 TCP傳輸控制協(xié)議TCP協(xié)議屬于運輸層,向應用層提供面向連接的,可靠的字節(jié)流服務。源端口和目的端口號用于需找發(fā)送端和接收端的應用進程,這兩個值加上IP首部中的源地址和目的地址可以唯一確定一個TCP鏈接。許多應用程序都使用TCP,如FTP、Telnet和SMTP。與TCP協(xié)議同屬運輸層,但與TCP協(xié)議不同,它是一種非連接導向協(xié)議,不提供可靠性。源、目端口號指明發(fā)送進程和接收進程;UDP長度表示UDP首部和UDP數據的字節(jié)長度,最小值為8byte。 內核模式驅動程序開發(fā)內核模式驅動是Windows系統(tǒng)中兩種基本驅動程序之一。內核模式驅動程序可執(zhí)行某些受保護的操作,并可訪問用戶模式驅動程序無法訪問的系統(tǒng)結構。本個人防火墻的核心FilterHook驅動就是內核模式驅動程序,它利用Microsoft在Windows的網絡協(xié)議層上提供的接口在系統(tǒng)中實現過濾驅動[[] Zwicky E. D, Cooper S, Chapman D. B. Building the Internet Firewall[M]. 2nd ed.[S. 1]: McGrawHill, 2003:9095.]。每個驅動程序都至少實現三個例程:入口例程(DriverEntry)、卸載例程和打開關閉例程。當驅動被加載到內存中時,DriverEntry例程將被調用。I/O管理器為每個加載到內存的驅動程序創(chuàng)建一個驅動程序對象,并將這個對象指針傳遞給驅動程序,驅動程序就可以在需要的時候調用這個設備對象。打開關閉例程,當應用程序需要打開或關閉到驅動的句柄時,I\O管理器調用這個例程,以做出相應處理。第三章 開發(fā)工具與環(huán)境簡介本章主要介紹本課題的開發(fā)環(huán)境和所用到的開發(fā)工具,平臺如題所述,是Windows平臺,版本為Windows XP。另外,由于本文涉及驅動編程,為了避免調試過程中驅動程序錯誤引起的系統(tǒng)錯誤等不必要的麻煩,本文所述系統(tǒng)的開發(fā)將在VMware Workstation虛擬機內的操作系統(tǒng)上完成開發(fā)和測試。Visual Studio功能強大,可以用以創(chuàng)建Windows應用程序、網絡應用程序、網絡服務、android應用程序等,里邊包含了Visual Studio C++開發(fā)工具,可進行C\C++相關程序開發(fā),且引入了MFC庫。能切實提高開發(fā)人員的開發(fā)效率。經歷標準制定和多次修訂(現在最新標準為C99),發(fā)展至今,已成為全球使用者最多的程序設計語言之一。C語言是一種通用的程序設計語言,他不受限于操作系統(tǒng)或機器。此外,該語言還有高效性、可移植性、功能強大、靈活性、提供標準庫等優(yōu)點[[] (美)K. N. King. C語言程序設計:現代方法[M]. 【譯者】呂秀鋒. 北京:人民郵電出版社, 2007:24.],這也是本文所述系統(tǒng)采用C語言編寫的主要原因。接下來對驅動開發(fā)工具和驅動程序的編譯執(zhí)行做簡單介紹。WDK已經自帶所有需要的頭文件、庫、C/C++語言及匯編語言的編譯器與連接器,所以可以在不安裝Visual Studio等SDK的環(huán)境下編程。WDK是Windows內核開發(fā)工具,驅動程序屬于內核編程而非應用程序編程,故用WDK編譯的驅動程序源文件中不能調用Win32 API函數,另外,部分的C Runtime函數也不能使用,編寫程序可以參考說明文檔,文檔中說明的函數都可使用。另外附加說明一點,為了方便驅動被加載后能夠被卸載,我們需要在編寫程序的時候設置DriverUnload函數指針[[] 譚文, 楊瀟等. 寒江獨釣Windows內核安全編程[M]. 北京:電子工業(yè)出版社, 2009:214.]。這兩個文件分別是makefile和source,且文件名必須如此。如本文總所用source文件內容實例如下:TARGETNAME=DrvFltIpTARGETPATH=objTARGETTYPE=DRIVERSOURCES= 其中TARGETNAME表示編譯后得到的文件的名字,;TARGETPATH 表示文件所在路徑;TARGETTYPE表示編譯的目標類型;(多個文件間用空格分開)。 安裝運行驅動程序安裝驅動程序的工具有很多。安裝好驅動程序后,就可以通過我們的方式查看它的運行情況。微軟提供的MFC是放置Windows API的面向對象的包裝的C++類庫。MFC封裝了許多類,其中一些可以直接使用,另一些則主要作為自己的類的基礎。在類庫中定義的成員函數有幾百個,其中許多事Windows API的簡單封裝,有的甚至與相應API同名,這使得MFC程序更加簡單易懂。MFC框架定義了程序的輪廓,提供了一套用戶接口的標準實現方法,程序員用MFC編寫Windows應用程序所需要做的就是通過這些接口把具體應用程序特有的東西填入這個輪廓。第四章 個人防火墻的總體設計本章主要介紹本文windows平臺下個人防火墻系統(tǒng)的總體設計、工作流程和功能模塊。本個人防火墻系統(tǒng)采用結構化設計的方法來實現系統(tǒng)的總體功能,實現的防火墻界面直觀,操作簡單。 防火墻整體結構本文個人防火墻主要分為用戶層和驅動層兩個模塊,其整體結果如圖41所示:圖 41 防火墻整體結構用戶層界面驅動控制驅動層FilterHook Driver接口IP Filter Driver ()網絡數據包 用戶層用戶層里又包含界面模塊和驅動控制模塊兩個模塊:1. 驅動控制模塊驅動控制模塊主要通過自己編寫的控制函數來實現用戶層與驅動層之間的數據交流,通過這個模塊,實現用戶層與底層驅動之間的交互,包括安裝服務,打開設備和設備控制。用戶通過界面模塊可以實現對個人防火墻的各項操作,如啟動、停止、添加\移除過濾規(guī)則等。驅動層模塊是整個防火墻的核心模塊。這個驅動本身提供一個接口,接口是通過回調函數來實現的,接口負責對驅動進行操控。當IP Filter Driver接受到數據包后,就會調用這個回調函數,然后根據函數中已定義的規(guī)則就可以實現對數據包的處理。2. 自定義過濾規(guī)則:添加過濾規(guī)則時,可以輸入協(xié)議類型,源、目端口號,源IP地址、目的IP地址、源、目掩碼。3. 提供界面顯示用戶已經設置的所有規(guī)則,以方便用戶查看和修改。5. 提供用戶接口實現防火墻的啟動、關閉等相關功能。第五章 個人防火墻的詳細設計與實現實現本個人防火墻的關鍵首先就是實現驅動層的FilterHoo
點擊復制文檔內容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1