999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

改進(jìn)的Web注入型脆弱性檢測(cè)方法

2013-11-30 05:34:16呂慶偉曾慶凱
關(guān)鍵詞:程序分析檢測(cè)

呂慶偉,曾慶凱

(1.南京大學(xué) 計(jì)算機(jī)軟件新技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,江蘇 南京210093;2.南京大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)系,江蘇 南京210093)

0 引 言

輸入驗(yàn)證作為一種常見(jiàn)且有效的安全措施[1],目的在于保證到達(dá)安全敏感點(diǎn)的數(shù)據(jù)的正確性和安全性。很多Web應(yīng)用程序由于缺少對(duì)外來(lái)輸入數(shù)據(jù)進(jìn)行有效安全檢查而存在安全缺陷[1]。

Web注入型脆弱性便是因?yàn)槿狈?duì)外來(lái)輸入作安全驗(yàn)證而引發(fā)的一類(lèi)普遍存在且危害巨大的脆弱性。目前關(guān)于注入型脆弱性分析的方案大多基于污點(diǎn)分析[1-4]、字符串分析[5,6]等技術(shù)實(shí)現(xiàn)。污點(diǎn)分析通過(guò)標(biāo)記污染數(shù)據(jù)、提取從數(shù)據(jù)輸入點(diǎn)到安全敏感點(diǎn)的污染依賴(lài)關(guān)系來(lái)檢測(cè)脆弱性,但不能分析以控制語(yǔ)句形式出現(xiàn)的驗(yàn)證,可能引入誤報(bào)和降低分析的準(zhǔn)確性。字符串分析經(jīng)常與污點(diǎn)分析等結(jié)合來(lái)檢測(cè)注入型脆弱性,分析字符串操作的過(guò)濾能力能增強(qiáng)分析的準(zhǔn)確性,依然無(wú)法處理以控制語(yǔ)句形式出現(xiàn)的驗(yàn)證。基于系統(tǒng)依賴(lài)圖的信息流控制分析[7,8]可用于提取這種驗(yàn)證,然而系統(tǒng)依賴(lài)圖的構(gòu)造非常復(fù)雜,且需要事先收集程序中所有依賴(lài)信息,用于注入型脆弱性檢測(cè)時(shí)存在冗余。

針對(duì)現(xiàn)有工作的不足,本文使用污染驅(qū)動(dòng)的切片方法,有效提取程序中所有驗(yàn)證操作并生成驗(yàn)證圖,隨后使用分步的、攻擊者視角的字符串分析方法評(píng)價(jià)驗(yàn)證圖中操作的驗(yàn)證能力,根據(jù)評(píng)價(jià)結(jié)果自動(dòng)生成安全補(bǔ)丁和對(duì)應(yīng)的增強(qiáng)型攻擊模式。最后實(shí)現(xiàn)了原型系統(tǒng)Valer,實(shí)驗(yàn)表明本文方法在檢測(cè)注入型脆弱性時(shí)能有效減少分析中的誤報(bào)。

1 設(shè)計(jì)分析

1.1 驗(yàn)證分類(lèi)

1.1.1 從表現(xiàn)形式分類(lèi)

通常,Web應(yīng)用程序?yàn)榱朔乐棺⑷胂嚓P(guān)的攻擊,采取的措施有:對(duì)輸入進(jìn)行變換,使得變換后的數(shù)據(jù)滿(mǎn)足程序要求,或者檢測(cè)到異常數(shù)據(jù)時(shí)中止程序的運(yùn)行并返回錯(cuò)誤信息[1,9]。

根據(jù)驗(yàn)證操作的這種表現(xiàn)形式,可將驗(yàn)證操作分為過(guò)濾型驗(yàn)證和檢查型驗(yàn)證。過(guò)濾型驗(yàn)證通過(guò)變換或刪除輸入數(shù)據(jù)中不符合策略部分使返回?cái)?shù)據(jù)滿(mǎn)足策略[1];檢查型驗(yàn)證判斷輸入數(shù)據(jù)是否滿(mǎn)足某種策略,若滿(mǎn)足則繼續(xù)程序的運(yùn)行,若不滿(mǎn)足則中斷程序的運(yùn)行。

