[發(fā)明專利]基于軟件安全缺陷檢測(cè)的綜合處理方法及其功能模塊構(gòu)架無(wú)效
| 申請(qǐng)?zhí)枺?/td> | 200910216239.1 | 申請(qǐng)日: | 2009-11-18 |
| 公開(kāi)(公告)號(hào): | CN101706749A | 公開(kāi)(公告)日: | 2010-05-12 |
| 發(fā)明(設(shè)計(jì))人: | 王光衛(wèi);范明鈺;侯孟書;朱大勇;宮亞峰 | 申請(qǐng)(專利權(quán))人: | 電子科技大學(xué) |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36;G06F21/22 |
| 代理公司: | 電子科技大學(xué)專利中心 51203 | 代理人: | 詹福五 |
| 地址: | 611731 四川省成*** | 國(guó)省代碼: | 四川;51 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 軟件 安全 缺陷 檢測(cè) 綜合 處理 方法 及其 功能模塊 構(gòu)架 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,特別是一種針對(duì)軟件安全缺陷檢測(cè)的綜合處理方法及為實(shí)現(xiàn)其方法所采用的功能模塊構(gòu)架(裝置)。采用本發(fā)明方法及其裝置可針對(duì)已知源代碼形態(tài)的軟件進(jìn)行安全缺陷的檢測(cè)。?
背景技術(shù)
由于程序設(shè)計(jì)和編寫本身的缺陷,使得軟件安全性降低,是導(dǎo)致軟件安全問(wèn)題的一個(gè)重要原因。大量存在于軟件系統(tǒng)中的安全缺陷,又使得軟件在使用階段受到意料不到的攻擊,甚至造成重大損失。?
目前針對(duì)軟件缺陷的發(fā)現(xiàn)主要有三種方法,一是基于軟件漏洞和缺陷模式的檢測(cè)方法,例如,申請(qǐng)?zhí)枮镃N200810114261.0,發(fā)明名稱為《一種基于軟件缺陷模式的測(cè)試方法及系統(tǒng)》的專利文獻(xiàn),采用的方法是,讀取被測(cè)程序源代碼文件及缺陷狀態(tài)機(jī)SDSM描述文件,對(duì)被測(cè)程序進(jìn)行預(yù)處理,解析SDSM描述文件;對(duì)被測(cè)程序進(jìn)行詞法分析和語(yǔ)法分析,構(gòu)造出抽象語(yǔ)法樹(shù);根據(jù)抽象語(yǔ)法樹(shù),生成控制流圖和符號(hào)表,并根據(jù)控制流圖和符號(hào)表,進(jìn)行變量取值區(qū)間集的計(jì)算與更新;對(duì)被測(cè)程序進(jìn)行函數(shù)調(diào)用關(guān)系分析,生成函數(shù)調(diào)用關(guān)系圖;根據(jù)函數(shù)調(diào)用關(guān)系圖以函數(shù)為單位對(duì)控制流圖進(jìn)行遍歷,并計(jì)算控制流圖上每個(gè)節(jié)點(diǎn)缺陷狀態(tài)機(jī)的狀態(tài)變遷,缺陷狀態(tài)機(jī)進(jìn)入缺陷狀態(tài)時(shí)報(bào)告對(duì)應(yīng)的檢查點(diǎn);該專利即屬于此類技術(shù)。?
二是利用軟件執(zhí)行過(guò)程中軌跡的相似度來(lái)定位軟件缺陷,例如申請(qǐng)?zhí)枮镃N200810018981.7,發(fā)明名稱為《一種基于執(zhí)行軌跡塊相似度的軟件缺陷定位方法》的專利文獻(xiàn),采取的步驟是,(1)收集和整理測(cè)試用例的執(zhí)行信息并生成執(zhí)行軌跡;(2)根據(jù)執(zhí)行軌跡塊相似度選擇用來(lái)定位缺陷的測(cè)試用例集;(3)對(duì)選擇的測(cè)試用例執(zhí)行軌跡進(jìn)行系統(tǒng)比對(duì)計(jì)算代碼懷疑率;(4)將代碼懷疑率映射到源程序生成缺陷定位報(bào)告。該專利屬于此類技術(shù);?
?三是設(shè)計(jì)缺陷監(jiān)控和分析模塊采用插入點(diǎn)進(jìn)行軟件缺陷檢測(cè)的方法,例如申請(qǐng)?zhí)枮镃N200710163839.7,發(fā)明名稱為《一種快速診斷系統(tǒng)軟件缺陷的系統(tǒng)及方法》的專利文獻(xiàn),采用的方法是,用以對(duì)導(dǎo)致系統(tǒng)錯(cuò)誤的系統(tǒng)程序缺陷進(jìn)行快速定位并向用戶回饋。首先,依據(jù)用戶需求,預(yù)先設(shè)定并在系統(tǒng)中寫入系統(tǒng)缺陷分析準(zhǔn)則的程序,且在系統(tǒng)的程序模塊中依照用戶對(duì)缺陷分析結(jié)果的精細(xì)度需求加入數(shù)個(gè)缺陷插入點(diǎn),然后在系統(tǒng)程序運(yùn)行過(guò)程中在上述各缺陷插入點(diǎn)處產(chǎn)生缺陷管理信息,并對(duì)此管理信息進(jìn)行監(jiān)控,以收集相關(guān)的系統(tǒng)缺陷數(shù)據(jù),最后通過(guò)系統(tǒng)缺陷分析準(zhǔn)則的程序?qū)崟r(shí)分析所收集到的系統(tǒng)缺陷數(shù)據(jù),借以獲得造成系統(tǒng)錯(cuò)誤的最小缺陷集合并實(shí)時(shí)記錄到系統(tǒng)日志中,同時(shí)回報(bào)給用戶。?
現(xiàn)有常規(guī)程序缺陷分析檢測(cè)工具主要有:基于程序句法的分析工具和基于程序語(yǔ)意的分析工具,以及使用代碼進(jìn)行運(yùn)行測(cè)試的工具。?
基于程序句法的分析工具主要有:Splint,Pscan,F(xiàn)lawfinder,RATS,ITS4,Smacth,這類工具采用正規(guī)表達(dá)和通用分割技術(shù),對(duì)代碼進(jìn)行簡(jiǎn)單句法分析,查找可疑結(jié)構(gòu)。因?yàn)槭敲嫔系姆治觯赡墚a(chǎn)生許多虛警,僅能檢測(cè)簡(jiǎn)單的問(wèn)題。但是其簡(jiǎn)單分析也使其處理包含擴(kuò)展語(yǔ)言時(shí)更為穩(wěn)健,這些擴(kuò)展語(yǔ)言在其他地方常常被忽略;同時(shí)也因句法分析不需要大量計(jì)算,因此速度很快,可以處理任意大小的程序。?
基于程序語(yǔ)意的分析工具主要有:BOON,PolySpace?for?C/C++,Coverity?Prevent,GrammaTech?CodeSonar,Klocwork?K7,BLAST,MAGIC,MOPS,這類靜態(tài)分析通常有兩種模塊構(gòu)成:前端和后端,前端用于分析源代碼、生成源代碼模型,后端則分析這個(gè)模型、查找問(wèn)題和缺陷。按照分析部分的實(shí)現(xiàn)方式,可把這類工具分為兩個(gè)類型。一是基于形式化的方法,也稱為數(shù)學(xué)規(guī)劃,提供程序特性,例如模型檢查和理論證明;這些工具通常存在規(guī)模問(wèn)題,因?yàn)槭褂昧舜罅坑?jì)算,使其僅能處理小于20K行的程序,對(duì)于小于10K行的程序也需要花費(fèi)15小時(shí),但是收斂好,可以發(fā)現(xiàn)復(fù)雜的和看不清楚的問(wèn)題。二是基于先進(jìn)的啟發(fā)式的方法,通過(guò)規(guī)則指紋發(fā)現(xiàn)問(wèn)題;這種工具的特點(diǎn)是,規(guī)模化好,但其分析不徹底,僅能發(fā)現(xiàn)簡(jiǎn)單問(wèn)題,不易收斂。一般可以處理1百萬(wàn)行代碼,在10分鐘或更短的時(shí)間內(nèi)可以處理10K行代碼。上述兩類工具均會(huì)出現(xiàn)大約30%的虛警。?
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于電子科技大學(xué),未經(jīng)電子科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910216239.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 上一篇:一種隧道干燥脫水機(jī)
- 下一篇:一種多樣化顯示的電子鐘表
- 同類專利
- 專利分類
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ò)誤
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(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)軟件的裝置與方法





