欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

漏洞檢測方法及裝置與流程

文檔序號(hào):12825457閱讀:326來源:國知局
漏洞檢測方法及裝置與流程

本申請(qǐng)涉及計(jì)算機(jī)領(lǐng)域,具體而言,涉及一種漏洞檢測方法及裝置。



背景技術(shù):

漏洞掃描是指基于漏洞數(shù)據(jù)庫,通過掃描等手段對(duì)指定的遠(yuǎn)程或者本地計(jì)算機(jī)系統(tǒng)的安全脆弱性進(jìn)行檢測,發(fā)現(xiàn)可利用的漏洞的一種安全檢測(滲透攻擊)行為。通常,漏洞掃描系統(tǒng)會(huì)根據(jù)待檢測的漏洞制定對(duì)應(yīng)的漏洞檢測規(guī)則,漏洞掃描系統(tǒng)中掃描引擎的能力越強(qiáng),其能夠制定的漏洞檢測規(guī)則也就越復(fù)雜。目前,若通過較為常用的漏洞檢測規(guī)則定義方法(如文本方法)制定漏洞檢測規(guī)則,則該漏洞檢測規(guī)則在面對(duì)復(fù)雜漏洞或未知漏洞時(shí)檢測效果較差,從而導(dǎo)致漏洞檢測的準(zhǔn)確性不高。

針對(duì)上述的問題,目前尚未提出有效的解決方案。



技術(shù)實(shí)現(xiàn)要素:

本申請(qǐng)實(shí)施例提供了一種漏洞檢測方法及裝置,以至少解決現(xiàn)有技術(shù)中漏洞檢測準(zhǔn)確率較低的技術(shù)問題。

根據(jù)本申請(qǐng)實(shí)施例的一個(gè)方面,提供了一種漏洞檢測方法,包括:利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與所述漏洞特征匹配的查找結(jié)果;根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

根據(jù)本申請(qǐng)實(shí)施例的另一方面,還提供了一種漏洞檢測裝置,包括:掃描單元,用于利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;第一獲取單元,用于在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;查找單元,用于根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與所述漏洞特征匹配的查找結(jié)果;確定單元,用于根據(jù)查找結(jié)果確定被檢測程序中是否存 在程序漏洞。

在本申請(qǐng)實(shí)施例中,采用利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與所述漏洞特征匹配的查找結(jié)果;根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞的方式,通過預(yù)先設(shè)置的漏洞檢測條件掃描被檢測程序的反編譯語句,并在匹配到該漏洞檢測條件的起始條件時(shí)獲取該起始條件所屬的程序漏洞的漏洞信息,以及對(duì)該漏洞信息中的漏洞特征進(jìn)行特征查找,達(dá)到了根據(jù)特征查找后所得到的查找結(jié)果確定被檢測程序中是否存在程序漏洞,從而實(shí)現(xiàn)了提高漏洞檢測的準(zhǔn)確率和靈活性、增強(qiáng)可檢測對(duì)象的覆蓋度的技術(shù)效果,進(jìn)而解決了現(xiàn)有技術(shù)中漏洞檢測準(zhǔn)確率較低的技術(shù)問題。

附圖說明

此處所說明的附圖用來提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:

圖1是根據(jù)本申請(qǐng)實(shí)施例的一種漏洞檢測方法的計(jì)算機(jī)終端的硬件結(jié)構(gòu)框圖;

圖2是根據(jù)本申請(qǐng)實(shí)施例的一種可選的漏洞檢測方法的流程示意圖;

圖3是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測方法的流程示意圖;

圖4是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測方法的流程示意圖;

圖5是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測方法的流程示意圖;

圖6是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測方法的流程示意圖;

圖7是根據(jù)本申請(qǐng)實(shí)施例的一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖8是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖9是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖10是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖11是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖12是根據(jù)本申請(qǐng)實(shí)施例的又一種可選的漏洞檢測裝置的結(jié)構(gòu)示意圖;

圖13是根據(jù)本申請(qǐng)實(shí)施例的一種計(jì)算機(jī)終端的結(jié)構(gòu)框圖。

具體實(shí)施方式

為了使本技術(shù)領(lǐng)域的人員更好地理解本申請(qǐng)方案,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分的實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。

需要說明的是,本申請(qǐng)的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請(qǐng)的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。

首先,在對(duì)本申請(qǐng)實(shí)施例進(jìn)行描述的過程中出現(xiàn)的部分名詞或術(shù)語適用于如下解釋:

反編譯語句:通過對(duì)檢測程序進(jìn)行反向編譯(又稱逆向編譯)而得到的語句;

反編譯:高級(jí)語言源程序經(jīng)過編譯變成可執(zhí)行文件的逆過程;

漏洞信息:因計(jì)算機(jī)漏洞所衍生的信息,計(jì)算機(jī)漏洞是指在硬件、軟件、協(xié)議的具體實(shí)現(xiàn)或系統(tǒng)安全策略上存在的缺陷,攻擊者可以利用這些缺陷在未授權(quán)的情況下訪問或者破壞計(jì)算機(jī)系統(tǒng);

邏輯和算法:邏輯運(yùn)算中的一種,又名邏輯與算法,邏輯和算法中的邏輯運(yùn)算符可以為“and”或者“∧”;