1.1.2 從驗(yàn)證能力分類(lèi)

Web程序中的操作如trim或md5,無(wú)論輸入是什么,返回都是良定義的。而操作如preg_match,其驗(yàn)證功能依賴(lài)于具體參數(shù)。易見(jiàn),驗(yàn)證操作在能力方面也有差異。

本文以驗(yàn)證操作的驗(yàn)證能力為依據(jù),將驗(yàn)證操作分為3類(lèi):0型驗(yàn)證、1型驗(yàn)證和partial型驗(yàn)證。0型驗(yàn)證指沒(méi)有驗(yàn)證能力的操作,如賦值、截?cái)嗟炔僮鳎?型驗(yàn)證具有完全的驗(yàn)證能力,不需要參數(shù)輔助,內(nèi)置過(guò)濾操作大多屬于此類(lèi);partial型驗(yàn)證是分析的重點(diǎn),此類(lèi)操作的驗(yàn)證能力通常依賴(lài)其參數(shù),且該部分驗(yàn)證操作的驗(yàn)證能力評(píng)價(jià)是否準(zhǔn)確會(huì)影響最終分析的效果。對(duì)php程序中的驗(yàn)證操作按照驗(yàn)證能力分類(lèi)的結(jié)果如表1所示。

表1 驗(yàn)證能力分類(lèi)

1.2 設(shè)計(jì)要點(diǎn)

1.2.1 污染驅(qū)動(dòng)的切片分析

本文使用污染驅(qū)動(dòng)的切片方法來(lái)提取驗(yàn)證。過(guò)濾型驗(yàn)證操作在程序中以變量定值的形式表現(xiàn),借助污點(diǎn)分析即可識(shí)別和提取。檢查型驗(yàn)證以控制語(yǔ)句形式出現(xiàn),但不是所有的控制語(yǔ)句都是檢查型驗(yàn)證操作,當(dāng)且僅當(dāng)控制語(yǔ)句既數(shù)據(jù)依賴(lài)于數(shù)據(jù)輸入點(diǎn)又控制依賴(lài)安全敏感點(diǎn),才是檢查型驗(yàn)證操作。污染驅(qū)動(dòng)的切片方法將污點(diǎn)分析和依賴(lài)分析結(jié)合,迭代分析程序中污染數(shù)據(jù)的依賴(lài)關(guān)系,可有效提取檢查型驗(yàn)證操作。

該技術(shù)的算法大致如下:①污點(diǎn)分析生成污染路徑,并根據(jù)污染路徑初始化驗(yàn)證圖,驗(yàn)證圖中包括從數(shù)據(jù)輸入點(diǎn)到安全敏感點(diǎn)的所有驗(yàn)證操作;②收集驗(yàn)證圖中候選節(jié)點(diǎn)并計(jì)算其控制依賴(lài)節(jié)點(diǎn);③分析第2步所得節(jié)點(diǎn)是否數(shù)據(jù)依賴(lài)于數(shù)據(jù)輸入節(jié)點(diǎn),若依賴(lài)將其加入驗(yàn)證圖并設(shè)置驗(yàn)證圖更新標(biāo)識(shí);④依據(jù)更新標(biāo)識(shí)判斷驗(yàn)證圖是否穩(wěn)定,若穩(wěn)定則分析結(jié)束,否則跳轉(zhuǎn)到第2步繼續(xù)分析。

1.2.2 分步的、攻擊者視角的字符串分析

