[發(fā)明專(zhuān)利]一種高效動(dòng)態(tài)軟件漏洞挖掘方法有效
| 申請(qǐng)?zhí)枺?/td> | 201010171996.4 | 申請(qǐng)日: | 2010-05-07 |
| 公開(kāi)(公告)號(hào): | CN101853200A | 公開(kāi)(公告)日: | 2010-10-06 |
| 發(fā)明(設(shè)計(jì))人: | 王鐵磊;李義春;韋韜;鄒維;戴帥夫;張超;丁羽 | 申請(qǐng)(專(zhuān)利權(quán))人: | 北京大學(xué) |
| 主分類(lèi)號(hào): | G06F11/36 | 分類(lèi)號(hào): | G06F11/36 |
| 代理公司: | 北京君尚知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11200 | 代理人: | 馮藝東 |
| 地址: | 100871 北*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 高效 動(dòng)態(tài) 軟件 漏洞 挖掘 方法 | ||
1.一種高效動(dòng)態(tài)軟件漏洞挖掘方法,其步驟包括:
1)目標(biāo)軟件處理正常輸入數(shù)據(jù),并收集正常輸入數(shù)據(jù)中傳播進(jìn)入系統(tǒng)函數(shù)參數(shù)、庫(kù)函數(shù)參數(shù)的字節(jié);
2)在正常輸入數(shù)據(jù)中,修改傳播進(jìn)入系統(tǒng)函數(shù)、庫(kù)函數(shù)的字節(jié),生成畸形數(shù)據(jù);
3)將生成的畸形數(shù)據(jù)輸入至目標(biāo)軟件,如果目標(biāo)軟件處理畸形數(shù)據(jù)時(shí)異常,則生成漏洞報(bào)告。
2.如權(quán)利要求1所述的方法,其特征在于,所述正常輸入數(shù)據(jù)包括文件、命令行參數(shù)和網(wǎng)絡(luò)報(bào)文。
3.如權(quán)利要求1所述的方法,其特征在于,所述步驟1)收集正常輸入數(shù)據(jù)中傳播進(jìn)入系統(tǒng)函數(shù)參數(shù)、庫(kù)函數(shù)參數(shù)的字節(jié)的具體方法為:
1.1)通過(guò)系統(tǒng)函數(shù)調(diào)用劫持方法劫持目標(biāo)軟件對(duì)正常輸入數(shù)據(jù)的讀入;
1.2)當(dāng)目標(biāo)軟件將正常輸入數(shù)據(jù)讀入內(nèi)存時(shí),記錄內(nèi)存地址與輸入數(shù)據(jù)之間的映射關(guān)系;
1.3)跟蹤正常輸入數(shù)據(jù)的傳播,記錄每個(gè)內(nèi)存單元依賴(lài)的正常輸入數(shù)據(jù)的字節(jié);
1.4)調(diào)用系統(tǒng)函數(shù)或庫(kù)函數(shù)時(shí),檢查系統(tǒng)函數(shù)參數(shù)或庫(kù)函數(shù)參數(shù)是否依賴(lài)于正常輸入數(shù)據(jù),如果依賴(lài),輸出依賴(lài)的字節(jié);
4.如權(quán)利要求1所述的方法,其特征在于,所述步驟1.3)采用動(dòng)態(tài)代碼插樁方法跟蹤正常輸入數(shù)據(jù)的傳播。
5.如權(quán)利要求1所述的方法,其特征在于,所述步驟1.3)記錄相應(yīng)內(nèi)存地址與輸入數(shù)據(jù)之間的依賴(lài)關(guān)系的方法為:以每個(gè)字節(jié)在正常輸入數(shù)據(jù)中的位置偏移標(biāo)示該字節(jié),并記錄每個(gè)內(nèi)存單元來(lái)源于哪些字節(jié)。
6.如權(quán)利要求1所述的方法,其特征在于,所述步驟1.4)對(duì)于int,char類(lèi)型參數(shù),直接檢查參數(shù)數(shù)值是否依賴(lài)輸入數(shù)據(jù);對(duì)于指針類(lèi)型的參數(shù),檢查指針?biāo)赶虻膬?nèi)存單元是否依賴(lài)輸入數(shù)據(jù);對(duì)于其他復(fù)雜的函數(shù)參數(shù),根據(jù)先驗(yàn)知識(shí)和系統(tǒng)調(diào)用及庫(kù)函數(shù)的原型聲明,指定需要檢查系統(tǒng)調(diào)用和庫(kù)函數(shù)。
7.如權(quán)利要求1所述的方法,其特征在于,所述步驟2)修改的方式為對(duì)每個(gè)可以傳播進(jìn)入系統(tǒng)調(diào)用、庫(kù)函數(shù)的字節(jié)逐一替換為隨機(jī)值或者指定值。
8.如權(quán)利要求1所述的方法,其特征在于,所述步驟2)修改的方式為對(duì)可以傳播進(jìn)入系統(tǒng)調(diào)用、庫(kù)函數(shù)的字節(jié)進(jìn)行協(xié)同更改,將多個(gè)字節(jié)同時(shí)替換為隨機(jī)值或指定值。
9.如權(quán)利要求1所述的方法,其特征在于,所述步驟3)在調(diào)試模式下運(yùn)行目標(biāo)軟件;逐一將生成的畸形數(shù)據(jù)輸入至目標(biāo)軟件。
10.如權(quán)利要求1所述的方法,其特征在于,所述步驟3)如果目標(biāo)軟件發(fā)生異常,收集當(dāng)時(shí)目標(biāo)軟件執(zhí)行的調(diào)用棧以及執(zhí)行上下文信息,生成漏洞報(bào)告。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于北京大學(xué),未經(jīng)北京大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010171996.4/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過(guò)測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過(guò)處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過(guò)軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 動(dòng)態(tài)矢量譯碼方法和動(dòng)態(tài)矢量譯碼裝置
- 動(dòng)態(tài)口令的顯示方法及動(dòng)態(tài)令牌
- 動(dòng)態(tài)庫(kù)管理方法和裝置
- 動(dòng)態(tài)令牌的身份認(rèn)證方法及裝置
- 令牌、動(dòng)態(tài)口令生成方法、動(dòng)態(tài)口令認(rèn)證方法及系統(tǒng)
- 一種動(dòng)態(tài)模糊控制系統(tǒng)
- 一種基于動(dòng)態(tài)信號(hào)的POS機(jī)和安全保護(hù)方法
- 圖像動(dòng)態(tài)展示的方法、裝置、系統(tǒng)及介質(zhì)
- 一種基于POS機(jī)聚合碼功能分離顯示動(dòng)態(tài)聚合碼的系統(tǒng)
- 基于動(dòng)態(tài)口令的身份認(rèn)證方法、裝置和動(dòng)態(tài)令牌
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線(xiàn)加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來(lái)擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法
- 網(wǎng)站漏洞告警方法及裝置
- 網(wǎng)站漏洞審核方法及裝置
- 漏洞檢測(cè)方法及裝置、信息交互方法及設(shè)備
- 一種基于漏洞關(guān)聯(lián)分布模型的漏洞發(fā)現(xiàn)方法
- 漏洞庫(kù)構(gòu)建方法、裝置、漏洞庫(kù)及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 漏洞快速感知、定位及驗(yàn)證的方法與系統(tǒng)
- 一種基于Oval的漏洞掃描修復(fù)系統(tǒng)及方法
- 一種漏洞驗(yàn)證的方法及電子設(shè)備
- 一種漏洞防護(hù)方法、裝置及電子設(shè)備
- 漏洞數(shù)據(jù)的比較方法、裝置、電子設(shè)備以及存儲(chǔ)介質(zhì)