遞歸運(yùn)算(recursivealgorithm):一種直接或間接地調(diào)用自身算法的過程,一般可以通過函數(shù)或者子過程來實(shí)現(xiàn),其方法為在函數(shù)或者子過程的內(nèi)部,直接或間接地調(diào)用自己

邏輯或算法:邏輯運(yùn)算中的一種,邏輯或算法中的邏輯運(yùn)算符可以“or”或者“∨”。

實(shí)施例1

根據(jù)本申請(qǐng)實(shí)施例,提供了一種漏洞檢測方法的實(shí)施例,需要說明的是,在附圖 的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

本申請(qǐng)實(shí)施例一所提供的方法實(shí)施例可以在移動(dòng)終端、計(jì)算機(jī)終端或者類似的運(yùn)算裝置中執(zhí)行。以運(yùn)行在計(jì)算機(jī)終端上為例,圖1是本申請(qǐng)實(shí)施例的一種漏洞檢測方法的計(jì)算機(jī)終端的硬件結(jié)構(gòu)框圖。如圖1所示,計(jì)算機(jī)終端10可以包括一個(gè)或多個(gè)(圖中僅示出一個(gè))處理器102(處理器102可以包括但不限于微處理器mcu或可編程邏輯器件fpga等的處理裝置)、用于存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器104、以及用于通信功能的傳輸裝置106。本領(lǐng)域普通技術(shù)人員可以理解,圖1所示的結(jié)構(gòu)僅為示意,其并不對(duì)上述電子裝置的結(jié)構(gòu)造成限定。例如,計(jì)算機(jī)終端10還可包括比圖1中所示更多或者更少的組件,或者具有與圖1所示不同的配置。

存儲(chǔ)器104可用于存儲(chǔ)應(yīng)用軟件的軟件程序以及模塊,如本申請(qǐng)實(shí)施例中的漏洞檢測方法對(duì)應(yīng)的程序指令/模塊,處理器102通過運(yùn)行存儲(chǔ)在存儲(chǔ)器104內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)上述的應(yīng)用程序的漏洞檢測方法。存儲(chǔ)器104可包括高速隨機(jī)存儲(chǔ)器,還可包括非易失性存儲(chǔ)器,如一個(gè)或者多個(gè)磁性存儲(chǔ)裝置、閃存、或者其他非易失性固態(tài)存儲(chǔ)器。在一些實(shí)例中,存儲(chǔ)器104可進(jìn)一步包括相對(duì)于處理器102遠(yuǎn)程設(shè)置的存儲(chǔ)器,這些遠(yuǎn)程存儲(chǔ)器可以通過網(wǎng)絡(luò)連接至計(jì)算機(jī)終端10。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動(dòng)通信網(wǎng)及其組合。

傳輸裝置106用于經(jīng)由一個(gè)網(wǎng)絡(luò)接收或者發(fā)送數(shù)據(jù)。上述的網(wǎng)絡(luò)具體實(shí)例可包括計(jì)算機(jī)終端10的通信供應(yīng)商提供的無線網(wǎng)絡(luò)。在一個(gè)實(shí)例中,傳輸裝置106包括一個(gè)網(wǎng)絡(luò)適配器(networkinterfacecontroller,nic),其可通過基站與其他網(wǎng)絡(luò)設(shè)備相連從而可與互聯(lián)網(wǎng)進(jìn)行通訊。在一個(gè)實(shí)例中,傳輸裝置106可以為射頻(radiofrequency,rf)模塊,其用于通過無線方式與互聯(lián)網(wǎng)進(jìn)行通訊。

在上述運(yùn)行環(huán)境下,本申請(qǐng)?zhí)峁┝巳鐖D2所示的漏洞檢測方法。圖2是根據(jù)本申請(qǐng)實(shí)施例一的漏洞檢測方法的流程示意圖。

如圖2所示,該漏洞檢測方法可以包括如下實(shí)現(xiàn)步驟:

步驟s202,利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句。

本申請(qǐng)上述步驟s202中,反編譯語句是指通過對(duì)檢測程序進(jìn)行反向編譯(又稱逆向編譯)而得到的語句。反編譯是高級(jí)語言源程序經(jīng)過編譯變成可執(zhí)行文件的逆過程。

步驟s204,在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則 獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征。此外,預(yù)先設(shè)置的漏洞檢測條件可以被理解為一種關(guān)注于漏洞本身,而非漏洞掃描器的檢測行為的規(guī)則。本申請(qǐng)將檢測條件從掃描引擎檢測邏輯的強(qiáng)耦合中分離出來,使檢測條件的設(shè)置和定義具有較強(qiáng)的靈活性和可擴(kuò)展性,而檢測條件的靈活性實(shí)質(zhì)上也決定了可檢測的漏洞的復(fù)雜程度。