字符串分析是一種有效的靜態(tài)分析驗(yàn)證操作能力的技術(shù),文獻(xiàn)[1,6]等借鑒字符串分析技術(shù)評(píng)價(jià)驗(yàn)證操作的驗(yàn)證能力來(lái)提升注入型脆弱性檢測(cè)的準(zhǔn)確度。然而傳統(tǒng)的字符串分析不能直接用于檢查型驗(yàn)證的驗(yàn)證能力評(píng)價(jià)。傳統(tǒng)的字符串分析基于流傳遞的連續(xù)性分析,且將字符串操作定義為輸入和輸出均為字符串的一類(lèi)操作,而檢查型驗(yàn)證操作以字符串為輸入,以布爾型為輸出。從攻擊者視角,驗(yàn)證操作是相對(duì)獨(dú)立的,給定攻擊模式,不需要計(jì)算程序點(diǎn)的所有可能值集合,只需要判定其是否能有效阻塞潛在的惡意字符到達(dá)安全敏感點(diǎn)即可。

本文使用分步的、攻擊者視角的字符串分析評(píng)價(jià)驗(yàn)證操作的驗(yàn)證能力。既能分析兩種驗(yàn)證操作,又具有較小冗余,且便于生成對(duì)應(yīng)的安全補(bǔ)丁和增強(qiáng)型攻擊模式。

分步將評(píng)價(jià)分析分為兩個(gè)階段。首先依據(jù)驗(yàn)證操作的驗(yàn)證能力分類(lèi)進(jìn)行粗分析,若操作為partial型,進(jìn)一步借助攻擊者視角的字符串分析來(lái)分析驗(yàn)證操作的驗(yàn)證能力。驗(yàn)證操作分類(lèi)有助于降低攻擊者視角字符串分析的負(fù)擔(dān)。所謂攻擊者視角,是指在字符串分析用于web注入型脆弱性檢測(cè)時(shí),將輸入數(shù)據(jù)定義為滿(mǎn)足給定攻擊模式的惡意字符串,而不是任意格式的字符串。相比其他方法需要分析執(zhí)行完畢,攻擊者視角的分析一旦發(fā)現(xiàn)條件不滿(mǎn)足,分析即可終止。

1.2.3 安全補(bǔ)丁和增強(qiáng)型攻擊模式

分步的、攻擊者視角的字符串分析分析后會(huì)生成安全補(bǔ)丁建議和增強(qiáng)型攻擊模式。安全補(bǔ)丁在形式上與檢查型驗(yàn)證操作相似。一旦外來(lái)輸入與補(bǔ)丁中參數(shù)匹配,則中斷程序的運(yùn)行以防惡意輸入到達(dá)安全敏感點(diǎn)[5]。相比普通的攻擊模式,增強(qiáng)型攻擊模式還包括長(zhǎng)度、必需字符或子串等信息。增強(qiáng)型攻擊模式有助于構(gòu)造具體的攻擊實(shí)例。

1.3 實(shí)例分析

以圖1中的樣例程序?yàn)槔UZ(yǔ)句1接收外來(lái)輸入,為數(shù)據(jù)輸入點(diǎn),語(yǔ)句2判斷客戶(hù)端輸入數(shù)據(jù)是否是電子郵件格式,若不是則中止程序的繼續(xù)執(zhí)行,語(yǔ)句4判斷輸入數(shù)據(jù)長(zhǎng)度,若長(zhǎng)度大于20,由語(yǔ)句5對(duì)輸入數(shù)據(jù)做截?cái)啵Z(yǔ)句6接收輸入并進(jìn)行sql查詢(xún),為安全敏感點(diǎn)。易見(jiàn),外來(lái)輸入到達(dá)安全敏感點(diǎn)即語(yǔ)句6之前要經(jīng)過(guò)語(yǔ)句2、4、5的驗(yàn)證,其中語(yǔ)句2、4為檢查型驗(yàn)證,語(yǔ)句5為過(guò)濾型驗(yàn)證。

圖1 樣例程序

借助污點(diǎn)分析、基于系統(tǒng)依賴(lài)圖的信息流控制分析及污染驅(qū)動(dòng)的切片分析對(duì)圖1中程序分析得到的結(jié)果分別如圖2(a)、(b)、(c)所示。比較易發(fā)現(xiàn),污染驅(qū)動(dòng)的切片分析計(jì)算得到的驗(yàn)證圖包含了所有的驗(yàn)證操作,且沒(méi)有冗余。

