基于靜態(tài)分析的PHP代碼缺陷檢測
發(fā)布時間:2017-12-06 09:35
本文關(guān)鍵詞:基于靜態(tài)分析的PHP代碼缺陷檢測
更多相關(guān)文章: PHP靜態(tài)分析 數(shù)據(jù)流分析 字符串分析 有限自動機
【摘要】:Web系統(tǒng)是當(dāng)前最重要的一種信息交換手段,所以針對Web系統(tǒng)的攻擊行為也在不斷的增加。隨著Web開發(fā)技術(shù)的不斷演進,當(dāng)前的Web系統(tǒng)已經(jīng)不再僅僅是純靜態(tài)的HTML頁面,而是由PHP等動態(tài)腳本語言開發(fā)的應(yīng)用程序。PHP語言被廣泛的用來開發(fā)Web系統(tǒng),PHP語言的入門門檻很低,語法靈活,很多PHP開發(fā)人員并不具備基礎(chǔ)的安全開發(fā)知識,導(dǎo)致使用PHP語言開發(fā)的Web系統(tǒng)一直是黑客攻擊的重點目標。 由于PHP語言開發(fā)的Web系統(tǒng)遭受的攻擊正在不斷增加,在網(wǎng)站實際部署之前有必要對其進行安全審查。然而當(dāng)前采用的人工代碼審計方法不僅費時費力,而且對代碼審計人員的技能要求非常高,所以需要開發(fā)自動化的代碼缺陷檢測工具。代碼檢測有靜態(tài)分析和動態(tài)分析的方法,本文主要采用靜態(tài)分析的方法檢測PHP代碼中的安全缺陷,然而由于PHP語言為動態(tài)腳本語言,具有動態(tài)弱類型,運行時文件包含等動態(tài)特性,導(dǎo)致對其進行有效的靜態(tài)分析是比較困難的。 本文在Facebook HHVM的基礎(chǔ)上提出了一個針對PHP語言的流敏感、上下文敏感和過程間的前向數(shù)據(jù)流分析方法。為了盡可能支持PHP語言的特性,本文提出了一種針對PHP的變量進行數(shù)據(jù)建模的方法,并在此基礎(chǔ)上實現(xiàn)了別名分析,以盡可能提高檢測結(jié)果的準確度。為了處理PHP代碼中靈活的審查過濾操作,盡可能的減少誤報,本文靜態(tài)檢測技術(shù)還結(jié)合了一種基于有限自動機的字符串分析方法。本文還提出了一種規(guī)則定義方式,用來定義污染數(shù)據(jù)引入點、漏洞觸發(fā)點與漏洞模式等信息。 本文主要關(guān)注的漏洞為污染傳播類型的漏洞,靜態(tài)檢測的目標是跨站點腳本漏洞和各種類型的注入漏洞,這些漏洞的產(chǎn)生原因都是因為用戶可控的輸入沒有經(jīng)過嚴格的審查過濾即傳遞到危險函數(shù),從而導(dǎo)致安全漏洞。
【學(xué)位授予單位】:北京郵電大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2015
【分類號】:TP393.08
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前2條
1 時志偉;趙亮;;一種關(guān)于PHP源代碼安全漏洞的靜態(tài)檢測方法[J];信息安全與通信保密;2011年11期
2 梅宏;王嘯吟;張路;;字符串分析研究進展[J];軟件學(xué)報;2013年01期
,本文編號:1258157
本文鏈接:http://sikaile.net/guanlilunwen/ydhl/1258157.html
最近更新
教材專著