本發明涉及(ji)網絡安全,特別是涉及(ji)一種(zhong)漏洞檢測的方法、電子(zi)設備及(ji)存儲介質。
背景技術:
1、隨(sui)著(zhu)互聯網技術(shu)的(de)(de)飛速發(fa)展,越(yue)來越(yue)多的(de)(de)企(qi)業(ye)和(he)(he)(he)組織(zhi)依賴于(yu)信(xin)息(xi)系統和(he)(he)(he)應(ying)用(yong)(yong)程(cheng)序來支撐其(qi)核心業(ye)務(wu)運營,然而,這些系統和(he)(he)(he)應(ying)用(yong)(yong)程(cheng)序在設計和(he)(he)(he)實現(xian)過(guo)(guo)程(cheng)中往往存在各種安全(quan)(quan)隱患,業(ye)務(wu)邏輯(ji)漏洞(dong)(dong)成(cheng)為其(qi)中較(jiao)為隱蔽(bi)且影響深遠(yuan)的(de)(de)一(yi)類,其(qi)中業(ye)務(wu)邏輯(ji)漏洞(dong)(dong)指的(de)(de)是(shi)由于(yu)業(ye)務(wu)邏輯(ji)設計或(huo)流程(cheng)設計不完(wan)整、不合理導致的(de)(de)業(ye)務(wu)相關的(de)(de)缺陷(xian),例如:在支付交易(yi)、越(yue)權(quan)訪問、密碼(ma)找回等功能出現(xian)的(de)(de)業(ye)務(wu)邏輯(ji)漏洞(dong)(dong),攻擊者(zhe)可以(yi)通過(guo)(guo)利(li)用(yong)(yong)業(ye)務(wu)邏輯(ji)漏洞(dong)(dong),繞過(guo)(guo)系統的(de)(de)安全(quan)(quan)控制,獲取敏感信(xin)息(xi)、執行未授權(quan)操(cao)作或(huo)進行惡(e)意(yi)攻擊,進而對系統造成(cheng)重大損(sun)失,因(yin)此,如何對漏洞(dong)(dong)進行檢(jian)測進而防范成(cheng)為重要的(de)(de)研究方(fang)向。
2、現有(you)技(ji)術(shu)中進(jin)行漏洞(dong)檢(jian)測(ce)的方法為基(ji)于漏洞(dong)的攻擊特征,形成固(gu)定的檢(jian)測(ce)規則,通過(guo)關(guan)鍵(jian)字(zi)匹配、上下文分析等方法發現對應的缺陷代碼(ma)以實現對漏洞(dong)的檢(jian)測(ce)。
3、綜(zong)上,漏洞(dong)檢測的方法存在的問題:因關鍵詞匹配不(bu)準確(que)易(yi)造成(cheng)誤(wu)報或者漏報,因漏洞(dong)不(bu)斷(duan)更新換代,無法適應新的任務場景和漏洞(dong)特(te)征,降低了(le)漏洞(dong)檢測的準確(que)性,未(wei)基(ji)于任務對(dui)應的源(yuan)代碼特(te)性對(dui)任務進(jin)行篩選,增加了(le)維護成(cheng)本(ben)和復(fu)雜性。
技術實現思路
1、針(zhen)對上述技(ji)術問題,本(ben)發明采(cai)用的(de)技(ji)術方(fang)案為:一種漏洞檢測(ce)的(de)方(fang)法,包括(kuo)如(ru)下步驟:
2、s100,獲(huo)取目(mu)標(biao)(biao)可讀指(zhi)令(ling)(ling)列表,其中,所述目(mu)標(biao)(biao)可讀指(zhi)令(ling)(ling)列表包括(kuo)若(ruo)干個目(mu)標(biao)(biao)可讀指(zhi)令(ling)(ling),所述目(mu)標(biao)(biao)可讀指(zhi)令(ling)(ling)為用(yong)戶與系統交互過程中所執行的(de)(de)任務對應的(de)(de)源(yuan)代碼。
3、s200,獲取目(mu)(mu)標(biao)可讀(du)指(zhi)(zhi)令(ling)列(lie)(lie)表(biao)(biao)對(dui)應的目(mu)(mu)標(biao)任務列(lie)(lie)表(biao)(biao),其(qi)中,所述目(mu)(mu)標(biao)任務列(lie)(lie)表(biao)(biao)包(bao)括若(ruo)干個(ge)目(mu)(mu)標(biao)任務,每個(ge)目(mu)(mu)標(biao)可讀(du)指(zhi)(zhi)令(ling)對(dui)應一個(ge)目(mu)(mu)標(biao)任務。
4、s300,獲取目標(biao)(biao)(biao)(biao)可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)列表對(dui)應的(de)指(zhi)(zhi)(zhi)(zhi)定可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)列表,其(qi)中,所述(shu)指(zhi)(zhi)(zhi)(zhi)定可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)列表包括若干個指(zhi)(zhi)(zhi)(zhi)定可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling),每(mei)個目標(biao)(biao)(biao)(biao)可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)對(dui)應一個指(zhi)(zhi)(zhi)(zhi)定可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling),所述(shu)指(zhi)(zhi)(zhi)(zhi)定可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)為基于目標(biao)(biao)(biao)(biao)可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)中獲取到的(de)執行目標(biao)(biao)(biao)(biao)可(ke)(ke)(ke)讀(du)(du)(du)(du)(du)指(zhi)(zhi)(zhi)(zhi)令(ling)(ling)對(dui)應的(de)目標(biao)(biao)(biao)(biao)任務所涉(she)及(ji)流(liu)程部(bu)分對(dui)應的(de)代(dai)碼。
5、s400,根據指(zhi)定可讀指(zhi)令(ling)列表,對目標可讀指(zhi)令(ling)進(jin)行漏洞(dong)檢(jian)測,其中,在s400中還包括如下步驟:
6、s401,根(gen)據目(mu)標(biao)任務(wu)(wu)和目(mu)標(biao)任務(wu)(wu)對應的指定(ding)可(ke)讀指令,確定(ding)目(mu)標(biao)風(feng)險信息和目(mu)標(biao)風(feng)險位置。
7、s402,根(gen)據目(mu)標(biao)風險位(wei)置,獲取指(zhi)定(ding)檢測(ce)位(wei)置,其中,所述指(zhi)定(ding)檢測(ce)位(wei)置為(wei)在指(zhi)定(ding)可讀(du)指(zhi)令目(mu)標(biao)風險位(wei)置之前的位(wei)置。
8、s403,當指定檢測位(wei)置不(bu)存在目(mu)標(biao)函(han)數(shu)時,確定目(mu)標(biao)可讀指令存在漏洞,其中,所述目(mu)標(biao)函(han)數(shu)為對目(mu)標(biao)風(feng)險信息(xi)進(jin)行校驗的函(han)數(shu)。
9、s404,當指定檢測位(wei)置(zhi)存在目(mu)(mu)(mu)標(biao)(biao)函數(shu)時,獲取目(mu)(mu)(mu)標(biao)(biao)可讀指令對(dui)應的(de)目(mu)(mu)(mu)標(biao)(biao)風(feng)(feng)(feng)險系數(shu),其中,所述目(mu)(mu)(mu)標(biao)(biao)風(feng)(feng)(feng)險系數(shu)為指定檢測位(wei)置(zhi)存在目(mu)(mu)(mu)標(biao)(biao)函數(shu)的(de)數(shu)量與目(mu)(mu)(mu)標(biao)(biao)數(shu)據庫(ku)中目(mu)(mu)(mu)標(biao)(biao)風(feng)(feng)(feng)險信息對(dui)應的(de)目(mu)(mu)(mu)標(biao)(biao)任務對(dui)應的(de)指定函數(shu)的(de)數(shu)量之比。
10、s405,當目(mu)(mu)標風險系數(shu)滿足預設條(tiao)件時(shi),確定(ding)目(mu)(mu)標可讀指令不(bu)(bu)存在漏洞,其中,所述預設條(tiao)件為不(bu)(bu)小于預設系數(shu)閾值。
11、s406,當目標風險系數不(bu)滿足預設(she)條件時,確定(ding)目標可讀指(zhi)令存在(zai)漏洞以實現對漏洞的檢(jian)測。
12、本(ben)發明保護了一種電子設備,包括(kuo)存(cun)(cun)儲(chu)(chu)器(qi),處理器(qi)以及(ji)存(cun)(cun)儲(chu)(chu)在所(suo)述(shu)(shu)(shu)存(cun)(cun)儲(chu)(chu)器(qi)中(zhong)并可在所(suo)述(shu)(shu)(shu)處理器(qi)上運行(xing)的(de)計算機(ji)程(cheng)序,所(suo)述(shu)(shu)(shu)處理器(qi)執(zhi)行(xing)所(suo)述(shu)(shu)(shu)計算機(ji)程(cheng)序時實現上述(shu)(shu)(shu)的(de)漏洞檢測的(de)方法。
13、本發明保(bao)護了一種計算(suan)機(ji)可讀存(cun)儲介(jie)質,所述(shu)計算(suan)機(ji)可讀存(cun)儲介(jie)質存(cun)儲有計算(suan)機(ji)程(cheng)序,所述(shu)計算(suan)機(ji)程(cheng)序被(bei)處理器執行(xing)時實現上(shang)述(shu)的(de)漏洞檢測的(de)方(fang)法。
14、本(ben)發(fa)(fa)明至(zhi)少(shao)具(ju)有(you)以(yi)下有(you)益效(xiao)(xiao)果(guo):本(ben)發(fa)(fa)明為一種漏(lou)洞(dong)(dong)檢(jian)(jian)測(ce)(ce)的(de)方法,包括如下步驟:獲取(qu)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令列(lie)(lie)表,獲取(qu)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令列(lie)(lie)表對應的(de)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)任(ren)務(wu)列(lie)(lie)表,獲取(qu)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令列(lie)(lie)表對應的(de)指(zhi)(zhi)定(ding)可(ke)讀(du)指(zhi)(zhi)令列(lie)(lie)表,根據(ju)(ju)(ju)指(zhi)(zhi)定(ding)可(ke)讀(du)指(zhi)(zhi)令列(lie)(lie)表,對目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令進行(xing)漏(lou)洞(dong)(dong)檢(jian)(jian)測(ce)(ce),其中,根據(ju)(ju)(ju)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)任(ren)務(wu)和目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)任(ren)務(wu)對應的(de)指(zhi)(zhi)定(ding)可(ke)讀(du)指(zhi)(zhi)令,確定(ding)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)信息和目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)位(wei)(wei)置(zhi)(zhi),根據(ju)(ju)(ju)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)位(wei)(wei)置(zhi)(zhi),獲取(qu)指(zhi)(zhi)定(ding)檢(jian)(jian)測(ce)(ce)位(wei)(wei)置(zhi)(zhi),當(dang)(dang)指(zhi)(zhi)定(ding)檢(jian)(jian)測(ce)(ce)位(wei)(wei)置(zhi)(zhi)不(bu)(bu)存(cun)(cun)在(zai)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)函數(shu)(shu)時(shi),確定(ding)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令存(cun)(cun)在(zai)漏(lou)洞(dong)(dong),當(dang)(dang)指(zhi)(zhi)定(ding)檢(jian)(jian)測(ce)(ce)位(wei)(wei)置(zhi)(zhi)存(cun)(cun)在(zai)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)函數(shu)(shu)時(shi),獲取(qu)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令對應的(de)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)系(xi)(xi)數(shu)(shu),當(dang)(dang)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)系(xi)(xi)數(shu)(shu)滿足(zu)預(yu)設條件時(shi),確定(ding)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令不(bu)(bu)存(cun)(cun)在(zai)漏(lou)洞(dong)(dong),當(dang)(dang)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)風(feng)(feng)險(xian)系(xi)(xi)數(shu)(shu)不(bu)(bu)滿足(zu)預(yu)設條件時(shi),確定(ding)目(mu)(mu)(mu)標(biao)(biao)(biao)(biao)(biao)可(ke)讀(du)指(zhi)(zhi)令存(cun)(cun)在(zai)漏(lou)洞(dong)(dong)以(yi)實現對漏(lou)洞(dong)(dong)的(de)檢(jian)(jian)測(ce)(ce),本(ben)發(fa)(fa)明基于(yu)任(ren)務(wu)對應代碼(ma)的(de)特(te)征數(shu)(shu)據(ju)(ju)(ju)對任(ren)務(wu)進行(xing)篩選,縮小(xiao)了漏(lou)洞(dong)(dong)分析的(de)范(fan)圍,提高了漏(lou)洞(dong)(dong)檢(jian)(jian)測(ce)(ce)的(de)效(xiao)(xiao)率(lv),基于(yu)與風(feng)(feng)險(xian)數(shu)(shu)據(ju)(ju)(ju)相(xiang)關聯信息對應的(de)風(feng)(feng)險(xian)系(xi)(xi)數(shu)(shu)對漏(lou)洞(dong)(dong)進行(xing)檢(jian)(jian)測(ce)(ce),不(bu)(bu)易造成誤報(bao)或(huo)者漏(lou)報(bao),使得漏(lou)洞(dong)(dong)檢(jian)(jian)測(ce)(ce)的(de)準確性較(jiao)高。
1.一種(zhong)漏(lou)洞(dong)檢測的方法(fa),其特征在于,所述方法(fa)包括如下步驟:
2.根據權利要求1所述的漏(lou)洞檢測的方法,其(qi)特征(zheng)在于(yu),在s100中通過如下步(bu)驟獲取到目標可讀指令:
3.根(gen)據(ju)權(quan)利要求2所(suo)述(shu)的(de)漏洞檢測(ce)的(de)方(fang)法,其特征在于,所(suo)述(shu)第一目(mu)標字符(fu)串(chuan)為(wei)從初始(shi)可(ke)讀(du)指令(ling)(ling)中獲(huo)取到(dao)的(de)初始(shi)可(ke)讀(du)指令(ling)(ling)對應的(de)任(ren)務名稱字符(fu)串(chuan)。
4.根據權利要求2所(suo)(suo)述的漏洞檢測的方法,其(qi)特征在于(yu),所(suo)(suo)述第二目標字符串為從(cong)初(chu)始(shi)可讀(du)指令中獲取(qu)到的執行(xing)初(chu)始(shi)可讀(du)指令對(dui)應任務(wu)所(suo)(suo)需要的元素(su)。
5.根據權利(li)要求2所述的(de)漏(lou)洞檢(jian)測(ce)的(de)方(fang)法,其特征在于,f0的(de)取(qu)值(zhi)范圍為0.6~0.8。
6.根據權(quan)利要求1所(suo)述(shu)的(de)漏洞檢測的(de)方法,其特征(zheng)在于,所(suo)述(shu)目標風險信息(xi)為(wei)目標可讀指令中目標任務實際發生步驟對應的(de)代碼。
7.根據權利要求1所述的漏洞檢(jian)測的方法,其特征在于,所述目(mu)標(biao)風險位(wei)置(zhi)為目(mu)標(biao)風險信息在指(zhi)定(ding)可讀指(zhi)令中所處的位(wei)置(zhi)。
8.一(yi)種非瞬(shun)時性計(ji)算(suan)機可(ke)讀(du)存(cun)(cun)儲(chu)介質,其特征在于,所(suo)述(shu)(shu)存(cun)(cun)儲(chu)介質中存(cun)(cun)儲(chu)有至(zhi)(zhi)少一(yi)條可(ke)讀(du)指令或至(zhi)(zhi)少一(yi)段程序,所(suo)述(shu)(shu)至(zhi)(zhi)少一(yi)條可(ke)讀(du)指令或所(suo)述(shu)(shu)至(zhi)(zhi)少一(yi)段程序由處理器加載并執行以實現如權(quan)利要求1-7中任意一(yi)項的所(suo)述(shu)(shu)方法。
9.一種電子設備(bei),其特(te)征在于(yu),包括處理(li)器和權利要(yao)求(qiu)9中所述(shu)的(de)非(fei)瞬時性計算機可讀存儲介質。