圖2 污點(diǎn)分析、系統(tǒng)依賴(lài)圖與驗(yàn)證

對(duì)所得驗(yàn)證圖作字符串分析,提交攻擊模式/.*;.*/,檢測(cè)發(fā)現(xiàn)程序存在注入型脆弱性,為其生成安全補(bǔ)丁建議[if(eregi(“/^.*;.*$/”,$email))exit;]和增強(qiáng)型攻擊模式[/.*;.*/,/.*@.*/,20],其中該模式表示攻擊實(shí)例中須包含字符@且限制在20個(gè)字符以?xún)?nèi)。

2 系統(tǒng)實(shí)現(xiàn)

2.1 Valer基本框架

基于第1節(jié)的設(shè)計(jì)分析,實(shí)現(xiàn)了如圖3所示原型系統(tǒng)Valer。Valer主要由驗(yàn)證提取子模塊和驗(yàn)證評(píng)價(jià)子模塊兩部分組成,另外為了增強(qiáng)系統(tǒng)地實(shí)用性,攻擊模式以配置文件的形式提供。

圖3 Valer基本框架

驗(yàn)證提取模塊由解析子模塊和污染驅(qū)動(dòng)切片子模塊組成。解析子模塊負(fù)責(zé)將php程序解析為控制流圖,污染驅(qū)動(dòng)的切片子模塊進(jìn)一步從控制流圖提取驗(yàn)證操作并生成驗(yàn)證圖。驗(yàn)證評(píng)價(jià)模塊由粗粒度分析子模塊和細(xì)粒度分析子模塊兩部分組成,以提取模塊生成的驗(yàn)證圖和攻擊模式為輸入,作分步的、攻擊者視角的字符串分析,生成分析報(bào)告并根據(jù)需要進(jìn)一步生成增強(qiáng)型攻擊模式和安全補(bǔ)丁。

2.2 驗(yàn)證提取模塊

Pixy[2]是一個(gè)開(kāi)源的靜態(tài)檢測(cè)php程序中脆弱性的解決方案。驗(yàn)證提取模塊的實(shí)現(xiàn)時(shí)在Pixy解析模塊基礎(chǔ)上加入依賴(lài)分析和污點(diǎn)分析,實(shí)現(xiàn)了污染驅(qū)動(dòng)的程序切片模塊。

循環(huán)結(jié)構(gòu)的處理一直是程序分析和字符串分析要重點(diǎn)考慮的部分,本文在分析開(kāi)源程序中循環(huán)結(jié)構(gòu)后發(fā)現(xiàn)驗(yàn)證操作幾乎不會(huì)出現(xiàn)在循環(huán)結(jié)構(gòu)或是循環(huán)條件中。基于此,實(shí)現(xiàn)中對(duì)程序中的循環(huán)結(jié)構(gòu)采取了兩種處理,當(dāng)循環(huán)中不存在安全敏感點(diǎn)時(shí),用一個(gè)特殊的循環(huán)節(jié)點(diǎn)代替整個(gè)循環(huán)結(jié)構(gòu),如果存在時(shí),將循環(huán)作簡(jiǎn)單的一次展開(kāi)。

Pixy-parser部分負(fù)責(zé)將php程序解析為控制流圖,該過(guò)程是過(guò)程間、上下文敏感的。污染驅(qū)動(dòng)的切片模塊具體實(shí)現(xiàn)了污染驅(qū)動(dòng)的切片方法,能夠有效地提取程序中的過(guò)濾型驗(yàn)證操作和檢查型驗(yàn)證操作,并生成驗(yàn)證圖。

2.3 驗(yàn)證評(píng)價(jià)模塊

驗(yàn)證分析模塊以驗(yàn)證提取模塊計(jì)算得到的驗(yàn)證圖為輸入,同時(shí)調(diào)用攻擊模式庫(kù)執(zhí)行具體分析。粗粒度分析先對(duì)驗(yàn)證操作進(jìn)行粗粒度分類(lèi),根據(jù)分類(lèi)的結(jié)果決定是否進(jìn)一步調(diào)用細(xì)粒度分析模塊作分析,最后生成分析報(bào)告。報(bào)告中除對(duì)驗(yàn)證圖的普通安全分析外,還包括增強(qiáng)型的攻擊模式和對(duì)應(yīng)的安全補(bǔ)丁建議。