本申請(qǐng)上述步驟s204中,漏洞信息是指因計(jì)算機(jī)漏洞所衍生的信息,計(jì)算機(jī)漏洞是指在硬件、軟件、協(xié)議的具體實(shí)現(xiàn)或系統(tǒng)安全策略上存在的缺陷,攻擊者可以利用這些缺陷在未授權(quán)的情況下訪問或者破壞計(jì)算機(jī)系統(tǒng)。例如,計(jì)算機(jī)芯片上存在的邏輯錯(cuò)誤、郵件系統(tǒng)中編程錯(cuò)誤、nfs(networkfilesystem,網(wǎng)絡(luò)文件系統(tǒng))協(xié)議中認(rèn)證方式的弱點(diǎn)、甚或是unix(一種計(jì)算機(jī)操作系統(tǒng))系統(tǒng)管理員設(shè)置匿名ftp(filetransferprotocol,文件傳輸協(xié)議)服務(wù)器時(shí)配置不當(dāng)?shù)膯栴},上述舉例都可以被視為計(jì)算機(jī)漏洞。

步驟s206,根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果。

本申請(qǐng)上述步驟s206中,在反編譯語句中進(jìn)行特征查找可以為逐項(xiàng)查找,也可以為其他能夠?qū)崿F(xiàn)精確查找的查找方式,漏洞信息中的漏洞特征旨在描述該漏洞的屬性,例如,該漏洞特征可以為該漏洞的地址、時(shí)間、漏洞類型等。

步驟s208,根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

本申請(qǐng)上述步驟s208中,確定被檢測程序中是否存在程序漏洞的方式可以有多種,依據(jù)漏洞檢測的需求不同,是否存在程序漏洞的界定條件也不盡相同。例如,若存在兩個(gè)漏洞檢測條件,則該兩個(gè)漏洞檢測條件同時(shí)滿足時(shí)可以確定存在程序漏洞,該兩個(gè)漏洞檢測條件滿足其一時(shí)也可以確定存在程序漏洞,確定被檢測程序中是否存在程序漏洞應(yīng)視具體情況而定。

由上可知,本申請(qǐng)上述實(shí)施例一所提供的方案,通過預(yù)先設(shè)置的漏洞檢測條件掃描被檢測程序的反編譯語句,并在匹配到該漏洞檢測條件的起始條件時(shí)獲取該起始條件所屬的程序漏洞的漏洞信息,以及對(duì)該漏洞信息中的漏洞特征進(jìn)行特征查找,達(dá)到了根據(jù)特征查找后所得到的查找結(jié)果確定被檢測程序中是否存在程序漏洞,從而實(shí)現(xiàn)了提高漏洞檢測的準(zhǔn)確率和靈活性、增強(qiáng)可檢測對(duì)象的覆蓋度的技術(shù)效果,進(jìn)而解決了現(xiàn)有技術(shù)中漏洞檢測準(zhǔn)確率較低的技術(shù)問題。

本申請(qǐng)上述實(shí)施例提供的一種可選方案中,圖3是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測方法的流程示意圖,如圖3所示,步驟s206,根據(jù)漏洞信息記錄的漏洞 特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果包括:

步驟s302,獲取漏洞信息中的主匹配條件和/或子匹配條件。

其中,主匹配條件和/或子匹配條件用于記錄程序漏洞的漏洞特征;

本申請(qǐng)上述步驟s302中,主匹配條件和/或子匹配條件之間可以為嵌套關(guān)系,主匹配條件中可以包含子匹配條件,子匹配條件可以為一個(gè)或者多個(gè)。

可選地,本實(shí)施例提供了一段xml(extensiblemarkuplanguage,可擴(kuò)展標(biāo)記語言)格式的代碼,該段代碼如下所示:

其中,上述代碼中的第1132至第1160行定義了一個(gè)漏洞檢測條件,該段代碼中的第1147行至第1152行定義了一些子匹配條件,每個(gè)子匹配條件可以通過vulntypeid(匹配條件id)進(jìn)行關(guān)聯(lián),由上述代碼內(nèi)容可知,主匹配條件的匹配條件id為33,子匹配條件的匹配條件id分別為03301、03302、03303和03304,每個(gè)子匹配條件之間可以通過邏輯運(yùn)算關(guān)系進(jìn)行關(guān)聯(lián),例如,若匹配條件id為03301的子匹配條件和匹配條件id為03302的子匹配條件為邏輯和關(guān)系,則必須同時(shí)滿足上述兩個(gè)子匹配條件;再者,若匹配條件id為03303的子匹配條件和匹配條件id為03304的子匹配條件為邏輯或關(guān)系,則僅需要滿足上述兩個(gè)子匹配條件中的任意一個(gè)子匹配條件即可。

步驟s304,檢測反編譯語句是否符合主匹配條件和/或子匹配條件,以獲取查找結(jié)果。

本申請(qǐng)上述步驟s304中,可以通過檢測反編譯語句是否符合上述代碼中的主匹配條件或子匹配條件,從而獲取到查找結(jié)果。例如,在對(duì)反編譯語句進(jìn)行逐項(xiàng)匹配之后,若確定該反編譯語句符合上述代碼中匹配條件id為03301的子匹配條件和匹配條件id為03302的子匹配條件,則可以獲取到該反編譯語句經(jīng)上述兩個(gè)子匹配條件進(jìn)行某種運(yùn)算或處理之后所得到的查找結(jié)果。

