




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于web的入侵防御系統(tǒng)的設計及應用摘 要web服務器往往得不到傳統(tǒng)防御方式的有效保護,使其成為整個網絡環(huán)境 中安全最薄弱的地方。緩沖區(qū)溢出、sql注入、基于腳本的ddos、盜鏈和跨站等 攻擊行為對web服務器的安全和穩(wěn)定造成極大的威脅,而冃前缺少有效的防御和 保護的方式。在這套入侵防御系統(tǒng)屮,可以通過制定策略來檢測所有訪問web 服務器的行為,可以有效地阻i上惡意攻擊從而保護web服務器的安全。關鍵詞:入侵防御,網絡安全,應用弓i言在當前的網絡壞境中,web服務器是最常被攻擊的冃標之一,攻擊者往往通 過突破web服務器,進一步對內部網絡進行滲透。針對web服務器的攻擊大多都 是通過http協(xié)
2、議發(fā)起的,常用的防火墻并不能有效的抵御針對web服務的攻擊 方式,諸如sql注入、基于腳木的ddos等。所以提出了保護web服務器安全的 web入侵防御系統(tǒng)。web入侵防御系統(tǒng)通過策略引擎加載用戶自定義的策略來控 制所有訪問web服務器的行為,強大而靈活的策略引擎能有效地實現特征檢測 或者異常檢測,進而保護web服務器的安全。2 ips工作原理ips通過監(jiān)視網絡或系統(tǒng)資源,尋找違反安全策略的行為或攻擊跡象,向受保 護目標提供主動防御。直接嵌入到網絡流量中,通過網絡端口接收來自外部的 流量,經檢查確認該流量不包含異常或可疑內容后,再由另一端口傳送到內部 網絡系統(tǒng)屮,這樣所有有問題的數據 包及來白
3、同一數據源的后續(xù)數據包,都能 在ips設備中被徹底清除3。其設計宗旨是預先對入侵活動和攻擊性網絡流量 進行攔截,避免其造 成損失,而不是簡單地在惡意流量傳送時或傳送后才發(fā)出 警報。tps 是通過直接嵌入到網絡流量中實現這一功能的,即通過一個網絡端口3 web服務器所受的威脅及防御web服務器在互聯(lián)網環(huán)境中會遭受格式各樣的安全威脅,下面列出的是一些 當前主流的針對web服務器的攻擊方式,它們有的會導致服務器被非法控制,有 的會使服務器無法提供正常的服務,而有的甚至會對訪問者的機器造成破壞。 3.1緩沖區(qū)溢出緩沖區(qū)溢岀1主要是因為web服務器程序對客戶端提交的數據缺少安全必 要的長度檢測,服務器程
4、序的堆棧被惡意數據填充,導致服務器程序執(zhí)行非法的 指令或產生拒絕服務。3. 2 sql注入攻擊sql注入攻擊2是近幾年非常流行的攻擊方式。對一個內部網絡的滲透往 往是從web服務腳本入手(如asp, php等),而sql注入漏洞通常是web服務 腳木中最容易找到的。目前互聯(lián)網上仍然存在很多有此風險的服務器。目前對sql注入攻擊提出的防御方案有:(1) 在服務端正式處理之前對提交數據的合法性進行檢查;(2) 封裝客戶端提交信息;(3) 替換或刪除敏感字符/字符串;(4) 屏蔽出錯信息。3. 3基于腳本的ddos攻擊當一個入侵者無法找到目標web服務器的有效滲透方式時,很可能選擇ddos 這種攻擊
5、方式。傳統(tǒng)的ddos攻擊方式在一臺硬件防火墻面往往失去了它的威力, 而基于腳木的ddos攻擊在近幾年里逐漸成為對web服務器發(fā)起拒絕服務的有效 方式。基于腳本的ddos的另一種攻擊方法是利用web系統(tǒng)中信息提交的功能提 交垃圾數據。防御這種攻擊方式的方法冇以下幾種:(1) 防止客戶端的快速刷新,可以通過cookie或者session來實現(2) 對消耗較大的頁面進行識別碼認證,確保是人而不是惡意的自動化程序 在訪問這個頁面。(3) 限制每個客戶端訪問的線程數3.4其他的不安全因素除了上面所列的兒種web服務器常見的攻擊威脅外,還存在一些其他的不安 全因素。(1) 缺少經驗的系統(tǒng)管理員往往沒冇正
6、確的設置服務器文件系統(tǒng)的權限 當一個入侵者獲得到web服務器上的較低的權限時,他通常會想方設法的提升門 己的權限,而服務器文件系統(tǒng)的權限系統(tǒng)沒冇正確設置時,可以通過較低的權限 下獲取到服務器上的敏感信息,為提升權限提供了條件。(2) 盜鏈盜鏈雖然不是一種攻擊手段,但因其消耗了大量的服務器資源和帶寬,所以 也是對當m web服務器的穩(wěn)定影響比較大的因素。盜鏈的定義是:此內容不在門 己服務器上,而通過技術手段,繞過別人放廣告冇利益的最終頁,直接在自己的 有廣告有利益的頁面上向最終用戶提供此內容。(3)腳本自身的bugweb服務器上所運行的動態(tài)腳本(asp、asp.net、jsp和php等等)自身所
7、 帶的bug也會給web服務器的安全帶來極大的威脅。4 web的入侵防御系統(tǒng)的設計由于系統(tǒng)要對客戶端發(fā)送的http報文進行分析,這需要對http報文進行解 析,http報文解析的方式主要有兩種:(1) 自解析:系統(tǒng)對原始數據報文自行解析;(2) 由web服務器進行解析,需要時系統(tǒng)通過web服務器提供的接口杳詢。要對客戶端發(fā)起的請求進行完全的監(jiān)控光靠檢測客戶端的行為是不夠的,因 為這樣我們只知道客戶端發(fā)起什么樣的請求但無法知道服務器端是如何對客戶 端進行響應的。一次完整的http會話既然包括客戶端發(fā)送請求和服務器端對請 求的響應,那么只冇監(jiān)控服務器端響應的內容后,才能知道這次http會話何時 結
8、束。如果web服務器提供ilttp報文封裝的接口,則在對客戶端進行響應時我 們也盡量調用web服務器的這些接口而不是自己組裝http報文。4. 1體系結構設計為了適用于不同的web服務器平臺,系統(tǒng)采用分層的體系結構設計。如圖1 所示,web入侵防御系統(tǒng)主要分3層。(1) 解析及響應層解析及響應層為整個防御系統(tǒng)捉供解析客戶端發(fā)送的http報文請求和封 裝服務器響應報文的接口。當有客戶端訪問服務器時,解析及響應層通知策略引 擎調度策略檢測客戶端的訪問信息,并為策略引擎提供響應的實現。(2) 策略引擎層策略引擎層的作用是策略的調度,在策略中通過“解析及響應層”提供的接 口獲取客戶端的信息,具體的響應
9、也交給“解析及響應層”完成。同吋策略引擎 述需要調度數據管理層完成策略的加載,以及日志記錄的功能。(3) 數據管理層數據管理層提供口志記錄、配置管理及策略腳木解析的功能。對數據進行處 理的過程都是在這一層里完成。系統(tǒng)毎一層功能都相對獨立,當某一層的實現發(fā)生變化時,只要提供的接口 沒有變化,對其他幾層就沒有影響。這樣的結構設計的最大優(yōu)點是使系統(tǒng)具有良好的擴展性4. 2處理流程web ips的具體處理流程如下:當客戶端發(fā)送http請求時,原始的數據報 文經http報文解析模塊解析,報文解析模塊會通知策略引擎模塊對客戶端的信 息進行檢測,策略引擎會依據策略腳木屮編寫的策略,通知http響應模塊對客
10、戶端的行為做出響應,并依據策略腳本中的策略,通知fi志記錄模塊記錄相應的 日志。依據web ips系統(tǒng)的體系結構及處理流程,系統(tǒng)主要模塊和作用如下:(1) ips管理模塊負責管理和連接各個模塊,管理數據流,讀取配置文件后完成整個系統(tǒng)的初 始化,對整個系統(tǒng)的狀態(tài)進行管理:運行,停止,重新加載。(2) 配置文件模塊主要完成配置文件的讀取及保存。捉供統(tǒng)一的接口,具體實現可以根據需要 而作修改。(3) http報文的解析模塊利用web服務器提供的接口,對客戶端訪問web服務器時提交的原始數據進 行解析,并通知ips管理模塊收到客戶端的訪問請求,請求策略引擎檢測客戶端 的訪問行為。(4) http響應模
11、塊當需要對客戶端的行為進行響應吋,在這一模塊屮對數據報文進行組裝。 提供以下幾種響應方式:調用下一條策略、接受請求、斷開鏈接、發(fā)送信息、 發(fā)送文件和重定向。(5) 策略引擎模塊首先策略引擎對策略腳本進行解析,根據策略的屬性和優(yōu)先級組裝策略 鏈。當ips管理模塊通知策略引擎對某一個客戶端的信息進行檢測吋,策略引 擎利用http報文解析模塊提供的接口獲取所需的客戶端得信息,分析客戶端 得行為,通過依次調度策略來控制客戶端的訪問。日志模塊日志模塊的作用是對系統(tǒng)運行時產生的日志或對入侵防御行為的進行記 錄。使用統(tǒng)一的格式將日志信息記錄在文木文件屮。4.3對客戶端訪問的響應 當需要對客戶端的行為進行響應
12、時,在這一模塊中對數據報文進行組裝。http響 應模塊主要捉供以下幾種響應方式:仃)調用下一條策略:策略的默認響應方式,當一條策略沒有對客戶端的行為做岀任何響應,則策略引擎默認調用策略鏈上的下一條策略來繼續(xù)檢測;(2) 接受請求:接受客戶端的訪問,且策略引擎將不會調用后面的策略;(3) 斷開鏈接:當策略引擎已經確認客戶端的訪問是惡意的攻擊行為吋,可以直 接斷開和客戶端的連接,在客戶端所看到的結果就是找不到服務器;(4) 發(fā)送信息:直接發(fā)送一段捉示或警告信息,并在客戶端的瀏覽器上顯示出來;(5) 發(fā)送文件:發(fā)送服務器上的一個文件到客戶端瀏覽器上顯示出來。這種響應 方式和上一種類式,但通過文件的方
13、式町以發(fā)送更多的信息到客戶端;(6) 重定向:讓web server重定向客戶端的訪問。和而兩種響應方式類似,區(qū)別 是客戶端會檢測到所訪問的url發(fā)生跳轉4.4策略引擎的設計策略引擎是整個系統(tǒng)的核心模塊,策略引擎可以加載兩種格式的策略,一 種是使用c+編碼的c+類,一種是使用策略腳本文件。策略引擎的初始化過程 為:讀取策略的屈性列表,根據屈性列表加載策略。初始化完成后就可以等待客 戶端發(fā)出訪問服務器的請求,為客戶端的訪問進行策略調度。4. 4.1策略的屬性(1) 策略的名稱用來標示不同的策略,在加載過程中,c+加載器通過此名稱生成c+策略 的對象。在屈性列表屮這一條不能省略。(2) 描述描述策
14、略的功能??梢允÷浴?3) 類型按類型可以把策略分為系統(tǒng)策略和用戶策略。系統(tǒng)策略永遠都是在用戶策略麗面 調度。(4) 加載器表示策略該有什么樣的加載器加載,加載器會將該策略轉換成策略引擎能夠 調度的策略對象。(5) 開啟狀態(tài)可以給策略的設置開啟狀態(tài):enable和disable,當一個策略處于disable 狀態(tài)時,策略引擎會跳過對其的加載。(6) 加載狀態(tài)策略的加載狀態(tài):unloaded/loaded,當策略的加載狀態(tài)不處于loaded時, 策略引擎不對其進行調度。這個值不能在配置文件中設置,默認為unloaded, 當策略引擎成功加載此策略時,會將此值設置為loadedo(7) 優(yōu)先級通過
15、優(yōu)先級可以控制策略調度的順序,優(yōu)先級得范圍是:0-255,值越低的 優(yōu)先級越高。(8) 路徑記錄策略腳本的位置,加載時通過這個屈性找到相應的策略文件的路徑。這個屈 性只對腳本加載器有效。4. 4.2策略的加載策略引擎加載策略的步驟如下:(1) ips通過配置模塊讀取出策略屬性列表,去掉此列表中策略名稱重復的項, 然后將此列表作為策略引擎初始化的參數或者作為策略引擎重新加載的參數。(2) 策略引擎將由此列表屮策略類型屬性和優(yōu)先級屬性,由系統(tǒng)策略到用戶策 略,從高優(yōu)先級策略到低優(yōu)先級的策略的次序,進行排序。形成一個新的策略列 表。(3) 按后而的步驟依次加載這個策略列表屮的屈性。(4) 如果策略的
16、開啟狀態(tài)屬性不為enable,則跳過該策略,繼續(xù)加載策略列表 中后面的策略。(5) 如果加載器的屬性為c+則交由c卄的策略加載器處理,如果是為腳本的就 由相應的腳本加載器處理。如果不能識別則跳過該策略。c+的加載器為一個策略對象的工廠類,會根據策略的名稱生成不同的策略對彖, 如果找不到為該名稱的策略則返冋null表示加載失敗。腳木加載器會根據屬性屮的路徑字段去讀取策略腳木,加載器要完成策略腳木語 法檢測的步驟,加載成功時也是返回一個策略對象,加載失敗返回null。如上所述,加載器會將策略對象的初始化(c+對象是通過調用構造函數來實現)。 所以在策略的調度前不需要再對策略做初始化。加載成功后就將
17、該策略的狀態(tài)屬性置為loaded,如果是加載失敗就保持該 選項為unloado(7) 直到策略列表中的所有項都處理結束后,重新遍歷這個列表,把loaded的 項依次提取出來,形成策略調度用的策略列表。4. 4.3策略的調度策略對彖中提供兩個接口供策略引擎調度,一個是onrecv,另一個是onsendo 當策略引擎是為檢測客戶端的信息而調動策略吋,都是調用的策略屮的onrecv 接口,而當策略引擎是為檢測服務器發(fā)送的數據是,都是調用策略中的onsend 接i i。策略引擎將按下而的步驟對策略鏈上的策略進行調度:(1) 依次按步驟(2) (3)調動策略鏈上的策略(2) 如果策略返回的是一個“調用下
18、一條策略”的響應吋,則調用下一條策略。(3) 如果策略返回的不是“調用下一條策略”的響應時,則停止調度策略鏈上后 面的策略并返回該響應。(4) 重復步驟(2) (3)直到策略全部調度完,如果沒冇任何策略響應,則策略 引擎返冋一個“接受請求”的響應。4. 4.4策略的接口(1)策略調度的接口為時策略引擎能調度策略對客戶端的行為進行檢測,策略為策略引擎的不同階段 的調度提供三個接口: onrecv、onsend和onend。(2)客戶端對象:client策略調度接口的參數,策略引擎在調用onrecv和onsend時傳入的參數就是 client, client中提供獲取客戶端信息的方法:getser
19、vervariableo由http 解析模塊提供其具體實現。(3)獲取客戶端信息的接口: getservervariableclient對彖的方法。策略引擎需要為策略提供能獲取客戶端或服務器端的信息 的方法,具體的實現是在http解析與響應層來完成的。http解析與響應層屮會 為每一個客戶端的請求生成一個對彖,這個對彖捉供獲取客戶端和服務器端信息 的訪問為getservervariable0此接口和web腳本中的getservervariable的作 用一致,用來獲得servervariableo(4)響應的接口: response和響應的方式對應:disconnect、sendmsg> sendf訂e、redirect 和 accept,next policyo策略引擎認為策略的默認
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 兩個人分配財產協(xié)議書
- 公司間利潤分成協(xié)議書
- 檢驗醫(yī)學生物安全
- 超市合同續(xù)簽協(xié)議書
- 書法班入學須知協(xié)議書
- 閑置土地美化協(xié)議書
- 農村自留地轉讓協(xié)議書
- 非因工傷死亡協(xié)議書
- 集體核酸檢測協(xié)議書
- 露臺漏水調解協(xié)議書
- 區(qū)塊鏈在特種設備數據共享交換模型中的研究
- 遼寧省沈陽市沈北新區(qū)2024-2025學年初三下學期質量調研考試(一模)語文試題含解析
- 2025年九年級中考數學三輪沖刺訓練一次函數中面積相關問題訓練
- 鉆探高級工試題及答案
- 2025-2030中國調光玻璃行業(yè)規(guī)模走勢及投資可行性分析研究報告
- 《明朝的邊疆政策》課件
- 湖北省武漢市2025屆高中畢業(yè)生四月調研考試生物試題及答案(武漢四調)
- 人教版二年級數學下冊第七單元創(chuàng)新情境卷(含答案)
- 無錫保安考試題型及答案
- 延遲退休合同協(xié)議
- 消毒隔離知識培訓課件
評論
0/150
提交評論