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

正文內(nèi)容

windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-在線瀏覽

2024-11-04 16:33本頁面
  

【正文】 ...... 26 功能測試 ....................................................................................................... 26 結(jié)論 ......................................................................................................................................... 29 參考文獻(xiàn) ................................................................................................................................. 30 致謝 ......................................................................................................................................... 31 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 1 第一章 前言 本章主要闡述 windows 平臺下個(gè)人防火墻開發(fā)的相關(guān)背景和課題研究意義,對個(gè)人防火墻在國內(nèi)外的發(fā)展現(xiàn)狀作簡要介紹。 課題的開發(fā)背景與意義 開發(fā)背景 隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展和互聯(lián)網(wǎng)在全世界范圍內(nèi)的普及,人們的生活越來越離不開互聯(lián)網(wǎng) —— 學(xué)習(xí),娛樂,通信,信息獲取等等, 互聯(lián)網(wǎng) 大大提高了我們的效率,豐富了我們的生活。 因此,為了給用戶提供一個(gè)良好的網(wǎng)絡(luò)環(huán)境,需要一種方法來為用戶抵御這類來自網(wǎng)絡(luò)的攻擊。因此,個(gè)人防火墻在保護(hù)用戶個(gè)人計(jì)算機(jī)的網(wǎng)絡(luò)安全方面起到重要作用。但我們知道,世界上沒有絕對安全的操作系統(tǒng), Windows 也存在很多漏洞,給駭客通過網(wǎng)絡(luò)和系統(tǒng)漏洞對用戶進(jìn)行攻擊留下了后門,這無疑會給用戶的財(cái)產(chǎn)和隱私帶來巨大的損失。 考 慮到各種防火墻的優(yōu)缺點(diǎn)及其實(shí)現(xiàn)的難易程度,并結(jié)合個(gè)人能力。 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 2 研究意義 個(gè)人防火墻作為作為最常用的網(wǎng)絡(luò)安全工具,其實(shí)現(xiàn) 所用到的很多技術(shù)跟企業(yè)級防火墻和硬件防火墻的基本原理是相同的, 可以從研究個(gè)人防火墻開始,由淺入深,進(jìn)而理解企業(yè)級防火墻和硬件防火墻的原理和實(shí)現(xiàn)方法。 Windows 作為國內(nèi)外主要的桌面操作系統(tǒng),其平臺下的個(gè)人防火墻為用戶的網(wǎng)絡(luò)安全起到 了很好的防護(hù)作用。 本文 采用的通過 FilterHook Driver 實(shí)現(xiàn)數(shù)據(jù)包攔截的防火墻技術(shù)雖然不是開發(fā)防火墻最好的方法,但對于對這個(gè)領(lǐng)域感興趣的個(gè)人是一個(gè)具實(shí)際意義的好的開始。 這類防火墻根據(jù)數(shù)據(jù)包頭信息和過濾規(guī)則來控制數(shù)據(jù)包的過濾,一般用于對安全性要求不是很高,偏重?cái)?shù)據(jù)處理速度的網(wǎng)絡(luò)路由器上。并同時(shí)提出了第三代防火墻 — 應(yīng)用層防火墻的概念(或者叫做代理防火墻) 。 它根據(jù)過去的通信信息和應(yīng)用程序狀態(tài)信息動態(tài)生成過濾規(guī)則。 ? 1998 年, NAI 公司推出了一種自適應(yīng)代理( Adaptive proxy)技術(shù),并在其產(chǎn)品Gauntlet Firewall for NT 中得以實(shí)現(xiàn),給代理類型的防火墻賦予了全新的意義,可以稱之為第五代防火墻。 另外,基于實(shí)現(xiàn)劃分,防火墻又可分基于路由器的防火墻、用戶花的防火墻、建立在通用操作系統(tǒng)上的防火墻和具有安全操作系統(tǒng)的防火墻 四個(gè)階段 : ? 基于路由器的防火墻即第一代防火墻,上面已做簡單介紹。 ? 建立在通用操作系統(tǒng)上的防火墻,顧名思義,就是將防火墻以軟件或硬件的實(shí)現(xiàn)方式獨(dú)立出來,并配有專用的代理系統(tǒng),以監(jiān)控所有協(xié)議的數(shù)據(jù)和指令,并能保護(hù) 用戶的編程空間和可配置內(nèi)核參數(shù)的設(shè)置,這使得防火墻的安全性和速度得到大幅提高。 windows 操作系統(tǒng)作為全球使用者最多的操作系統(tǒng) ,其平臺下 開發(fā)出了許多優(yōu)秀的個(gè)人防火墻。國內(nèi)市場上個(gè)人用戶較多的有天網(wǎng)防火墻個(gè)人版、金山 網(wǎng)鏢 、瑞星、費(fèi)爾等常見個(gè)人防火墻。 總的來說,可分為用戶態(tài)和內(nèi)核態(tài)數(shù)據(jù)包攔截兩大類 [1]。 目前很多比較優(yōu)秀著名的個(gè)人防火墻多采用復(fù)合型數(shù)據(jù)包過濾技術(shù)進(jìn)行開發(fā),即采windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 4 用兩種或多種封包截獲技術(shù)進(jìn)行數(shù)據(jù)包的過濾,以達(dá)到全面、強(qiáng)大、平臺兼容的效果。 課題研究內(nèi)容與結(jié)構(gòu) 本文 主要研究 通過實(shí)現(xiàn) FilterHook Driver 的方式 來操控 對網(wǎng)絡(luò)數(shù)據(jù)包的過濾 , 本課題主要分為核心層驅(qū)動和用戶層調(diào)用函數(shù)及界面兩個(gè)模塊,通過用戶層操作控制核心層驅(qū)動程序, 從而實(shí)現(xiàn)個(gè)人防火墻 。本文的整體結(jié)構(gòu)如下: ? 第一章 主要闡述系統(tǒng)開發(fā)的背景和研究意義、國內(nèi)外研究現(xiàn)狀以及本文總體概述。 ? 第三章 將介紹本防火墻系統(tǒng)開發(fā)中所用到的開發(fā)環(huán)境和工具。 ? 第五章 主要闡述核心功能的 具體 實(shí)現(xiàn) 和 詳細(xì) 分析 以及系統(tǒng)測試等 。 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 5 第二章 相關(guān) 理論 簡介 本章將對課題實(shí)現(xiàn)中所用到的技術(shù)和開發(fā)工具進(jìn)行介紹。另 將主要介紹如 FilterHook Driver、 IP 過濾驅(qū)動( IP Filter Driver)等所用到的技術(shù) 。在 Windows 下數(shù)據(jù)包的攔截方式 可分為用戶態(tài)和內(nèi)核態(tài)數(shù)據(jù)包攔截兩大類 [2]。 Winsock2 是 Windows Sockets 的 版本, SPI 是 Winsock2 提供的一個(gè) 可編程接口。 Winsock2 SPI 以 DLL 形式存在,編程簡單,調(diào)試方便。但無法攔截核心層或不用 Socket 的網(wǎng)絡(luò)通訊(如 ICMP)的數(shù)據(jù)包,容易被木馬或病毒繞過 [3]。目前很多大型防火墻都是采用復(fù)合型的數(shù)據(jù)包過濾技術(shù) 。 FilterHook Driver 將在后邊進(jìn)行單獨(dú)的介紹。 這就完成了數(shù)據(jù)包的過濾。缺點(diǎn)是該驅(qū)動位于 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 6 上,不能獲取由 直接處理的數(shù)據(jù)包,且 TDI 驅(qū)動需重啟系統(tǒng)才能生效。 2. NDIS 中間層驅(qū)動:位于協(xié)議驅(qū)動和小端口驅(qū)動之間。 NDIS 由于是在網(wǎng)卡驅(qū)動程序和傳輸驅(qū)動程序間插入了一層, 其優(yōu)點(diǎn)是過濾功能強(qiáng)大,能截獲所有的數(shù)據(jù)包 ,安全系數(shù)高 [5]。 3. NDISHook Driver: NDISHook Driver 是目前大多數(shù)網(wǎng)絡(luò)防火墻采用的方法。該技術(shù)的實(shí)現(xiàn)方法是安裝 Hook 鉤子到 中,替換其中某些關(guān)鍵函數(shù),從而達(dá)到截獲網(wǎng)絡(luò)數(shù)據(jù)包的目的 [6]。 以上幾種方法對于團(tuán)隊(duì)開發(fā)而言, NDISHook 是最佳選擇, TDIFilter Driver次之。 FilterHook Driver 國內(nèi)關(guān)于 TDI 和 NDIS 驅(qū)動的資料比較多,但有關(guān) FilterHook Driver 的書籍資料就相對少很多。 IP Filter Driver 對應(yīng) 文件, 該文件在 Windows XP 中的 System32\drivers 目錄下,它允許用戶注冊自己的 IP 數(shù)據(jù)包處理函數(shù)。FilterHook Driver 主要利用 IpFilterDriver( ) 所提供的功能來攔截網(wǎng)絡(luò)數(shù)據(jù)包 ,可應(yīng)用與 TCP\IP 協(xié)議 [7]。實(shí)現(xiàn)步驟如下: 1. 建立 FilterHook Driver。 3. 獲得指針后,通過發(fā)送特殊的 IRP 請求安裝過濾函數(shù),該請求傳遞的數(shù)據(jù)包含windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 7 了過濾函數(shù)的指針。 5. 結(jié)束過濾,撤銷過濾函數(shù)(通過傳遞 NULL 指針作為過濾函數(shù)指針來實(shí)現(xiàn))。只有當(dāng) FilterHook 回調(diào)函數(shù)為空時(shí),F(xiàn)ilterHook Driver 才能 向 IP Filter Driver 注冊自己提供的回調(diào)函數(shù),后者調(diào)用提供的回調(diào)函數(shù)來實(shí)現(xiàn) FilterHook Driver 控制數(shù)據(jù)包過濾。但無法獲取當(dāng)前應(yīng)用程序進(jìn)程信息,也無法取得數(shù)據(jù)包的以太幀,也不支持 Windows 2020 之前的系統(tǒng)。 TCP\IP 網(wǎng)絡(luò)通信協(xié)議 TCP\IP 協(xié)議 指因特網(wǎng)整個(gè) TCP\IP 協(xié)議族,而不是表面上的 TCP 和 IP 協(xié)議的合稱。與 OSI 七層參考模型不完全相同, TCP\IP 協(xié)議族通常被認(rèn)為是一個(gè)四層協(xié)議系統(tǒng)。 防火墻系統(tǒng)的過濾驅(qū)動模塊工作在 Windows TCP\IP 協(xié)議模型的傳輸層 。 應(yīng)用層 表示層 數(shù)據(jù)鏈路層 網(wǎng)絡(luò)層 傳輸層 會話層 物理層 應(yīng)用層 傳輸層 網(wǎng)絡(luò)層 鏈路層 圖 21 TCP\IP協(xié)議族與 OSI模型對應(yīng)關(guān)系 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 8 IP 網(wǎng)際協(xié)議 IP 是 TCP\IP 協(xié)議族中最為核心的協(xié)議。 IP 數(shù)據(jù)報(bào)由 IP 首部和數(shù)據(jù)組成。 其首部的固定部分的字段為: 版本( 4bit) 、首部長度( 4bit)、服務(wù)類型( 8bit)、總長度( 16bit)、標(biāo)識( 16bit)、標(biāo)志( 3bit)、片偏移( 13bit)、生存時(shí)間TTL( 8bit)、協(xié)議( 8bit)、首部檢驗(yàn)和( 16bit)、源地址( 32bit)、目的地址( 32bit)。 TCP 傳輸控制協(xié)議 TCP 協(xié)議屬于運(yùn)輸層,向應(yīng)用層提供面向連接的,可靠的字節(jié)流服務(wù)。源端口和目的端口號 用于需找發(fā)送端和接收端的應(yīng)用進(jìn)程 ,這兩個(gè)值加上 IP 首部中的源地址和目的地址可以唯一確定一個(gè) TCP 鏈接。許多應(yīng)用程序都使用 TCP,如 FTP、 Tel 和 SMTP。 與 TCP 協(xié)議同屬運(yùn)輸層,但與 TCP 協(xié)議不同,它是一種非連接導(dǎo)向協(xié)議,不提供可靠性。源、目端口號指明發(fā)送進(jìn)程和接收進(jìn)程; UDP 長度表示 UDP 首部和 UDP 數(shù)據(jù)的字節(jié)長度,最小值為 8byte。 IP 首部 TCP 首部 TCP 數(shù)據(jù) 圖 22 TCP數(shù)據(jù)在 IP數(shù)據(jù)報(bào)中的封裝 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 9 內(nèi)核模式 驅(qū)動程序 開發(fā) 內(nèi)核模式驅(qū)動是 Windows 系統(tǒng)中兩種基本驅(qū)動程序之一。 內(nèi)核模式驅(qū)動程序可執(zhí)行某些受保護(hù)的操作,并可訪問用戶模式驅(qū)動程序無法訪問的系統(tǒng)結(jié)構(gòu)。 本個(gè)人防火墻的核心 FilterHook 驅(qū)動就是內(nèi)核模式驅(qū)動程序,它利用 Microsoft 在 Windows 的網(wǎng)絡(luò)協(xié)議層上提供的接口在系統(tǒng)中實(shí)現(xiàn)過濾驅(qū)動 [9]。每個(gè)驅(qū)動程序都至少實(shí)現(xiàn)三個(gè)例程:入口例程( DriverEntry)、卸載例程和打開關(guān)閉例程。 當(dāng)驅(qū)動被加載到 內(nèi)存中時(shí), DriverEntry 例程將被調(diào)用。 I/O 管理器為每個(gè)加載到內(nèi)存的驅(qū)動程序創(chuàng)建一個(gè)驅(qū)動程序?qū)ο螅⑦@個(gè)對象指針傳遞給驅(qū)動程序,驅(qū)動程序就可以在需要的時(shí)候調(diào)用這個(gè)設(shè)備對象。 打開關(guān)閉例程,當(dāng)應(yīng)用程序需要打開或關(guān)閉到驅(qū)動的句柄時(shí), I\O 管理器調(diào)用這個(gè)例程,以做出相應(yīng)處理。 windows平臺下個(gè)人防火墻的設(shè)計(jì)與實(shí)現(xiàn) 10 第三章 開 發(fā)工具與環(huán)境簡介 本章主要介紹本課題的開發(fā)環(huán)境和所用到的開發(fā)工具,平臺如題所述,是 Windows平臺,版本為 Windows XP。 另外,由于本文涉及驅(qū)動編程,為了避免調(diào)試過程中驅(qū)動程序錯(cuò)誤引起的系統(tǒng)錯(cuò)誤等不必要的麻煩,本文所述系統(tǒng)的開發(fā)將在 VMware Workstation 虛擬機(jī)內(nèi)的操作系統(tǒng)上完成開發(fā)和測試。 Visual Studio 功能強(qiáng)大,可以用以創(chuàng)建Windows 應(yīng)用程序、網(wǎng)絡(luò)應(yīng)用程序、網(wǎng)絡(luò)服務(wù)、 android 應(yīng)用程序等,里邊包含了 Visual Studio C++開發(fā)工具,可進(jìn)行 C\C++相關(guān)程序開發(fā),且引入了 MFC 庫。 能切實(shí)提高開發(fā)人員的開發(fā)效率。 經(jīng)歷標(biāo)準(zhǔn)制定和多次修訂(現(xiàn)在最新標(biāo)準(zhǔn)為 C99), 發(fā)展至今,已成為全球使用者最多的程序設(shè)計(jì)語言之一。 C 語言是一種通用的程序設(shè)計(jì)語言,他不受限 于 操作系統(tǒng)或機(jī)器。此外,該語言還有高效性、可移植性、功能強(qiáng)大、靈活性、提供標(biāo)準(zhǔn)庫等優(yōu)點(diǎn) [11],這也是本文所述系統(tǒng)采用 C 語言編寫的主要原因。 接下來對驅(qū)動開發(fā)工具和驅(qū)動程序的編譯執(zhí)行做簡單介紹。 WDK 已經(jīng)自帶所有需要的頭文件、庫、 C/C++語言及匯編語言的編譯器與連接器,所以可以在不安裝 Visual Studio 等 SDK 的環(huán)境下編 程 。 WDK 是 Windows 內(nèi)核開發(fā)工具,驅(qū)動程序?qū)儆趦?nèi)核編程而非應(yīng)用 程序編程,故用WDK 編譯的驅(qū)動程序源文件中不能調(diào)用 Win32 API 函數(shù),另外,部分的 C Runtime 函數(shù)也不能使用,編寫程序可以參考說明文檔,文檔中說明的函數(shù)都可使用。另外附加說明一點(diǎn),為了方便驅(qū)動被加載后能夠被卸載,我們需要在編寫程序的時(shí)候設(shè)置 DriverUnload 函數(shù)指針 [12]。這兩個(gè)文件分別是 makefile 和 source,且文件名必須如此。如本文總所用 source 文件內(nèi)容實(shí)例如下: TARGETNAME=DrvFltIp TARGETPATH=obj TARGETTYPE=DRIVER SOURCES= 其中 TARGETNAME 表示編譯后得到的文件的名字,如本實(shí)例編譯后得到的為; TARGETPATH 表示文件所在路徑; TARGETTYPE 表示編譯的目標(biāo)類型;SOURCES 則為所要編譯的 .c 文件(多個(gè)文件間用空格分開)。 安裝運(yùn)行驅(qū)動程序 安裝驅(qū)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1