可選地,本實(shí)施例還提供了一段xml(extensiblemarkuplanguage,可擴(kuò)展標(biāo)記語言)格式的代碼,該段代碼如下所示:

其中,上述代碼中的第1163行至第1176行定義了匹配條件id為03301的子匹配條件,其中,該段代碼中的第1167行定義了進(jìn)行漏洞檢測所需要的api(applicationprogramminginterface,應(yīng)用程序編程接口)函數(shù),該段代碼中的第1168行定義了該子匹配條件的匹配條件id。除過第1167行和第1168行,上述代碼中的其他各行定義了一些確認(rèn)漏洞所需要的附加條件,在此不做贅述。

可選地,檢測反編譯語句是否符合主匹配條件和/或子匹配條件包括:

步驟s12,在檢測到反編譯語句中存在子匹配條件的起始條件時(shí),檢測反編譯語句是否符合子匹配條件,得到第一查找子結(jié)果。

步驟s14,在對(duì)子匹配條件檢測完成之后,檢測反編譯語句是否符合主匹配條件,得到第二查找子結(jié)果,其中,查找結(jié)果包括第一查找子結(jié)果和第二查找子結(jié)果。

需要說明的是,步驟s12和步驟s14在執(zhí)行過程中可以不具有先后順序或主次關(guān)系。

本申請(qǐng)上述步驟s12和步驟s14中,應(yīng)先檢測反編譯語句是否符合子匹配條件,再檢測該反編譯語句是否符合主匹配條件。例如,對(duì)該反編譯語句進(jìn)行逐條分析,若確定該反編譯語句中存在子匹配條件的起始條件,則可以依據(jù)漏洞查找算法查找該子匹配條件,若該子匹配條件為一個(gè)遞歸條件,則可以將主匹配條件中的判斷條件拷貝至該子匹配條件,若該子匹配條件不是遞歸條件,則可以在子匹配條件所定義的內(nèi)容中進(jìn)行查找,并得到與所述漏洞特征匹配的查找結(jié)果。

本申請(qǐng)上述實(shí)施例提供的一種可選方案中,圖4是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測方法的流程示意圖,如圖4所示,子匹配條件為多個(gè),步驟s12,檢測反編譯語句是否符合子匹配條件,得到第一查找子結(jié)果包括:

步驟s402,檢測反編譯語句是否符合各個(gè)子匹配條件,得到初始查找子結(jié)果。

本申請(qǐng)上述步驟s402中,初始查找結(jié)果可以為各個(gè)子匹配條件中的一個(gè)或若干個(gè)子匹配條件,若該反編譯語句不符合各個(gè)子匹配條件,則說明預(yù)先設(shè)置的漏洞檢測條件并未覆蓋該反編譯語句所對(duì)應(yīng)的被檢測程序。若需對(duì)該檢測程序進(jìn)行漏洞檢測,則需要擴(kuò)展預(yù)先設(shè)置的漏洞檢測條件。

步驟s404,獲取各個(gè)子匹配條件之間的邏輯運(yùn)算關(guān)系。

本申請(qǐng)上述步驟s404中,多個(gè)子匹配條件之間的邏輯運(yùn)算關(guān)系可以為邏輯和關(guān)系、邏輯或關(guān)系、邏輯非關(guān)系或者遞歸關(guān)系。

步驟s406,按照邏輯運(yùn)算關(guān)系,將各個(gè)子匹配條件的初始查找子結(jié)果進(jìn)行邏輯運(yùn)算,得到第一查找子結(jié)果。

本申請(qǐng)上述步驟s406中,第一查找子結(jié)果可以為經(jīng)上述邏輯運(yùn)算后所得到的結(jié)果,該結(jié)果可以用“true”或“false”來進(jìn)行標(biāo)示,也可以用其他方式進(jìn)行表示。例如,上述反編譯語句符合子匹配條件“條件a”和子匹配條件“條件b”,并且獲取到子匹 配條件“條件a”和子匹配條件“條件b”的邏輯運(yùn)算關(guān)系為邏輯和關(guān)系,因此,該反編譯語句需要同時(shí)滿足該子匹配條件“條件a”和子匹配條件“條件b”,才能確定該反編譯語句所對(duì)應(yīng)的被檢測程序存在漏洞。

可選地,邏輯運(yùn)算關(guān)系包括下述至少之一:邏輯和運(yùn)算、遞歸運(yùn)算以及邏輯或運(yùn)算。

具體地,邏輯和算法是邏輯運(yùn)算中的一種,又名邏輯與算法,邏輯和算法中的邏輯運(yùn)算符可以為“and”或者“∧”。遞歸運(yùn)算(recursivealgorithm)是一種直接或間接地調(diào)用自身算法的過程,一般可以通過函數(shù)或者子過程來實(shí)現(xiàn),其方法為在函數(shù)或者子過程的內(nèi)部,直接或間接地調(diào)用自己。邏輯或算法也是邏輯運(yùn)算中的一種,邏輯或算法中的邏輯運(yùn)算符可以“or”或者“∨”。此外,除上述邏輯運(yùn)算關(guān)系,還可以包括邏輯非運(yùn)算,邏輯非運(yùn)算中的邏輯運(yùn)算符可以為“not”或者“!”。