2.3.1 粗粒度分析

粗粒度分析模塊以表1所示的驗(yàn)證能力分類(lèi)表為依據(jù),對(duì)驗(yàn)證圖中的驗(yàn)證操作分類(lèi),根據(jù)分類(lèi)結(jié)果來(lái)決定下一步動(dòng)作。如果驗(yàn)證操作全為0型驗(yàn)證可斷言與驗(yàn)證圖對(duì)應(yīng)的web程序部分存在注入型脆弱性,并為該脆弱性生成安全補(bǔ)丁建議。如果驗(yàn)證操作中存在1型驗(yàn)證,可斷言對(duì)應(yīng)的web程序部分是安全的。當(dāng)不存在1型驗(yàn)證又存在partial型驗(yàn)證時(shí),調(diào)用細(xì)粒度分析模塊來(lái)分析partial型驗(yàn)證是否具有完整的驗(yàn)證能力。

2.3.2 細(xì)粒度分析

細(xì)粒度分析模塊執(zhí)行攻擊者視角的字符串分析。該模塊 Anders M ller所實(shí)現(xiàn)自動(dòng)機(jī)運(yùn)算包dk.brics.automaton為基礎(chǔ)進(jìn)行實(shí)現(xiàn)。相比其他字符串分析模擬所有的字符串操作,細(xì)粒度分析模塊只模擬分析字符串替換、正則表達(dá)式匹配等partial型操作。另外,細(xì)粒度分析是攻擊者視角的,無(wú)需計(jì)算字符串操作后的所有可能值,而是將計(jì)算簡(jiǎn)化為攻擊模式經(jīng)過(guò)字符串操作計(jì)算后是否為空,有效降低了計(jì)算復(fù)雜度。

3 實(shí)驗(yàn)分析

原型系統(tǒng)Valer中數(shù)據(jù)輸入點(diǎn)和安全敏感點(diǎn)都是可配置的,本文的實(shí)驗(yàn)部分只檢測(cè)了待測(cè)試程序中的sql注入脆弱性,故將數(shù)據(jù)輸入點(diǎn)設(shè)置為{_GET,_POST,_COOKIE,_REQUEST},安全敏感點(diǎn)設(shè)置為{mysql_query}。另外,攻擊模式也由分析人員提供,本次實(shí)驗(yàn)使用的攻擊模式為/’or1=1/及其編碼格式/0x27or1=1/,表示繞過(guò)數(shù)據(jù)庫(kù)驗(yàn)證的一類(lèi)sql注入攻擊。

實(shí)驗(yàn)選取了Eve activity tracker、Minibloggie、Utopia News Pro等3個(gè)開(kāi)源web程序作為測(cè)試程序。其中Eve activity tracker是一個(gè)用戶(hù)行為追蹤程序,Minibloggie是一個(gè)小型博客系統(tǒng),Utopia News Pro是一個(gè)新聞管理系統(tǒng)。

表2 實(shí)驗(yàn)基本結(jié)果

表2記錄了實(shí)驗(yàn)基本結(jié)果,其中第一列為web應(yīng)用的名稱(chēng),第二列為每個(gè)應(yīng)用中代碼量,一定程度反映了程序的大小和復(fù)雜度,第三列表示程序中可能被sql注入攻擊的敏感點(diǎn)數(shù)量,第四列為提取分析模塊計(jì)算得到的各個(gè)web應(yīng)用中驗(yàn)證圖的數(shù)量,其中驗(yàn)證圖包含程序中從外界輸入點(diǎn)到安全敏感點(diǎn)的相關(guān)操作,最后一列是檢測(cè)到的脆弱性的數(shù)量。

