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