本申請(qǐng)上述實(shí)施例提供的一種可選方案中,圖5是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測方法的流程示意圖,如圖5所示的實(shí)施例中可以包括步驟s202至步驟s208,該實(shí)施例中的子匹配條件和主匹配條件均具有匹配條件id,在執(zhí)行步驟s208,即根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞之后,方法還包括:

步驟s502,在確定被檢測程序中存在程序漏洞的情況下,獲取被檢測程序中命中的程序漏洞的漏洞特征。

步驟s504,輸出命中的漏洞特征所對(duì)應(yīng)的匹配條件id。

本申請(qǐng)上述步驟s502至步驟s504中,獲取被檢測程序中命中的程序漏洞的漏洞特征,并將輸出命中的漏洞特征所對(duì)應(yīng)的匹配條件id,可以實(shí)現(xiàn)漏洞的精準(zhǔn)檢測和描述。任意一個(gè)程序漏洞都可能包含多個(gè)漏洞特征,輸出多個(gè)漏洞特征所對(duì)應(yīng)的匹配條件id,可以對(duì)多發(fā)漏洞進(jìn)行統(tǒng)計(jì)和二次處理,也可以基于此優(yōu)化相關(guān)匹配條件,從而進(jìn)一步增強(qiáng)漏洞檢測的準(zhǔn)確性。

本申請(qǐng)上述實(shí)施例提供的一種可選方案中,圖6是根據(jù)本申請(qǐng)實(shí)施例的另一種可選的漏洞檢測方法的流程示意圖,如圖6所示,在執(zhí)行步驟s202,即在利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句之前,方法還包括:

步驟s602,獲取保存有預(yù)先設(shè)置的漏洞檢測條件的配置文件。

步驟s604,通過漏洞掃描程序解析配置文件,并加載預(yù)先設(shè)置的漏洞檢測條件。

本申請(qǐng)上述步驟s604至步驟s604中,配置文件可以被理解為該漏洞檢測條件的載體,漏洞檢測條件需要寫入該配置文件,才能被漏洞掃描程序進(jìn)行解析和加載。該 配置文件可以進(jìn)行讀寫操作,從而在面對(duì)較為復(fù)雜的待檢測程序時(shí),可以進(jìn)行漏洞檢測條件的更改或重新定義。該配置文件也可以為只讀文件,從而防止攻擊者破解或攻擊。

可選地,本實(shí)施例又提供了一段xml(extensiblemarkuplanguage,可擴(kuò)展標(biāo)記語言)格式的代碼,用以作為對(duì)本申請(qǐng)上述實(shí)施例的補(bǔ)充,該段代碼旨在避免因漏洞而引發(fā)的安全風(fēng)險(xiǎn),具體如下所示:

1://covertintentschemeurltointentobject

2:intentintent=intent.parseuri(uri);

3://forbidlaunchingactivitieswithoutbrowsablecategory

4:intent.addcategory("android.intent.category.browsable");

5://forbidexplicitcall

6:intent.setcomponent(null);

7://forbidintentwithselectorintent

8:intent.setselector(null);

9://starttheactivitybytheintent

10:context.startactivityifneeded(intent,-1);

其中,該段代碼中第2行的“intent”需要設(shè)置3個(gè)屬性(具體見上述代碼中的第4行、第6行和第8行)才能夠避免因漏洞而引發(fā)的安全風(fēng)險(xiǎn),其中,每個(gè)屬性又具有自己的查找規(guī)則。例如,第4行“intent”在調(diào)用“addcatetory”時(shí)必須以“android.intent.category.browsable”作為傳入?yún)?shù),第6行和第8行調(diào)用相關(guān)函數(shù)時(shí)需要傳入“null”參數(shù)。

具體地,上述代碼中的主匹配條件和/或子匹配條件如下所示:

主匹配條件:查找待檢測程序中是否調(diào)用“intent.parseuri”,并跟蹤函數(shù)的返回值(具體見上述代碼中第2行中的“intent”);

子匹配條件一:查找主匹配條件中跟蹤的“intent”,是否調(diào)用了“addcatetory”函數(shù)并以“android.intent.category.browsable”作為傳入?yún)?shù);

子匹配條件二:查找主匹配條件中跟蹤的“intent”,是否調(diào)用了“setcomponent”函數(shù)并以“null”作為傳入?yún)?shù);

子匹配條件三:查找主匹配條件中跟蹤的“intent”,是否調(diào)用了“setselector”函數(shù)并以“null”作為傳入?yún)?shù)

子匹配條件四:查找主匹配條件中跟蹤的“intent”,是否被“context”類的“startactivityifneeded”函數(shù)作為第一個(gè)調(diào)用參數(shù)。

可選地,上述四個(gè)子匹配條件的屬性均為“add”操作(邏輯和運(yùn)算),即只有當(dāng)上述四個(gè)子匹配條件都被反編譯語句所匹配時(shí),主匹配條件才確認(rèn)存在漏洞。

需要說明的是,對(duì)于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請(qǐng)并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本申請(qǐng),某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作和模塊并不一定是本申請(qǐng)所必須的。

通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例所述的方法。

實(shí)施例2

