两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

軟件安全開發(fā)中的可復(fù)用攻擊模式的建立及復(fù)用方法

文檔序號:6371364閱讀:206來源:國知局
專利名稱:軟件安全開發(fā)中的可復(fù)用攻擊模式的建立及復(fù)用方法
技術(shù)領(lǐng)域
本發(fā)明涉及軟件安全技術(shù)領(lǐng)域,特別是涉及一種基于統(tǒng)一威脅模型的安全軟件的開發(fā)方法。
背景技術(shù)
隨著互聯(lián)網(wǎng)和各種基于互聯(lián)網(wǎng)的計算機應(yīng)用的飛速發(fā)展,人們越來越依賴于作為這些應(yīng)用載體的軟件,對軟件安全的關(guān)注也越來越高。但是,軟件安全的狀況不能令人滿意。軟件經(jīng)常被攻擊,導致計算機安全事故層出不窮,造成了嚴重的經(jīng)濟損失和信譽損失。因此,如何在軟件的開發(fā)中保證其安全性,提高軟件安全評估與測試效率,對于可信軟件的開發(fā)具有重要意義。在軟件安全的研究過程中,很多專家已經(jīng)給出了軟件安全開發(fā)的范式,基于攻擊模式的軟件安全性檢測也有研究,其目的是構(gòu)建安全知識庫,以輔助開發(fā)人員分析軟件的 安全性,并給出相應(yīng)的緩和策略。但是基于結(jié)構(gòu)和半結(jié)構(gòu)化描述攻擊模式,更好的檢測軟件系統(tǒng)的安全性與完備性,同時輔助軟件安全評估與測試,這樣的方法并不多見。

發(fā)明內(nèi)容
基于上述現(xiàn)有技術(shù)存在的問題,本發(fā)明提出了一種基軟件安全開發(fā)中的可復(fù)用攻擊模式的建立及復(fù)用方法,以形式化方法描述攻擊模式,將已知的、經(jīng)常發(fā)生的攻擊及其緩和方案抽象成與特定系統(tǒng)無關(guān)的攻擊模式,并構(gòu)建攻擊模式知識庫;在建模威脅模型時,通過攻擊模式匹配、修改、和實例化的步驟實現(xiàn)了攻擊模式的復(fù)用,幫助開發(fā)人員對威脅進行建模,提高軟件安全評估與測試的效率。提高構(gòu)建統(tǒng)一威脅模型的效率和準確性,從而提高軟件安全評估與測試效率,屬于本發(fā)明提供一種軟件安全開發(fā)中的可復(fù)用攻擊模式的建立方法,該建立方法包括以下步驟步驟一,構(gòu)建攻擊模式知識庫,對攻擊模式進行抽象,即剔除與特定系統(tǒng)相關(guān)的細節(jié)信息后,將針對系統(tǒng)的已知的、經(jīng)常發(fā)生的攻擊方法及其相應(yīng)的緩和方案抽象成泛化形式,使其能夠與多種系統(tǒng)相匹配,然后存入數(shù)據(jù)庫;步驟二,在建模針對系統(tǒng)的威脅時,從不同的系統(tǒng)中搜索并匹配應(yīng)用這些抽象攻擊方法的各種條件;步驟三,根據(jù)匹配結(jié)果對抽象的攻擊方法及其相應(yīng)的緩和方案進行調(diào)整和修改;步驟四,將抽象的攻擊方法及其相應(yīng)的緩和方案實例化,應(yīng)用到針對具體系統(tǒng)的威脅建模過程,完成攻擊模式的復(fù)用。本發(fā)明還提出了一種軟件安全開發(fā)中的可復(fù)用攻擊模式的復(fù)用方法,該復(fù)用方法包括以下步驟對攻擊模式的描述信息、前置條件和后置條件進行匹配;如果滿足上述條件則進一步對應(yīng)用攻擊模式的方法進行判斷;如果系統(tǒng)的功能模型中包含攻擊模式所針對的相同系統(tǒng)功能,則采用第一類應(yīng)用攻擊模式的方法一直接應(yīng)用攻擊模式的復(fù)用方法;如果系統(tǒng)的功能模型中包含攻擊模式所針對的類似系統(tǒng)功能,則采用第二類應(yīng)用攻擊模式的方法——將攻擊模式修改后再應(yīng)用的復(fù)用方法。與現(xiàn)有技術(shù)相比,本發(fā)明的攻擊模式復(fù)用方法能夠輔助設(shè)計人員快速準確地建模并復(fù)用經(jīng)常發(fā)生的、已知的攻擊方法及其相應(yīng)的緩和方案,提供軟件安全評估的效率。還能夠輔助測試人員組織、管理并復(fù)用攻擊模式中的安全測試子序列,提高軟件安全測試的效率。攻擊模式的復(fù)用,提高建模威脅的效率和準確性,從而提高威脅模型驅(qū)動的軟件安全評估與測試的效率,增強軟件系統(tǒng)的安全性。