表2可知,污染相關(guān)的檢查型驗(yàn)證確實(shí)存在于web程序中且具有一定比例,且不管程序中的敏感點(diǎn)還是最終的脆弱性數(shù)量都會(huì)隨著程序規(guī)模的增大而變多。另外Valer也為所檢測(cè)脆弱性生成了安全補(bǔ)丁建議和增強(qiáng)型攻擊模式。

表3中記錄了被分析程序中驗(yàn)證圖的詳細(xì)信息,其中第三列數(shù)據(jù)為數(shù)據(jù)對(duì),表示包含內(nèi)置編碼過(guò)濾操作和自定義過(guò)濾操作的數(shù)量的驗(yàn)證圖數(shù)量,第五列為包含檢查操作的驗(yàn)證圖數(shù)量,第四、六列分別為驗(yàn)證圖中過(guò)濾操作和檢查操作具有完全過(guò)濾功能的驗(yàn)證圖數(shù)量。需要強(qiáng)調(diào)的是使用內(nèi)置的編碼操作是所提倡的編程習(xí)慣,然而大多內(nèi)置編碼操作依然只能過(guò)濾普通的惡意攻擊串,對(duì)攻擊串簡(jiǎn)單變形便可逃避該類(lèi)過(guò)濾的驗(yàn)證,如本次實(shí)驗(yàn)提供的編碼型攻擊模式。而用戶(hù)自定義的檢查操作正確的話能夠最大程度的反應(yīng)程序可接受輸入的集合。根據(jù)實(shí)驗(yàn)結(jié)果對(duì)比也容易發(fā)現(xiàn)檢查型驗(yàn)證操作對(duì)程序的安全具有極其重要的作用,忽略對(duì)檢查型驗(yàn)證的分析必然會(huì)產(chǎn)生誤報(bào)等問(wèn)題。

表3 實(shí)驗(yàn)驗(yàn)證圖

以Utopia News Pro中comments.php頁(yè)面里的一個(gè)程序片斷$newsid=addslashes($ _POST[‘newsid’]);if(!preg_match(‘/^[\d]+$/’,$newsid)){unp_msgBox($gp_invalidrequest);exit;}$checknews=$DB->query("SELECT * FROM`unp_news`WHERE newsid=‘$newsid’");為例。基于傳統(tǒng)污點(diǎn)分析的檢測(cè)手段會(huì)檢測(cè)其為一個(gè)sql注入型脆弱性,而$newsid可接收的輸入集合為數(shù)字型變量,易發(fā)現(xiàn)是一個(gè)誤報(bào)。本文方案考慮了程序中檢查型驗(yàn)證,有效避免了該誤報(bào)的產(chǎn)生。

結(jié)合表2和表3,可知Eve activity tracker幾乎沒(méi)有任何驗(yàn)證措施,提取到的每個(gè)驗(yàn)證圖被驗(yàn)證評(píng)價(jià)模塊分析后都是有脆弱性的,而Minibloggie盡管采取了較多的驗(yàn)證操作,甚至過(guò)濾操作都為內(nèi)置編碼操作,12個(gè)驗(yàn)證圖中只有兩個(gè)驗(yàn)證圖是安全的,Utopia News Pro程序盡管檢測(cè)到56個(gè)脆弱性,因?yàn)榇罅渴褂昧擞脩?hù)自定義的檢查型驗(yàn)證操作,包含檢查型驗(yàn)證操作的驗(yàn)證圖總共有85個(gè),具有完全驗(yàn)證功能的達(dá)到57個(gè)之多,大大降低了程序中脆弱性的比例。

4 相關(guān)工作