根據(jù)本申請(qǐng)實(shí)施例,還提供了一種用于實(shí)施上述漏洞檢測方法的漏洞檢測裝置,如圖7所示,該裝置可以包括:掃描單元701、第一獲取單元703、查找單元705和確定單元707。

其中,掃描單元701,用于利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;第一獲取單元703,用于在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;查找單元705,用于根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果;確定單元707,用于根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

此處需要說明的是,上述掃描單元701、第一獲取單元703、查找單元705、確定單元707對(duì)應(yīng)于實(shí)施例一中的步驟s202至步驟s208,四個(gè)單元與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述 單元作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

由上可知,本申請(qǐng)上述實(shí)施例二所提供的方案,通過預(yù)先設(shè)置的漏洞檢測條件掃描被檢測程序的反編譯語句,并在匹配到該漏洞檢測條件的起始條件時(shí)獲取該起始條件所屬的程序漏洞的漏洞信息,以及對(duì)該漏洞信息中的漏洞特征進(jìn)行特征查找,達(dá)到了根據(jù)特征查找后所得到的查找結(jié)果確定被檢測程序中是否存在程序漏洞,從而實(shí)現(xiàn)了提高漏洞檢測的準(zhǔn)確率和靈活性、增強(qiáng)可檢測對(duì)象的覆蓋度的技術(shù)效果,進(jìn)而解決了現(xiàn)有技術(shù)中漏洞檢測準(zhǔn)確率較低的技術(shù)問題。

可選地,如圖8所示,查找單元705包括:獲取子單元801和檢測子單元803。

其中,獲取子單元801,用于獲取漏洞信息中的主匹配條件和/或子匹配條件,其中,主匹配條件和/或子匹配條件用于記錄程序漏洞的漏洞特征;檢測子單元803,用于檢測反編譯語句是否符合主匹配條件和/或子匹配條件,以獲取查找結(jié)果。

此處需要說明的是,上述獲取子單元801和檢測子單元803對(duì)應(yīng)于實(shí)施例一中的步驟s302至步驟s304,兩個(gè)子單元與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述子單元作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

可選地,如圖9所示,檢測子單元803可以包括:第一檢測模塊901和第二檢測模塊903。

第一檢測模塊901,用于在檢測到反編譯語句中存在子匹配條件的起始條件時(shí),檢測反編譯語句是否符合子匹配條件,得到第一查找子結(jié)果;第二檢測模塊903,用于在對(duì)子匹配條件檢測完成之后,檢測反編譯語句是否符合主匹配條件,得到第二查找子結(jié)果,其中,查找結(jié)果包括第一查找子結(jié)果和第二查找子結(jié)果。

此處需要說明的是,上述第一檢測模塊901和第二檢測模塊903對(duì)應(yīng)于實(shí)施例一中的步驟s12至步驟s14,兩個(gè)模塊與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

可選地,子匹配條件為多個(gè),如圖10所示,第一檢測模塊901可以包括:檢測子模塊1001、獲取子模塊1003和處理子模塊1005。

其中,檢測子模塊1001,用于檢測反編譯語句是否符合各個(gè)子匹配條件,得到初始查找子結(jié)果;獲取子模塊1003,用于獲取各個(gè)子匹配條件之間的邏輯運(yùn)算關(guān)系;處理子模塊1005,用于按照邏輯運(yùn)算關(guān)系,將各個(gè)子匹配條件的初始查找子結(jié)果進(jìn)行邏 輯運(yùn)算,得到第一查找子結(jié)果。

此處需要說明的是,上述檢測子模塊1001、獲取子模塊1003和處理子模塊1005對(duì)應(yīng)于實(shí)施例一中的步驟s402至步驟s406,三個(gè)子模塊與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述子模塊作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

可選地,邏輯運(yùn)算關(guān)系包括下述至少之一:邏輯和運(yùn)算、遞歸運(yùn)算以及邏輯或運(yùn)算。

可選地,子匹配條件和主匹配條件均具有匹配條件id,每個(gè)匹配條件的id用于唯一標(biāo)識(shí)該匹配條件,如圖11所示,該裝置還可以包括:第二獲取單元1101和輸出單元1103。

其中,第二獲取單元1101,用于在確定被檢測程序中存在程序漏洞的情況下,獲取被檢測程序中命中的程序漏洞的漏洞特征;輸出單元1103,用于輸出命中的漏洞特征所對(duì)應(yīng)的匹配條件id。可選地,還可以從存儲(chǔ)器中讀取匹配條件id對(duì)應(yīng)的漏洞修補(bǔ)信息。

此處需要說明的是,上述第二獲取單元1101和輸出單元1103對(duì)應(yīng)于實(shí)施例一中的步驟s502至步驟s504,兩個(gè)單元與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述單元作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

可選地,如圖12所示,該裝置還可以包括:第三獲取單元1201和處理單元1203。

其中,第三獲取單元,用于獲取保存有預(yù)先設(shè)置的漏洞檢測條件的配置文件;處理單元,用于通過漏洞掃描程序解析配置文件,并加載預(yù)先設(shè)置的漏洞檢測條件。

