基于Web知識庫的多層次Webshell防御研究
發(fā)布時間:2020-08-25 06:50
【摘要】:Web系統(tǒng)的廣泛使用使得其安全性越來越被重視。攻擊者對Web系統(tǒng)攻擊成功后,通常會上傳Webshell達到長久控制服務器的目的。因此,如何高效的檢測Webshell成為Web安全領域熱門的課題。本文從實驗入手,選取十個使用率高的開源項目,并爬取了 1233個Webshell隨機放置在這些項目中,然后分別利用動態(tài)和靜態(tài)檢測算法對Webshell進行檢測。最終,得出當前檢測算法的兩個不足:泛化防御問題,無法對不同的Web系統(tǒng)進行針對性的防御,導致算法不同項目之間成功率差別很大;單層次防御問題,只在單一層面做防御,很容易被Webshell逃逸,導致檢測率降低。針對這兩個問題,本文提出基于Web知識庫的多層次檢測理論。從建立Web知識庫入手,首先選取功能測試階段產生的測試數據作為原始數據,然后,建立針對請求與響應的請求響應樹,最后,在文件樹的基礎上擴展請求響應樹形成描述該Web系統(tǒng)的知識庫。圍繞Web知識庫,文章又從前期加固,中期防御和后期審計三個層次,建立對應的不同防御方法。實現了多層次防御系統(tǒng)。最后,利用對開源漏洞平臺DVWA的防御,進行了本系統(tǒng)與其它檢測算法的準確性對比,在準確性上能夠提高15%左右,在誤報率上能夠降低5%左右。
【學位授予單位】:浙江大學
【學位級別】:碩士
【學位授予年份】:2018
【分類號】:TP393.08
【圖文】:
安全配置錯誤,敏感信息泄露,攻擊檢測與防護不足,跨站點請求偽造,使用含逡逑有己知漏洞的組件和未受有效保護的API列為Web系統(tǒng)10大最常見漏洞,各個逡逑常見漏洞所占比例如圖1.1所示。攻擊者利用這些漏洞控制服務器后,通常會向逡逑web服務器上傳Webshell,以便對內網進行進一步滲透。Webshell是一種利用逡逑Web服務器支持的腳本語言執(zhí)行服務器系統(tǒng)命令的方法。逡逑1逡逑
戶的合法請求。逡逑通過統(tǒng)計,發(fā)現管理員請求的次數為75056遠低于疑似攻擊的次數413401,逡逑它們分部的折線圖如圖2.7所示。逡逑91邐7逡逑/邐-0-邐y=attack逡逑8邋-邐0邋6邋o邐p邐y=admin逡逑丨逡逑Serial逡逑圖2.7管理員用戶與攻擊請求量對比逡逑可以看出,在實際運行環(huán)境中學習并建立知識庫是比較困難的,主要存在兩逡逑類問題:逡逑>用戶訪問頻率無法確定。部分系統(tǒng)用戶對系統(tǒng)的操作較少,這類型的逡逑請求甚至遠遠不如訪問異常的請求多,學習起來很容易忽略,影響用逡逑戶的正常使用;逡逑>自動化攻擊頻率和方式比較固定。在2.1.2節(jié)中已經提到,針對Web逡逑系統(tǒng)的攻擊方式第一步是發(fā)現目標,而這一步中往往使用自動化的掃逡逑描工具,比如Burpsuit[?],Zaproxy[24]等,這就導致攻擊數據通常是有逡逑22逡逑
繼續(xù)考察實驗結果,通過對比可以發(fā)現,靜態(tài)檢測方法和動態(tài)檢測方法對于逡逑實際項目的檢測成功率都不高。分別是71.23%和63.34%。但是,逃逸二者檢測逡逑的Webshell各有不同。相同的概率僅為44.22%和34.73%。如圖3.4所示。逡逑198邐295逡逑?態(tài)檢》方法.邐動態(tài)栓a方法逡逑55.77%邐65.27%逡逑圖3.4動態(tài)靜態(tài)檢測對比逡逑再去計算對每個項目的平均檢測成功率:NeoPI概率為54.42%,Modsecurity逡逑概率為47.22%,計算每個Webshell平均逃逸率:NeoPI為52.44%,邋Modsecurity逡逑為邋47.1%。逡逑綜合三個指標可以得出結論二:逡逑結論二:兩種檢測算法存在著互補關系,單一的檢測算法準確性較低。逡逑事實上,靜態(tài)檢測算法可以看成是對系統(tǒng)運行后的安全審計,而動態(tài)檢測可逡逑以看成是系統(tǒng)運行階段的防御?梢哉J為單一層次的防御對Webshell的檢測是有逡逑35逡逑
本文編號:2803398
【學位授予單位】:浙江大學
【學位級別】:碩士
【學位授予年份】:2018
【分類號】:TP393.08
【圖文】:
安全配置錯誤,敏感信息泄露,攻擊檢測與防護不足,跨站點請求偽造,使用含逡逑有己知漏洞的組件和未受有效保護的API列為Web系統(tǒng)10大最常見漏洞,各個逡逑常見漏洞所占比例如圖1.1所示。攻擊者利用這些漏洞控制服務器后,通常會向逡逑web服務器上傳Webshell,以便對內網進行進一步滲透。Webshell是一種利用逡逑Web服務器支持的腳本語言執(zhí)行服務器系統(tǒng)命令的方法。逡逑1逡逑
戶的合法請求。逡逑通過統(tǒng)計,發(fā)現管理員請求的次數為75056遠低于疑似攻擊的次數413401,逡逑它們分部的折線圖如圖2.7所示。逡逑91邐7逡逑/邐-0-邐y=attack逡逑8邋-邐0邋6邋o邐p邐y=admin逡逑丨逡逑Serial逡逑圖2.7管理員用戶與攻擊請求量對比逡逑可以看出,在實際運行環(huán)境中學習并建立知識庫是比較困難的,主要存在兩逡逑類問題:逡逑>用戶訪問頻率無法確定。部分系統(tǒng)用戶對系統(tǒng)的操作較少,這類型的逡逑請求甚至遠遠不如訪問異常的請求多,學習起來很容易忽略,影響用逡逑戶的正常使用;逡逑>自動化攻擊頻率和方式比較固定。在2.1.2節(jié)中已經提到,針對Web逡逑系統(tǒng)的攻擊方式第一步是發(fā)現目標,而這一步中往往使用自動化的掃逡逑描工具,比如Burpsuit[?],Zaproxy[24]等,這就導致攻擊數據通常是有逡逑22逡逑
繼續(xù)考察實驗結果,通過對比可以發(fā)現,靜態(tài)檢測方法和動態(tài)檢測方法對于逡逑實際項目的檢測成功率都不高。分別是71.23%和63.34%。但是,逃逸二者檢測逡逑的Webshell各有不同。相同的概率僅為44.22%和34.73%。如圖3.4所示。逡逑198邐295逡逑?態(tài)檢》方法.邐動態(tài)栓a方法逡逑55.77%邐65.27%逡逑圖3.4動態(tài)靜態(tài)檢測對比逡逑再去計算對每個項目的平均檢測成功率:NeoPI概率為54.42%,Modsecurity逡逑概率為47.22%,計算每個Webshell平均逃逸率:NeoPI為52.44%,邋Modsecurity逡逑為邋47.1%。逡逑綜合三個指標可以得出結論二:逡逑結論二:兩種檢測算法存在著互補關系,單一的檢測算法準確性較低。逡逑事實上,靜態(tài)檢測算法可以看成是對系統(tǒng)運行后的安全審計,而動態(tài)檢測可逡逑以看成是系統(tǒng)運行階段的防御?梢哉J為單一層次的防御對Webshell的檢測是有逡逑35逡逑
【參考文獻】
相關期刊論文 前1條
1 胡建康;徐震;馬多賀;楊婧;;基于決策樹的Webshell檢測方法研究[J];網絡新媒體技術;2012年06期
本文編號:2803398
本文鏈接:http://www.sikaile.net/guanlilunwen/ydhl/2803398.html
最近更新
教材專著