文獻(xiàn)[2]設(shè)計(jì)了一個(gè)靜態(tài)分析工具Pixy來(lái)檢測(cè)web應(yīng)用中的脆弱性,實(shí)現(xiàn)了程序解析、常值分析、別名分析、污點(diǎn)分析等分析。因?yàn)轵?yàn)證提取不完全和沒(méi)有進(jìn)一步分析驗(yàn)證操作的驗(yàn)證能力,其誤報(bào)率有50%多。文獻(xiàn)[1,5-7]等或以Pixy的結(jié)果作分析或進(jìn)一步開(kāi)發(fā),本文所實(shí)現(xiàn)系統(tǒng)Valer也以Pixy為基礎(chǔ)實(shí)現(xiàn)了污染驅(qū)動(dòng)的程序切片模塊。文獻(xiàn)[1]將靜態(tài)分析和動(dòng)態(tài)分析結(jié)合,來(lái)驗(yàn)證過(guò)濾操作的是否正確或完全,具有較好的效果。遺憾的是依然沒(méi)有考慮驗(yàn)證操作的全面性。文獻(xiàn)[10]是一個(gè)動(dòng)態(tài)解決方案,將污點(diǎn)分析和fuzz技術(shù)結(jié)合來(lái)檢測(cè)客戶(hù)端脆弱性,考慮了檢查型驗(yàn)證的分析。文獻(xiàn)[3,4]將污點(diǎn)分析和字符串分析結(jié)合,分別用于檢測(cè)sql注入和xss脆弱性檢測(cè)。相比,Valer能同時(shí)檢測(cè)兩種類(lèi)型的脆弱性,并可生成增強(qiáng)型攻擊模式和安全補(bǔ)丁。與文獻(xiàn)[9,11]檢測(cè)web注入性脆弱性并可生成具體的攻擊實(shí)例不同,本文生成增強(qiáng)型攻擊模式,增強(qiáng)型攻擊模式有助于生成更多的攻擊實(shí)例。文獻(xiàn)[5,6]以Pixy為基礎(chǔ),實(shí)現(xiàn)了基于字符串的分析工具Stranger。使用Stranger來(lái)分析web脆弱性,生成脆弱性特征和安全補(bǔ)丁。Stranger直接依賴(lài)Pixy的結(jié)果做分析,本文考慮了驗(yàn)證操作提取的全面性,對(duì)Pixy作了相應(yīng)改進(jìn),并從攻擊者視角簡(jiǎn)化字符串分析,生成增強(qiáng)型攻擊模式和安全補(bǔ)丁。

5 結(jié)束語(yǔ)

程序中驗(yàn)證操作提取的完整性以及對(duì)驗(yàn)證操作的驗(yàn)證能力評(píng)價(jià)的準(zhǔn)確性是評(píng)價(jià)注入型脆弱性檢測(cè)效果的兩個(gè)重要要素。本文使用污染驅(qū)動(dòng)的切片方法,比較完整地提取了程序中的所有驗(yàn)證操作,并借助分步的、攻擊者視角的字符串分析對(duì)驗(yàn)證操作的驗(yàn)證能力進(jìn)行評(píng)價(jià)分析,以更準(zhǔn)確的檢測(cè)web注入型脆弱性。相比已有工作,有效降低了分析過(guò)程中的誤報(bào),且能夠?yàn)闄z測(cè)到的脆弱性生成安全補(bǔ)丁和增強(qiáng)型攻擊模式,具有一定地實(shí)用性。

[1]Balzarotti D,Cova M,Vigna G,et al.Saner:Composing static and dynamic analysis to validate sanitization in web applications[C]//Proc of IEEE Symposium on Security and Privacy,2008.

[2]Jovanovic N,Kruegel C,Kirda E.Pixy:A static analysis tool for detecting web application vulnerabilities[C]//Proc of IEEE Symposium on Security and Privacy,2006.

[3]Wassermann G,Su Z.Sound and precise analysis of web applications for injection vulnerabilities[C]//Proc of the ACM SIGPLAN Conference on Programming Language Design and Implementation,2007.

[4]Wassermann G,Su Z.Static detection of cross-site scripting vulnerabilities[C]//Proc of the 30th International Conference on Software Engineering,2008.

[5]Alkhalaf M,F(xiàn)ang Yu,Bultan T.Patching vulnerabilities with sanitization synthesis[C]//Proc of International Conference on Software Engineering,2011.