此處需要說明的是,上述第三獲取單元1201和處理單元1203對(duì)應(yīng)于實(shí)施例一中的步驟s602至步驟s604,兩個(gè)單元與對(duì)應(yīng)的步驟所實(shí)現(xiàn)的示例和應(yīng)用場景相同,但不限于上述實(shí)施例一所公開的內(nèi)容。需要說明的是,上述單元作為裝置的一部分可以運(yùn)行在實(shí)施例一提供的計(jì)算機(jī)終端10中。

實(shí)施例3

本申請(qǐng)的實(shí)施例可以提供一種計(jì)算機(jī)終端,該計(jì)算機(jī)終端可以是計(jì)算機(jī)終端群中的任意一個(gè)計(jì)算機(jī)終端設(shè)備。可選地,在本實(shí)施例中,上述計(jì)算機(jī)終端也可以替換為移動(dòng)終端等終端設(shè)備。

可選地,在本實(shí)施例中,上述計(jì)算機(jī)終端可以位于計(jì)算機(jī)網(wǎng)絡(luò)的多個(gè)網(wǎng)絡(luò)設(shè)備中的至少一個(gè)網(wǎng)絡(luò)設(shè)備。

在本實(shí)施例中,上述計(jì)算機(jī)終端可以執(zhí)行應(yīng)用程序的漏洞檢測方法中以下步驟的程序代碼:利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果;根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

由上可知,本申請(qǐng)上述實(shí)施例三所提供的方案,通過預(yù)先設(shè)置的漏洞檢測條件掃描被檢測程序的反編譯語句,并在匹配到該漏洞檢測條件的起始條件時(shí)獲取該起始條件所屬的程序漏洞的漏洞信息,以及對(duì)該漏洞信息中的漏洞特征進(jìn)行特征查找,達(dá)到了根據(jù)特征查找后所得到的查找結(jié)果確定被檢測程序中是否存在程序漏洞,從而實(shí)現(xiàn)了提高漏洞檢測的準(zhǔn)確率和靈活性、增強(qiáng)可檢測對(duì)象的覆蓋度的技術(shù)效果,進(jìn)而解決了現(xiàn)有技術(shù)中漏洞檢測準(zhǔn)確率較低的技術(shù)問題。

可選地,圖13是根據(jù)本申請(qǐng)實(shí)施例的一種計(jì)算機(jī)終端的結(jié)構(gòu)框圖。如圖13所示,該計(jì)算機(jī)終端a可以包括:一個(gè)或多個(gè)(圖中僅示出一個(gè))處理器1301、存儲(chǔ)器1303、以及傳輸裝置1305。

其中,存儲(chǔ)器1303可用于存儲(chǔ)軟件程序以及模塊,如本申請(qǐng)實(shí)施例中的漏洞檢測方法和裝置對(duì)應(yīng)的程序指令/模塊,處理器1301通過運(yùn)行存儲(chǔ)在存儲(chǔ)器1303內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實(shí)現(xiàn)上述的漏洞檢測方法。存儲(chǔ)器1303可包括高速隨機(jī)存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,如一個(gè)或者多個(gè)磁性存儲(chǔ)裝置、閃存、或者其他非易失性固態(tài)存儲(chǔ)器。在一些實(shí)例中,存儲(chǔ)器1303可進(jìn)一步包括相對(duì)于處理器遠(yuǎn)程設(shè)置的存儲(chǔ)器,這些遠(yuǎn)程存儲(chǔ)器可以通過網(wǎng)絡(luò)連接至終端a。上述網(wǎng)絡(luò)的實(shí)例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動(dòng)通信網(wǎng)及其組合。

上述的傳輸裝置1305用于經(jīng)由一個(gè)網(wǎng)絡(luò)接收或者發(fā)送數(shù)據(jù)。上述的網(wǎng)絡(luò)具體實(shí)例可包括有線網(wǎng)絡(luò)及無線網(wǎng)絡(luò)。在一個(gè)實(shí)例中,傳輸裝置1305包括一個(gè)網(wǎng)絡(luò)適配器(networkinterfacecontroller,nic),其可通過網(wǎng)線與其他網(wǎng)絡(luò)設(shè)備與路由器相連從而可與互聯(lián)網(wǎng)或局域網(wǎng)進(jìn)行通訊。在一個(gè)實(shí)例中,傳輸裝置1305為射頻(radiofrequency,rf)模塊,其用于通過無線方式與互聯(lián)網(wǎng)進(jìn)行通訊。

其中,具體地,存儲(chǔ)器1303用于存儲(chǔ)預(yù)設(shè)動(dòng)作條件和預(yù)設(shè)權(quán)限用戶的信息、以及應(yīng)用程序。

處理器1301可以通過傳輸裝置1305調(diào)用存儲(chǔ)器1303存儲(chǔ)的信息及應(yīng)用程序,以執(zhí)行下述步驟:利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果;根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

可選的,上述處理器1301還可以執(zhí)行如下步驟的程序代碼:獲取漏洞信息中的主匹配條件和/或子匹配條件,其中,主匹配條件和/或子匹配條件用于記錄程序漏洞的漏洞特征;檢測反編譯語句是否符合主匹配條件和/或子匹配條件,以獲取查找結(jié)果。