圖I本發(fā)明的軟件安全開發(fā)中的可復(fù)用攻擊模式的應(yīng)用總體流程;圖2為本發(fā)明的軟件安全開發(fā)中的可復(fù)用攻擊模式的直接應(yīng)用流程;
圖3為本發(fā)明的軟件安全開發(fā)中的將可復(fù)用模式修改后再應(yīng)用的流程;圖4為本發(fā)明實施例之一的建模信息泄露統(tǒng)一威脅模型時直接應(yīng)用獲取用戶名和密碼攻擊模式的示意圖;圖5為本發(fā)明實施例之二的建模SQL注入統(tǒng)一威脅模型時對SQL注入攻擊模式修改后進行應(yīng)用的示意圖。
具體實施例方式以下結(jié)合附圖及較佳實施例,對依據(jù)本發(fā)明提供的具體實施方式
、結(jié)構(gòu)、特征及其功效,詳細說明如下。攻擊模式描述語言是描述攻擊模式的結(jié)構(gòu)化語言,它描述了經(jīng)常發(fā)生的、已知的攻擊方法以及其相應(yīng)的緩和方案,其主體結(jié)構(gòu)包括攻擊模式編號、攻擊模式描述信息、攻擊模式前置條件、攻擊模式后置條件、節(jié)點集合和關(guān)系集合。本發(fā)明采用XML Schema來定義攻擊模式描述語言,主要定義了攻擊模式描述語言的整體結(jié)構(gòu)、各個元素的數(shù)據(jù)結(jié)構(gòu)類型及其需要滿足的約束條件。采用XML描述的攻擊模式具有良好的結(jié)構(gòu),易于數(shù)據(jù)庫化,為攻擊模式在軟件安全評估與測試中的應(yīng)用奠定了基礎(chǔ),并且可以使用攻擊模式描述語言的XML Schema對攻擊模式例程進行結(jié)構(gòu)和語法的驗證。專門研究計算機安全的著名網(wǎng)站CWE和CAPEC發(fā)布了大量關(guān)于計算機漏洞和攻擊模式的信息,并提供了每一種漏洞和攻擊模式的實施步驟、緩和方案的詳細描述信息。本發(fā)明從CWE和CAPEC獲取建模攻擊模式所需要的攻擊方法及其緩和方案的知識,用于建模攻擊模式并構(gòu)建攻擊模式知識庫。攻擊模式復(fù)用方法是一種在建模針對各種系統(tǒng)的威脅的過程中,復(fù)用已知的、經(jīng)常發(fā)生的攻擊方法及其相應(yīng)的緩和方案的技術(shù)。本發(fā)明的可復(fù)用的攻擊模式的建立包括四個關(guān)鍵步驟抽象、匹配、修改以及實例化。抽象該步驟通過剔除與特定系統(tǒng)相關(guān)的細節(jié)信息,將針對系統(tǒng)的已知的、經(jīng)常發(fā)生的攻擊方法及其相應(yīng)的緩和方案抽象成泛化形式,使其能夠與多種系統(tǒng)相匹配,然后存入數(shù)據(jù)庫,構(gòu)建攻擊模式知識庫。
匹配該步驟在建模針對系統(tǒng)的威脅時,從不同的系統(tǒng)中搜索并匹配應(yīng)用這些抽象攻擊方法的各種條件。修改該步驟根據(jù)匹配結(jié)果對抽象的攻擊方法及其相應(yīng)的緩和方案進行調(diào)整和修改。實例化該步驟將抽象的攻擊方法及其相應(yīng)的緩和方案實例化,應(yīng)用到針對具體系統(tǒng)的威脅建模過程,完成攻擊模式的復(fù)用。將攻擊模式應(yīng)用于針對具體系統(tǒng)的威脅建模過程時,需要執(zhí)行攻擊模式復(fù)用技術(shù)的匹配、修改和實例化步驟,整體流程如圖I所示。首先,對攻擊模式編號進行匹配,這一步驟是可選的;然后,對攻擊模式的描述信息、前置條件和后置條件進行匹配;如果滿足上述條件則進一步對應(yīng)用攻擊模式的方法進行判斷;如果系統(tǒng)的功能模型中包含攻擊模式所針對的相同系統(tǒng)功能,則采用第一類應(yīng)用攻擊模式的方法——直接應(yīng)用攻擊模式的方法;如果系統(tǒng)的功能模型中包含攻擊模式所針對的類似系統(tǒng)功能,則采用第二類應(yīng)用攻擊模式的 方法——將攻擊模式修改后再應(yīng)用的方法。直接應(yīng)用攻擊模式的流程如圖2所示。首先,對攻擊模式進行實例化,將攻擊模式中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述,這一步驟類似于面向?qū)ο笤O(shè)計中類的實例化。然后,為葉節(jié)點的評估屬性提供參考賦值,根據(jù)需要調(diào)整葉節(jié)點的評估賦值。完成上述步驟后,將攻擊模式中的葉節(jié)點與事件進行綁定,并將事件與參數(shù)進行綁定。這兩個步驟為安全測試序列的生成奠定了基礎(chǔ),并且能夠幫助測試人員復(fù)用攻擊模式中的安全測試子序列。將葉節(jié)點與相應(yīng)的緩和方案進行關(guān)聯(lián)。接下來,開始對緩和方案進行實例化,將緩和方案中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。最后,根據(jù)需要對緩和方案進行調(diào)整,完成直接應(yīng)用攻擊模式的流程。將攻擊模式修改后再應(yīng)用的方法的流程如圖3所示,其中,包括四種修改方式
(I)添加節(jié)點;⑵刪除節(jié)點;⑶合并節(jié)點;⑷分拆節(jié)點。首先添加/刪除/合并/分拆節(jié)點,確定節(jié)點的AND/0R/LEAF類型,根據(jù)需要對節(jié)點信息進行調(diào)整,并判斷是否需要繼續(xù)進行添加/刪除/合并/分拆節(jié)點操作,如果需要則返回到開始步驟,否則回到判斷是否需要調(diào)整節(jié)點信息的步驟。接下來開始對攻擊模式進行實例化,將攻擊模式中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。然后,為葉節(jié)點的評估屬性提供參考賦值,根據(jù)需要對葉節(jié)點的評估屬性的參考賦值進行調(diào)整。完成上述步驟后,將攻擊模式中的葉節(jié)點與事件進行綁定,并將事件與參數(shù)進行綁定。這兩個步驟為安全測試序列的生成奠定了基礎(chǔ),并且能夠幫助測試人員復(fù)用攻擊模式中的安全測試子序列。將葉節(jié)點與相應(yīng)的緩和方案進行關(guān)聯(lián)。然后,開始對緩和方案進行實例化,將緩和方案中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。最后,根據(jù)需要對緩和方案進行調(diào)整,完成將攻擊模式修改后再應(yīng)用的流程。下面為本發(fā)明的具體實施方式
的舉例。例如,網(wǎng)上購物系統(tǒng)是當今發(fā)展最為迅速的Web應(yīng)用程序之一,近年來,諸多網(wǎng)上購物系統(tǒng)因為存在安全漏洞而被攻擊。因此,本發(fā)明采用攻擊模式復(fù)用方法建模攻擊場景中的統(tǒng)一威脅模型,并進行攻擊場景模型驅(qū)動的軟件安全測試,系統(tǒng)地闡明復(fù)用攻擊模式的具體流程。案例以建模信息泄露統(tǒng)一威脅模型和SQL注入統(tǒng)一威脅模型時應(yīng)用攻擊模式的流程為例,分別詳細闡述建模針對具體系統(tǒng)的威脅時,直接應(yīng)用攻擊模式的方法和將攻擊模式修改后再應(yīng)用的方法的具體流程。
一、直接應(yīng)用攻擊模式方法的實例在建模osCommerce系統(tǒng)的信息泄露統(tǒng)一威脅模型,首先,需要米取攻擊方法獲取注冊用戶的用戶名和密碼。根據(jù)圖I中應(yīng)用攻擊模式總體流程,根據(jù)步驟一,通過搜索發(fā)現(xiàn)獲取用戶名和密碼的攻擊模式的描述與此需求匹配。根據(jù)步驟二,對攻擊模式的前置條件和后置條件進行判斷。獲取用戶名和密碼的攻擊模式的前置條件是系統(tǒng)處于運行狀態(tài),攻擊者能夠輸入用戶名和密碼。后置條件是攻擊者獲得用戶名和密碼。而所建模的信息泄露統(tǒng)一威脅模型正是針對運行的osCo_erce系統(tǒng),攻擊者通過一定的攻擊方法獲取該系統(tǒng)的注冊用戶的用戶名和密碼以后,偽裝成合法的注冊用戶登錄osCommerce系統(tǒng),進行瀏覽或修改注冊用戶的保密賬戶信息等惡意操作,造成注冊用戶的保密賬戶信息被泄露的安全事件。由此可見,這些需求符合獲取用戶名和密碼攻擊模式的前置條件和后置條件。根據(jù)步驟三,判斷應(yīng)用攻擊模式的方法。獲取用戶名和密碼的攻擊模式針對軟件系統(tǒng)的用戶登錄模塊,而osCommerce系統(tǒng)包含相同功能的注冊用戶登錄模塊,因此可以直接應(yīng)用攻擊模式。
·
根據(jù)圖2中直接應(yīng)用攻擊模式方法流程的步驟一,開始對攻擊模式進行實例化,將攻擊模式中泛化的描述轉(zhuǎn)化為針對目標軟件的具體描述。例如,獲取用戶名和密碼的攻擊模式包含兩條攻擊路徑,一條是通過字典攻擊獲取用戶名和密碼,另一條是通過暴力破解攻擊方法獲取用戶名和密碼。需要將上述泛化的描述轉(zhuǎn)化為針對目標軟件osCommerce系統(tǒng)的具體描述,即通過字典攻擊方法或暴力破解攻擊方法獲取osCommerce系統(tǒng)注冊用戶的用戶名和密碼,這樣就明確了目標軟件是osCommerce系統(tǒng),并且是針對該系統(tǒng)注冊用戶的用戶名和密碼進行攻擊。根據(jù)該流程的步驟二,判斷是否需要對獲取用戶名和密碼攻擊模式的葉節(jié)點所提供的評估屬性的參考賦值進行調(diào)整。經(jīng)過判斷,發(fā)現(xiàn)該攻擊模式的葉節(jié)點所提供的評估屬性的參考賦值符合針對osCommerce系統(tǒng)的評估,不需要進行調(diào)整。根據(jù)該流程的步驟三,將獲取用戶名和密碼攻擊模式中的葉節(jié)點與具體的事件進行綁定。例如,通過字典攻擊方法獲取用戶名和密碼的攻擊路徑包含兩個葉節(jié)點,分別是通過字典攻擊獲取用戶名(N41)與通過字典攻擊獲取密碼(N42)。需要將這兩個葉節(jié)點與針對osCommerce系統(tǒng)所采取的具體的事件綁定,即通過字典攻擊獲取用戶名(N41)與inputUsername ()事件綁定,通過字典攻擊獲取密碼(N42)與inputPassword ()事件綁定。根據(jù)該流程的步驟四,將具體的事件與其相應(yīng)的參數(shù)進行綁定。例如,將inputUsername ()事件與String類型的參數(shù)username綁定,將inputPassword ()事件與String類型的參數(shù)password綁定。根據(jù)該流程的步驟五,將葉節(jié)點與相應(yīng)的緩和方案綁定。例如,針對字典攻擊和暴力破解獲取用戶名和密碼的攻擊方法,采取三種緩和方案(I)對多次嘗試用戶名和密碼的賬戶進行鎖定;(2)對無效的用戶名和密碼采用延遲輸入技術(shù);(3)支持強密碼。根據(jù)該流程的步驟六,對緩和方案進行實例化,將緩和方案中泛化的描述轉(zhuǎn)化為針對具體目標軟件的描述。例如,針對osCommerce系統(tǒng),采取的具體緩和方案是(I)當osCommerce系統(tǒng)的注冊用戶嘗試用戶名和密碼超過限定次數(shù)(6次)以后,對該注冊用戶的賬戶進行半個小時的鎖定,并將該賬戶的異常情況通知osCo_erce系統(tǒng)管理員和該注冊用戶;(2)當osCommerce系統(tǒng)的注冊用戶每一次輸入無效的用戶名和密碼后,采用一定的延遲(I秒)后才允許重新輸入用戶名和密碼;(3)采用支持強密碼的技術(shù),注冊用戶可以選用大小寫字母、數(shù)字和一些特定字符混用的高強度密碼。根據(jù)該流程的步驟七,判斷是否需要調(diào)整緩和方案。經(jīng)過判斷,不需要對該緩和方案進行調(diào)整。結(jié)束整個直接應(yīng)用攻擊模式的流程,如圖4所示,建模信息泄露統(tǒng)一威脅模型時直接應(yīng)用獲取用戶名和密碼攻擊模式。二、將攻擊模式修改后再應(yīng)用的實例在建模osCommerce系統(tǒng)的SQL注入統(tǒng)一威脅模型時,需要米取SQL注入攻擊方法獲取注冊用戶的信用卡信息、個人信息或登錄信息。根據(jù)圖I中應(yīng)用攻擊模式總體流程根據(jù)步驟一,通過搜索發(fā)現(xiàn)SQL注入攻擊模式的描述與此需求匹配;根據(jù)步驟二對攻擊模式的前置條件和后置條件進行判斷。SQL注入攻擊模式的前置條件是系統(tǒng)處于運行狀態(tài),攻擊者的輸入會被用于構(gòu)建SQL語句,然后在服務(wù)器端的數(shù)據(jù)庫上執(zhí)行。后置條件是攻擊者在服務(wù)器端的數(shù)據(jù)庫上執(zhí)行惡意的SQL代碼。造成攻擊者能夠繞過安全驗證,通過執(zhí)行SQL查詢獲取保密信息(例如,用戶名和密碼,信用卡信息),對數(shù)據(jù)庫進行非法修 改(例如,刪除數(shù)據(jù)庫中的一張表,向數(shù)據(jù)庫中插入非法數(shù)據(jù)),等嚴重的安全問題。而所建模的SQL注入統(tǒng)一威脅模型正是針對運行的osCommerce系統(tǒng),攻擊者通過SQL注入攻擊獲取注冊用戶的信用卡信息、個人信息或登錄信息。由此可見,這些需求符合SQL注入攻擊模式的前置條件和后置條件。根據(jù)步驟三,判斷應(yīng)用攻擊模式的方法。SQL注入攻擊模式針對軟件系統(tǒng)的各種用戶輸入域,輸入域中的用戶輸入最終會被用于構(gòu)建SQL語句并在服務(wù)器端的數(shù)據(jù)庫上執(zhí)行。而osCommerce系統(tǒng)包含一個用戶編輯商品信息的模塊,該模塊最終將用戶編輯后的商品信息提交到服務(wù)器端的數(shù)據(jù)庫上執(zhí)行SQL查詢操作,用于生成最終的用戶訂單。這與SQL注入攻擊模式所針對的系統(tǒng)功能模塊類似,因此,需要根據(jù)具體情況對SQL注入攻擊模式進行修改后再應(yīng)用。根據(jù)圖3中修改后應(yīng)用攻擊模式方法流程的步驟一,先根據(jù)具體情況對攻擊模式進行修改。在osCommerce系統(tǒng)中,獲取注冊用戶的信用卡信息、個人信息、登錄信息的SQL注入攻擊是發(fā)生在用戶編輯商品信息時,要到達這一步驟,用戶還需要先瀏覽osCommerce購物網(wǎng)站并選擇一個商品。因此SQL注入攻擊模式中的確定SQL注入的地點的節(jié)點(N14)需要被分拆為三個節(jié)點用戶瀏覽osCommerce購物網(wǎng)站(N12),選擇一個商品(N13),編輯商品信息(N14)。因為攻擊者想通過SQL注入攻擊獲取注冊用戶的信用卡信息、個人信息、登錄信息,所以需要向SQL注入攻擊模式中的注入惡意的SQL代碼節(jié)點(N15)添加三個子節(jié)點,根據(jù)攻擊者的不同意圖,分別注入獲取注冊用戶的信用卡信息(N17)、個人信息(N18)、登錄信息(N19)的惡意SQL代碼。根據(jù)流程的步驟二開始對攻擊模式進行實例化,將攻擊模式中泛化的描述轉(zhuǎn)化為針對目標軟件的具體描述。例如,SQL注入攻擊模式包含一條攻擊路徑,即通過SQL注入攻擊對系統(tǒng)造成安全危害。需要將上述泛化的描述轉(zhuǎn)化為針對目標軟件osCommerce系統(tǒng)的具體描述。首先,確定SQL注入的地點的節(jié)點被具體化為用戶瀏覽osCommerce購物網(wǎng)站并選擇一個商品,并對該商品的信息進行編輯。其次,通過對SQL注入攻擊模式的修改,針對osCommerce系統(tǒng)建模的SQL注入統(tǒng)一威脅模型中包含三條攻擊路徑,第一條是通過注入惡意的SQL代碼獲取注冊用戶的信用卡信息,第二條是通過注入惡意的SQL代碼獲取注冊用戶的個人信息,第三條是通過注入惡意的SQL代碼獲取注冊用戶的登錄信息。這樣就明確了目標軟件是osCommerce系統(tǒng),并且是針對該系統(tǒng)注冊用戶的信用卡信息、個人信息和登錄信息。最后,執(zhí)行惡意的SQL代碼節(jié)點具體化為將商品添加到購物車,然后,在后臺系統(tǒng)對其進行處理生成用戶訂單時,惡意的SQL代碼被執(zhí)行。根據(jù)該流程的步驟三,判斷是否需要對SQL注入攻擊模式的葉節(jié)點所提供的評估屬性的參考賦值進行調(diào)整。經(jīng)過判斷,發(fā)現(xiàn)該攻擊模式的葉節(jié)點所提供的參考賦值不完全符合針對osCommerce系統(tǒng)的評估,需要對其進行相應(yīng)的調(diào)整。根據(jù)該流程的步驟四,將SQL注入攻擊模式中的葉節(jié)點與具體的事件進行綁定。例如,用戶瀏覽osCommerce購物網(wǎng)站節(jié)點(N12)需要與openURLO事件綁定,選擇一個商品節(jié)點(N13)需要與getProductIDO事件綁定,編輯商品信息需要與editProductO事件綁定。注入獲取注冊用戶的信用卡信息(N17)、個人信息(N18)、登錄信息(N19)的惡意SQL代碼,這三個節(jié)點都需要與editProductO事件綁定。將商品添加到購物車(N16)節(jié)點需要與addToShopingCartO事件綁定。根據(jù)該流程的步驟五,將具體的事件與其相應(yīng)的參數(shù)進行綁定。例如,將openURLO事件與String類型的參數(shù)url綁定,將getProductIDO事件、editProduct ()事件和addToShopingCartO事件都與數(shù)組類型的參數(shù)id□綁定。根據(jù)該流程的步驟六,將葉節(jié)點與相應(yīng)的緩和方案綁定。例如,針對SQL注入攻擊模式,采取三種緩和方案(I)對用戶輸入進行過濾;(2)以用戶所必須的最低權(quán)限運行其查詢;(3)使用參數(shù)化查詢。根據(jù)該流程的步驟七,對緩和方案進行實例化,將緩和 方案中泛化的描述轉(zhuǎn)化為針對具體目標軟件的描述。例如,針對osCommerce系統(tǒng),采取的具體緩和方案是(I)建立針對osCommerce系統(tǒng)的用戶輸入白名單(即可以被接受的用戶輸入數(shù)據(jù))和黑名單(即應(yīng)該拒絕的用戶輸入數(shù)據(jù)),對用戶輸入進行過濾;(2)以用戶所必須的最低權(quán)限運行其查詢,如果用戶查詢產(chǎn)生了錯誤信息,對錯誤信息進行簡化處理,不要將過多與數(shù)據(jù)庫相關(guān)的錯誤信息反饋給用戶。(3)使用參數(shù)化查詢將SQL語句中的數(shù)據(jù)與代碼區(qū)分開來。根據(jù)該流程步驟八,判斷是否需要調(diào)整緩和方案。經(jīng)過判斷,不需要對該緩和方案進行調(diào)整。結(jié)束整個修改后應(yīng)用攻擊模式的流程,建模SQL注入統(tǒng)一威脅模型時對SQL注入攻擊模式修改后進行應(yīng)用的示意圖如圖5所示。
權(quán)利要求
1.一種軟件安全開發(fā)中的可復(fù)用攻擊模式的建立方法,其特征在于,該建立方法包括以下步驟 步驟一,構(gòu)建攻擊模式知識庫,對攻擊模式進行抽象,即剔除與特定系統(tǒng)相關(guān)的細節(jié)信息后,將針對系統(tǒng)的已知的、經(jīng)常發(fā)生的攻擊方法及其相應(yīng)的緩和方案抽象成泛化形式,使其能夠與多種系統(tǒng)相匹配,然后存入數(shù)據(jù)庫; 步驟二,在建模針對系統(tǒng)的威脅時,從不同的系統(tǒng)中搜索并匹配應(yīng)用這些抽象攻擊方法的各種條件; 步驟三,根據(jù)匹配結(jié)果對抽象的攻擊方法及其相應(yīng)的緩和方案進行調(diào)整和修改; 步驟四,將抽象的攻擊方法及其相應(yīng)的緩和方案實例化,應(yīng)用到針對具體系統(tǒng)的威脅建模過程,完成攻擊模式的復(fù)用。
2.如權(quán)利要求I所述的軟件安全開發(fā)中的可復(fù)用攻擊模式的建立方法,該復(fù)用方法包括以下步驟采用XML Schema作為攻擊模式描述語言。
3.利用如權(quán)利要求I所述的軟件安全開發(fā)中的可復(fù)用攻擊模式的復(fù)用方法,其特征在于,該復(fù)用方法包括以下步驟 對攻擊模式的描述信息、前置條件和后置條件進行匹配;如果滿足上述條件則進一步對應(yīng)用攻擊模式的方法進行判斷;如果系統(tǒng)的功能模型中包含攻擊模式所針對的相同系統(tǒng)功能,則采用第一類應(yīng)用攻擊模式的方法——直接應(yīng)用攻擊模式的復(fù)用方法;如果系統(tǒng)的功能模型中包含攻擊模式所針對的類似系統(tǒng)功能,則采用第二類應(yīng)用攻擊模式的方法——將攻擊模式修改后再應(yīng)用的復(fù)用方法。
4.權(quán)利要求3所述的軟件安全開發(fā)中的可復(fù)用攻擊模式的復(fù)用方法,其特征在于,所述直接應(yīng)用攻擊模式的方法還包括以下步驟 首先,對攻擊模式進行實例化,將攻擊模式中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述,這一步驟類似于面向?qū)ο笤O(shè)計中類的實例化。然后,為葉節(jié)點的評估屬性提供參考賦值,根據(jù)需要調(diào)整葉節(jié)點的評估賦值。完成上述步驟后,將攻擊模式中的葉節(jié)點與事件進行綁定,并將事件與參數(shù)進行綁定。這兩個步驟為安全測試序列的生成奠定了基礎(chǔ),并且能夠幫助測試人員復(fù)用攻擊模式中的安全測試子序列。將葉節(jié)點與相應(yīng)的緩和方案進行關(guān)聯(lián)。接下來,開始對緩和方案進行實例化,將緩和方案中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。最后,根據(jù)需要對緩和方案進行調(diào)整,完成直接應(yīng)用攻擊模式的流程。
5.權(quán)利要求3所述的軟件安全開發(fā)中的可復(fù)用攻擊模式的復(fù)用方法,其特征在于,所述攻擊模式修改后再應(yīng)用的復(fù)用方法,還包括以下步驟 首先添加/刪除/合并/分拆節(jié)點,確定節(jié)點的AND/OR/LEAF類型,根據(jù)需要對節(jié)點信息進行調(diào)整,并判斷是否需要繼續(xù)進行添加/刪除/合并/分拆節(jié)點操作,如果需要則返回到開始步驟,否則回到判斷是否需要調(diào)整節(jié)點信息的步驟。接下來開始對攻擊模式進行實例化,將攻擊模式中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。然后,為葉節(jié)點的評估屬性提供參考賦值,根據(jù)需要對葉節(jié)點的評估屬性的參考賦值進行調(diào)整。完成上述步驟后,將攻擊模式中的葉節(jié)點與事件進行綁定,并將事件與參數(shù)進行綁定。這兩個步驟為安全測試序列的生成奠定了基礎(chǔ),并且能夠幫助測試人員復(fù)用攻擊模式中的安全測試子序列。將葉節(jié)點與相應(yīng)的緩和方案進行關(guān)聯(lián)。然后,開始對緩和方案進行實例化,將緩和方案中的泛化描述轉(zhuǎn)化為針對目標軟件的具體描述。最后,根據(jù)需要對緩和方案進行調(diào)整,完成將攻擊模式修改后再應(yīng)用的流程。
6.權(quán)利要求3所述的軟件安全開發(fā)中的可復(fù)用攻擊模式的復(fù)用方法,其特征在于,所述對攻擊模式的描述信息、前置條件和后置條件進行匹配的步驟之前,先對攻擊模式編號進行匹配。
全文摘要
本發(fā)明公開了一種軟件安全開發(fā)中的可復(fù)用攻擊模式的建立及復(fù)用方法,其中,建立方法包括四個關(guān)鍵步驟抽象、匹配、修改以及實例化;復(fù)用方法包括以下步驟對攻擊模式的描述信息、前置條件和后置條件進行匹配;如果滿足上述條件則進一步對應(yīng)用攻擊模式的方法進行判斷;如果系統(tǒng)的功能模型中包含攻擊模式所針對的相同系統(tǒng)功能,則采用第一類應(yīng)用攻擊模式的方法——直接應(yīng)用攻擊模式的復(fù)用方法;如果系統(tǒng)的功能模型中包含攻擊模式所針對的類似系統(tǒng)功能,則采用第二類應(yīng)用攻擊模式的方法——將攻擊模式修改后再應(yīng)用的復(fù)用方法。與現(xiàn)有技術(shù)相比,本發(fā)明攻擊模式的復(fù)用,提高建模威脅的效率和準確性,從而提高威脅模型驅(qū)動的軟件安全評估與測試的效率,增強軟件系統(tǒng)的安全性。
文檔編號G06F21/00GK102810137SQ20121019432
公開日2012年12月5日 申請日期2012年6月13日 優(yōu)先權(quán)日2012年6月13日
發(fā)明者李曉紅, 閆璐, 何可, 馮志勇, 許光全, 胡靜 申請人:天津大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
蓬溪县| 灵台县| 枞阳县| 漳平市| 蓝田县| 诸城市| 新化县| 孝义市| 宿州市| 油尖旺区| 鲁山县| 蚌埠市| 灌南县| 普兰县| 大名县| 甘德县| 竹山县| 剑川县| 惠水县| 金乡县| 万宁市| 合肥市| 资兴市| 乌审旗| 石楼县| 大洼县| 阿克陶县| 奈曼旗| 霍城县| 枣阳市| 徐水县| 大化| 碌曲县| 正阳县| 海安县| 新营市| 城市| 廉江市| 商河县| 新宾| 稷山县|