[6]Yu F,Alkhalaf M,Bultan T.Stranger:An automata-based string analysis tool for php[C]//Proc of International Conference on Tools and Algorithms for the Construction and Analysis of Systems,2010.

[7]Hammer C,Krinke J,Snelting G.Information flow control for java based on path conditions in dependence graphs[C]//Proc of IEEE International Symposium on Secure Software Engineering,2006.

[8]Hammer C,Schaade R,Snelting G.Static path conditions for Java[C]//Proc of the Third ACM SIGPLAN Workshop on Programming Languages and Analysis for Security,2008.

[9]Kieyzun A,Guo P J,Jayaraman K,et al.Automatic creation of SQL injection and cross-site scripting attacks[C]//Proc of 30th International Conference on Software Engineering,2008.

[10]Saxena P,Hanna S,Song D,et al.Flax:Systematic discovery of client-side validation vulnerabilities in rich web applications[C]//Proc of the Network and Distributed System Security Symposium,2010.

[11]Martin M,Lam M.Automatic generation of XSS and SQL injection attacks with goal-directed model checking[C]//Proc of USENIX Security Symposium,2008.

猜你喜歡
程序分析檢測(cè)
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
隱蔽失效適航要求符合性驗(yàn)證分析
試論我國(guó)未決羈押程序的立法完善
電力系統(tǒng)不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
電力系統(tǒng)及其自動(dòng)化發(fā)展趨勢(shì)分析
小波變換在PCB缺陷檢測(cè)中的應(yīng)用
主站蜘蛛池模板: 欧美精品v欧洲精品| 伊人欧美在线| 中文字幕亚洲综久久2021| 色婷婷色丁香| 在线欧美日韩国产| 国产精品国产三级国产专业不| 国产麻豆va精品视频| 久久婷婷六月| 欧美日在线观看| 亚洲人成影院在线观看| 亚洲中文无码h在线观看| 国产91视频免费观看| 久久永久精品免费视频| 一级香蕉视频在线观看| 色网在线视频| 国产精品久久久精品三级| 国产在线一区视频| 国产女人爽到高潮的免费视频 | 国产精品自在线天天看片| 99国产精品免费观看视频| 欧洲在线免费视频| a天堂视频| 国产在线精品人成导航| 亚洲最新网址| 久草视频一区| 妇女自拍偷自拍亚洲精品| 欧美午夜网| 韩国自拍偷自拍亚洲精品| 激情亚洲天堂| 波多野结衣一区二区三区四区视频| 免费av一区二区三区在线| 黄色网页在线观看| 国产精品美乳| 国产拍在线| 久久黄色一级片| 在线观看免费国产| 欧美在线一二区| 欧美日韩精品在线播放| 免费中文字幕在在线不卡| 日韩色图区| www.99精品视频在线播放| 亚欧成人无码AV在线播放| 91 九色视频丝袜| 国产白浆视频| 在线日韩日本国产亚洲| 国产精品尤物在线| 欧美激情视频二区三区| 国产亚洲男人的天堂在线观看 | 91色在线观看| 日韩国产亚洲一区二区在线观看| 久久亚洲国产最新网站| 国产在线拍偷自揄拍精品| 国产18页| 久久精品人人做人人爽| 好吊色妇女免费视频免费| 2048国产精品原创综合在线| 欧美区一区二区三| 欧美日韩理论| 久久国产成人精品国产成人亚洲 | 精品欧美一区二区三区久久久| 亚洲欧洲免费视频| 国产人在线成免费视频| 女人一级毛片| 亚洲欧美日韩精品专区| 日韩精品高清自在线| 欧洲成人在线观看| 无码电影在线观看| 久久亚洲黄色视频| 第一页亚洲| 国产肉感大码AV无码| 欧美国产日韩在线| 无码乱人伦一区二区亚洲一| 国内精品手机在线观看视频| 香蕉蕉亚亚洲aav综合| 日本久久久久久免费网络| 久久婷婷六月| 国产美女91视频| 欧美笫一页| 国产精品va免费视频| 国产黑丝一区| 亚洲区第一页| 欧美午夜在线视频|