可選的,上述處理器1301還可以執(zhí)行如下步驟的程序代碼:在檢測到反編譯語句中存在子匹配條件的起始條件時(shí),檢測反編譯語句是否符合子匹配條件,得到第一查找子結(jié)果;在對(duì)子匹配條件檢測完成之后,檢測反編譯語句是否符合主匹配條件,得到第二查找子結(jié)果,其中,查找結(jié)果包括第一查找子結(jié)果和第二查找子結(jié)果。

可選的,上述處理器1301還可以執(zhí)行如下步驟的程序代碼:檢測反編譯語句是否符合各個(gè)子匹配條件,得到初始查找子結(jié)果;獲取各個(gè)子匹配條件之間的邏輯運(yùn)算關(guān)系;按照邏輯運(yùn)算關(guān)系,將各個(gè)子匹配條件的初始查找子結(jié)果進(jìn)行邏輯運(yùn)算,得到第一查找子結(jié)果。

可選的,上述處理器1301還可以執(zhí)行如下步驟的程序代碼:在確定被檢測程序中存在程序漏洞的情況下,獲取被檢測程序中命中的程序漏洞的漏洞特征;輸出命中的漏洞特征所對(duì)應(yīng)的匹配條件id。

可選的,上述處理器1301還可以執(zhí)行如下步驟的程序代碼:獲取保存有預(yù)先設(shè)置的漏洞檢測條件的配置文件;通過漏洞掃描程序解析配置文件,并加載預(yù)先設(shè)置的漏洞檢測條件。

本領(lǐng)域普通技術(shù)人員可以理解,圖13所示的結(jié)構(gòu)僅為示意,計(jì)算機(jī)終端也可以是智能手機(jī)(如android手機(jī)、ios手機(jī)等)、平板電腦、掌聲電腦以及移動(dòng)互聯(lián)網(wǎng)設(shè)備(mobileinternetdevices,mid)、pad等終端設(shè)備。圖13其并不對(duì)上述電子裝置的結(jié)構(gòu)造成限定。例如,計(jì)算機(jī)終端10還可包括比圖13中所示更多或者更少的組件(如網(wǎng)絡(luò)接口、顯示裝置等),或者具有與圖13所示不同的配置。

本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設(shè)備相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:閃存盤、只讀存儲(chǔ)器(read-onlymemory,rom)、隨機(jī)存 取器(randomaccessmemory,ram)、磁盤或光盤等。

實(shí)施例4

本申請(qǐng)的實(shí)施例還提供了一種存儲(chǔ)介質(zhì)??蛇x地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以用于保存上述實(shí)施例一所提供的漏洞檢測方法所執(zhí)行的程序代碼。

可選地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以位于計(jì)算機(jī)網(wǎng)絡(luò)中計(jì)算機(jī)終端群中的任意一個(gè)計(jì)算機(jī)終端中,或者位于移動(dòng)終端群中的任意一個(gè)移動(dòng)終端中。

可選地,在本實(shí)施例中,存儲(chǔ)介質(zhì)被設(shè)置為存儲(chǔ)用于執(zhí)行以下步驟的程序代碼:利用預(yù)先設(shè)置的漏洞檢測條件,掃描被檢測程序的反編譯語句;在掃描反編譯語句的過程中,若匹配到漏洞檢測條件的起始條件,則獲取起始條件所屬的程序漏洞的漏洞信息,其中,漏洞信息中記錄有程序漏洞的漏洞特征;根據(jù)漏洞信息記錄的漏洞特征,在反編譯語句中進(jìn)行特征查找,得到與漏洞特征匹配的查找結(jié)果;根據(jù)查找結(jié)果確定被檢測程序中是否存在程序漏洞。

此處需要說明的是,上述計(jì)算機(jī)終端群中的任意一個(gè)可以與網(wǎng)站服務(wù)器和掃描器建立通信關(guān)系,掃描器可以掃描計(jì)算機(jī)終端上php執(zhí)行的web應(yīng)用程序的值命令。

上述本申請(qǐng)實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

在本申請(qǐng)的上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。

在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的技術(shù)內(nèi)容,可通過其它的方式實(shí)現(xiàn)。其中,以上所描述的裝置實(shí)施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。

另外,在本申請(qǐng)各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可為個(gè)人計(jì)算機(jī)、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:u盤、只讀存儲(chǔ)器(rom,read-onlymemory)、隨機(jī)存取存儲(chǔ)器(ram,randomaccessmemory)、移動(dòng)硬盤、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。

以上所述僅是本申請(qǐng)的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請(qǐng)?jiān)淼那疤嵯?,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本申請(qǐng)的保護(hù)范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
六安市| 伊金霍洛旗| 宣武区| 台前县| 建瓯市| 青川县| 平原县| 五指山市| 安泽县| 铜陵市| 若尔盖县| 揭阳市| 垫江县| 定安县| 永仁县| 天柱县| 荔波县| 外汇| 循化| 兴仁县| 剑阁县| 松阳县| 河西区| 名山县| 忻州市| 汕头市| 正镶白旗| 肇州县| 加查县| 黑水县| 台北市| 玉田县| 任丘市| 青田县| 五莲县| 鹤壁市| 白山市| 古浪县| 安丘市| 香港| 辉县市|