本發(fā)明涉及電子技術(shù),尤其涉及一種防止病毒誤殺的方法及裝置。
背景技術(shù):
掃描病毒的過程是用于檢測(cè)終端的運(yùn)行環(huán)境是否安全的重要過程,相關(guān)技術(shù)中一般包括以下兩種:1)服務(wù)器下發(fā)重要的軟件保護(hù)名單到終端本地,以對(duì)查殺結(jié)果進(jìn)行保護(hù)。2)在云查系統(tǒng)針對(duì)知名或者合作廠商軟件提供白名單。這種兩種方法主要問題是,下發(fā)的名單或者提供的白名單上的軟件個(gè)數(shù)有限,很多時(shí)候并不能起到保護(hù)誤殺的效果,對(duì)快速發(fā)展的軟件市場(chǎng)缺乏相應(yīng)的基于大數(shù)據(jù)的榜單追蹤,保護(hù)效果非常局限;因?yàn)槊麊卧O(shè)計(jì)簡(jiǎn)單,通常不能處理萬能鑰匙(Master key)病毒,也不包含基于大數(shù)據(jù)的用戶裝機(jī)量等名單,容易引起影響廣泛的誤殺。而且系統(tǒng)不獨(dú)立與云查系統(tǒng),當(dāng)云查系統(tǒng)自身出問題的時(shí)候,誤殺再所難免。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例為解決現(xiàn)有技術(shù)中存在的至少一個(gè)問題而提供一種防止病毒誤殺的方法及裝置,能夠解決原有病毒查殺系統(tǒng)容易產(chǎn)生誤殺誤判的現(xiàn)象。
本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
第一方面,本發(fā)明實(shí)施例提供一種種防止病毒誤殺的方法,所述方法包括:
確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;
根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的所述第一病毒的標(biāo)識(shí);
根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件,得到第二判斷結(jié)果;
如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果,所述第一掃描結(jié)果用于表明所述第一軟件不是病毒。
第二方面,本發(fā)明實(shí)施例提供一種防止病毒誤殺的裝置,所述裝置包括第一確定單元、第一判斷單元、第二確定單元、第二判斷單元、第三判斷單元和第一輸出單元,其中:
所述第一確定單元,用于確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;
所述第一判斷單元,用于根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
所述第二確定單元,用于如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的第一病毒的標(biāo)識(shí);
所述第二判斷單元,用于根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
所述第三判斷單元,用于如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件,得到第二判斷結(jié)果;
所述第一輸出單元,用于如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果,所述第一掃描結(jié)果用于表明所述第一軟件不是病毒。
本發(fā)明實(shí)施例提供一種防止病毒誤殺的方法及裝置,其中,確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的所述第一病毒的標(biāo)識(shí);根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件;如果所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件;如果所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果;如此,能夠解決原有病毒查殺系統(tǒng)容易產(chǎn)生誤殺誤判的現(xiàn)象。
附圖說明
圖1為本發(fā)明實(shí)施例防止病毒誤殺的方法的實(shí)現(xiàn)流程示意圖一;
圖2為本發(fā)明實(shí)施例的場(chǎng)景示意圖一;
圖3為本發(fā)明實(shí)施例的場(chǎng)景示意圖二;
圖4為本發(fā)明實(shí)施例防止病毒誤殺的方法的實(shí)現(xiàn)流程示意圖二;
圖5為本發(fā)明實(shí)施例防止病毒誤殺的裝置的組成結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了更方便地理解本發(fā)明以下各實(shí)施例提供的技術(shù)方案,下面先介紹本發(fā)明的原理。
掃描病毒的過程一般分為本地查殺和云查殺或者分為本地掃描或云掃描。其中,本地查殺首先需要解析安裝包文件的詳細(xì)信息以提取軟件特征,然后通過特征匹配以判斷軟件是否為病毒。云查殺的時(shí)候則將終端上報(bào)的安裝包的詳細(xì)信息與云端的大數(shù)據(jù)病毒樣本庫進(jìn)行匹配,匹配的最終結(jié)果返回給終端。上述的本地查殺和云查殺都可能產(chǎn)生誤殺,例如本地查殺的特征匹配可能導(dǎo)致某些安全的軟件甚至于知名軟件誤中某個(gè)特征而被認(rèn)為是病毒,云查的時(shí)候大數(shù)據(jù)樣本庫也可能有誤判的情況,如果誤殺發(fā)生在一些知名軟件、安裝量比較大的軟件、合作廠商的軟件等,這樣會(huì)造成運(yùn)營事故,從而損害用戶體驗(yàn)。
誤查殺的主要原因在于,病毒庫中的病毒樣本或病毒特征實(shí)際上是一段代碼,在將一段代碼作為病毒特征時(shí),會(huì)先將該段代碼先進(jìn)行掃描,即會(huì)先將該段代碼與正常的安全軟件進(jìn)行匹配,如果病毒的該段代碼與某一款安全軟件的代碼匹配時(shí),那么該段代碼就不能作為病毒的特征,那么需要重新確定一段代碼。如果病毒的該段代碼沒有與任一款安全軟件的代碼匹配時(shí),則該段代碼可以作為該病毒的特征。病毒特征的確定一般與當(dāng)時(shí)安全的軟件庫的容量有關(guān),如果當(dāng)前出現(xiàn)了新的軟件,那么病毒特征可能與新軟件的代碼匹配,那么利用病毒庫中的病毒特征對(duì)該新軟件進(jìn)行查殺時(shí),就會(huì)將該新軟件列為病毒,實(shí)際上新軟件極有可能并不是病毒,而是因?yàn)椴《咎卣髟O(shè)置的不合理導(dǎo)致的。
本發(fā)明針對(duì)病毒查殺過程容易產(chǎn)生誤殺的問題,實(shí)現(xiàn)了一套獨(dú)立于病毒查殺體系的云端智能名單,對(duì)查殺結(jié)果進(jìn)行最終把關(guān),從而最大程度減少誤殺。云端或本地的智能名單涵蓋了知名廠商的證書(證書過濾的時(shí)候會(huì)排除掉master key證書偽裝的病毒),知名軟件的包名、證書、版本、安裝包大小,以及基于大數(shù)據(jù)的用戶軟件裝機(jī)量榜單,從而完全杜絕了較大規(guī)模誤殺的可能性。同時(shí)對(duì)于智能名單檢測(cè)出來的誤殺對(duì)運(yùn)營人員進(jìn)行告警,并把樣本重新轉(zhuǎn)入樣本自動(dòng)判別流程,如果仍然不能判定則轉(zhuǎn)人工分析。
下面介紹一下本發(fā)明實(shí)施例所涉及的名詞:
終端管家(例如手機(jī)管家)或病毒掃描軟件:是一款安全管理軟件,集殺毒、安全防護(hù)、體檢加速、健康優(yōu)化以及軟件管理于一體,為用戶提供360°的安全防護(hù)的安全類終端軟件。
病毒掃描:是終端管家一個(gè)功能模塊,主要用于發(fā)現(xiàn)終端上的惡意軟件并提醒用戶從而使用戶免受其害。掃描病毒的過程一般分為本地查殺和云查殺。本地查殺,判斷此安裝包文件是否為病毒軟件。云查殺是根據(jù)終端上報(bào)的軟件信息,在云端的大數(shù)據(jù)樣本庫中匹配該安裝包文件是否為病毒軟件。其中,所述本地查殺,即解析安裝包文件的詳細(xì)信息以提取軟件特征,然后將軟件特征與病毒庫中的特征進(jìn)行匹配,如果匹配,則判斷此安裝包文件為病毒;如果不匹配,則判斷此安裝包文件不為病毒。
Master key病毒:安卓(Android)系統(tǒng)的一個(gè)漏洞導(dǎo)致Android系統(tǒng)的一個(gè)病毒可以偽裝使用另一個(gè)軟件包的證書簽名,從而達(dá)到騙過系統(tǒng)證書校驗(yàn)和常規(guī)基于證書的病毒檢查。
安裝包文件,對(duì)于安卓操作系統(tǒng)而言,安裝包文件即為(APK,Android Package)安卓安裝包;
軟件信息或安裝包信息包括軟件的包名、證書、文件大小、軟件所包含的資源文件、代碼中包含的常量字符串等。
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)一步詳細(xì)闡述。
為了解決背景技術(shù)中存在的問題,本發(fā)明實(shí)施例提供一種防止病毒誤殺的方法,該方法應(yīng)用于計(jì)算設(shè)備,應(yīng)用于計(jì)算設(shè)備,該方法所實(shí)現(xiàn)的功能可以通過計(jì)算設(shè)備中的處理器調(diào)用程序代碼來實(shí)現(xiàn),當(dāng)然程序代碼可以保存在計(jì)算機(jī)存儲(chǔ)介質(zhì)中,可見,該計(jì)算設(shè)備至少包括處理器和存儲(chǔ)介質(zhì)。
圖1為本發(fā)明實(shí)施例防止病毒誤殺的方法的實(shí)現(xiàn)流程示意圖一,如圖1所示,該方法包括:
步驟S101,確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;
這里,本發(fā)明實(shí)施例中的計(jì)算設(shè)備可以采用終端或服務(wù)器來實(shí)現(xiàn),終端或服務(wù)器都可以采用具有信息處理能力的電子設(shè)備來實(shí)現(xiàn),在實(shí)現(xiàn)的過程中,例如電子設(shè)備可以包括手機(jī)、平板電腦、臺(tái)式機(jī)、個(gè)人數(shù)字助理、導(dǎo)航儀、數(shù)字電話、視頻電話、電視機(jī)、服務(wù)器集群等。
這里,第一軟件可以是指待掃描的軟件或待查殺的軟件。
這里,步驟S101在終端或服務(wù)器上實(shí)現(xiàn)時(shí),所述確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征,包括:步驟S1011,終端或服務(wù)器確定待分析的第一軟件的標(biāo)識(shí);其中軟件的標(biāo)識(shí)可以采用軟件的名稱、包名、編號(hào)等來實(shí)現(xiàn)。步驟S1012,終端或服務(wù)器根據(jù)所述第一軟件的標(biāo)識(shí)確定所述第一軟件的安裝包文件,解析所述第一軟件的安裝包文件,得到第一軟件的軟件信息;其中,由軟件的標(biāo)識(shí)確定安裝包文件可以是根據(jù)軟件的標(biāo)識(shí)從軟件庫中獲取安裝包文件或者從網(wǎng)絡(luò)上下載安裝包文件,軟件庫可以是本地的或遠(yuǎn)程的。步驟S1013,終端或服務(wù)器根據(jù)所述第一軟件的軟件信息從安裝包文件中提取第一軟件的軟件特征。
這里,步驟S101在服務(wù)器上實(shí)現(xiàn)時(shí),所述確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征,包括:服務(wù)器接收終端發(fā)送的云查殺請(qǐng)求,所述云查殺請(qǐng)求中攜帶有第一軟件的軟件信息或第一軟件的第一軟件特征;服務(wù)器解析所述云查殺請(qǐng)求,得到第一軟件的軟件信息或第一軟件的第一軟件特征。
步驟S102,根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
這里,判斷是否存在有與所述第一軟件特征進(jìn)行匹配的預(yù)設(shè)病毒庫中的特征,如果存在有與所述軟件特征進(jìn)行匹配的預(yù)設(shè)病毒庫中的特征,確定與所述第一軟件特征匹配的所述第一病毒的標(biāo)識(shí)。
步驟S103,如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的所述第一病毒的標(biāo)識(shí);
步驟S104,根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
這里,所述第一條件包括用于偽裝另一個(gè)軟件包的證書簽名的病毒的標(biāo)識(shí),對(duì)于不同的操作信息,第一條件不同,例如對(duì)于安卓操作系統(tǒng)而言,第一條件包括Master key病毒的標(biāo)識(shí)。
步驟S105,如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件,得到第二判斷結(jié)果;
這里,所述第二條件包括白名單。該白名單可以包括上述的智能名單,例如可以涵蓋知名廠商的證書(證書過濾的時(shí)候會(huì)排除掉master key證書偽裝的病毒),知名軟件的包名、證書、版本、安裝包大小,以及基于大數(shù)據(jù)的用戶軟件裝機(jī)量榜單,從而完全杜絕了較大規(guī)模誤殺的可能性。
這里,在本發(fā)明的其他實(shí)施例中,所述方法還包括:步驟S107,如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,輸出第二掃描結(jié)果,所述第二掃描結(jié)果用于表明所述第一軟件是病毒。該步驟可以在終端或服務(wù)器上實(shí)現(xiàn),當(dāng)在服務(wù)器上實(shí)現(xiàn)時(shí),輸出第二掃描結(jié)果可以包括服務(wù)器將第二掃描結(jié)果發(fā)送給終端。
步驟S106,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果,所述第一掃描結(jié)果用于表明所述第一軟件不是病毒。
這里,上述的步驟S103至步驟S106可以在終端來實(shí)現(xiàn),當(dāng)然也可以在服務(wù)器上來實(shí)現(xiàn),當(dāng)在服務(wù)器上實(shí)現(xiàn)時(shí),步驟S106中的輸出第一掃描結(jié)果可以包括:將第一掃描結(jié)果發(fā)送給終端,或者,將第一掃描結(jié)果攜帶于云查殺響應(yīng)中,然后將云查殺響應(yīng)發(fā)送給終端。
這里,在本發(fā)明的其他實(shí)施例中,所述方法還包括:步驟S108,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)不滿足所述第二條件,輸出第二掃描結(jié)果。該步驟可以在終端或服務(wù)器上實(shí)現(xiàn),當(dāng)在服務(wù)器上實(shí)現(xiàn)時(shí),輸出第二掃描結(jié)果可以包括服務(wù)器將第二掃描結(jié)果發(fā)送給終端。
這里,在本發(fā)明的其他實(shí)施例中,所述方法還包括:步驟S109,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一提示信息,所述第一提示信息用于提醒對(duì)所述第一軟件進(jìn)行誤查殺。該步驟可以在終端或服務(wù)器上實(shí)現(xiàn),當(dāng)在服務(wù)器上實(shí)現(xiàn)時(shí),輸出第一提示信息可以包括服務(wù)器將第一提示信息發(fā)送給終端。
在以上的步驟S102中,可以采用以下的實(shí)現(xiàn)方式:
方式一,步驟S102采用終端或服務(wù)器來實(shí)現(xiàn)時(shí),所述根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配,包括:
步驟S1021A,終端或服務(wù)器將所述第一軟件特征與病毒庫中病毒的特征進(jìn)行匹配,得到第一匹配結(jié)果;
步驟S1022A,如果所述第一匹配結(jié)果表明所述第一軟件特征與所述病毒庫中的特征匹配,終端或服務(wù)器確定存在有與所述第一軟件進(jìn)行匹配的病毒;
步驟S1023A,如果所述第一匹配結(jié)果表明所述第一軟件特征與所述病毒庫中的特征匹配,終端或服務(wù)器確定不存在有與所述第一軟件進(jìn)行匹配的病毒。一般來說,病毒庫存儲(chǔ)在終端或服務(wù)器本地。
方式二,步驟S102采用終端來實(shí)現(xiàn)時(shí),所述根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配,包括:
步驟S1021B,終端將所述第一軟件特征或第一軟件的軟件信息攜帶于云查殺請(qǐng)求中,并終端將所述云查殺請(qǐng)求發(fā)送給服務(wù)器;
這里,服務(wù)器接收云查殺請(qǐng)求,解析云查殺請(qǐng)求,得到所述第一軟件特征或第一軟件的軟件信息;然后服務(wù)器根據(jù)所述第一軟件特征或第一軟件的軟件信息判斷判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配,得到查殺結(jié)果,然后服務(wù)器將查殺結(jié)果發(fā)送給終端。
步驟S1022B,終端接收所述服務(wù)器發(fā)送的云查殺響應(yīng),所述云查殺響應(yīng)中攜帶有查殺結(jié)果,所述查殺結(jié)果用于表明是否存在有與所述第一軟件進(jìn)行匹配的病毒;
步驟S1023B,根據(jù)所述查殺結(jié)果判斷是否存在有與所述第一軟件進(jìn)行匹配的病毒。
這里,如果查殺結(jié)果表明存在有與所述第一軟件進(jìn)行匹配的病毒時(shí),確定所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配;如果查殺結(jié)果表明不存在有與所述第一軟件進(jìn)行匹配的病毒時(shí),確定所述第一軟件不與預(yù)設(shè)的病毒庫中的病毒匹配。
從以上實(shí)施例可以看出,本發(fā)明實(shí)施例提供的技術(shù)方案解決了原有病毒查殺系統(tǒng)容易產(chǎn)生誤殺誤判的現(xiàn)象,尤其是誤殺一些知名軟件,或者裝機(jī)量比較大的軟件的時(shí)候會(huì)引起很大的運(yùn)營事故,對(duì)誤殺的軟件造成損失,對(duì)用戶的體驗(yàn)造成損失。通過引入本實(shí)施例提供的技術(shù)方案,可以杜絕大規(guī)模誤殺的可能性。
在本發(fā)明的其他實(shí)施例中,所述方法還包括:
步驟S121,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,根據(jù)所述第一軟件的標(biāo)識(shí)從軟件的標(biāo)識(shí)滿足白名單的軟件庫中提取第二軟件的軟件信息;
步驟S122,判斷所述第一軟件的軟件信息與第二軟件的軟件信息是否匹配,得到第二匹配結(jié)果;
步驟S123,如果所述第二匹配結(jié)果表明所述第一軟件的軟件信息與第二軟件的軟件信息匹配,則輸出第一掃描結(jié)果。
步驟S124,如果所述第二匹配結(jié)果表明所述第一軟件的軟件信息與第二軟件的軟件信息不匹配,則輸出第二掃描結(jié)果。
這里,所述第二條件可以為與上述智能名單(白名單)中軟件標(biāo)識(shí)匹配,即第一軟件從標(biāo)識(shí)上判斷是安全的軟件,例如合作客戶的軟件或者知名軟件廠商的軟件。如果與智能名單中的標(biāo)識(shí)匹配,那么可以進(jìn)一步提取出智能名單上的軟件(第二軟件)的軟件信息,然后進(jìn)一步比對(duì)第一軟件的軟件信息和第二軟件的軟件信息,如果比對(duì)結(jié)果一致,那么第一軟件就是安全的軟件,如果不一致,則說明第一軟件是不安全的軟件,或者需要進(jìn)一步處理例如人工審核。需要說明的是,如果第一軟件和第二軟件是同一款軟件,但是版本不同,那么第一軟件的軟件信息和第二軟件的軟件信息會(huì)有不同,例如版本號(hào)不同。
在本發(fā)明的其他實(shí)施例中,病毒特征的確定一般與當(dāng)時(shí)安全的軟件庫的容量有關(guān),如果當(dāng)前出現(xiàn)了新的軟件,那么病毒特征可能與新軟件的代碼匹配,那么利用病毒庫中的病毒特征對(duì)該新軟件進(jìn)行查殺時(shí),就會(huì)將該新軟件列為病毒,實(shí)際上新軟件極有可能并不是病毒,而是因?yàn)椴《咎卣髟O(shè)置的不合理導(dǎo)致的?;诖?,當(dāng)正常軟件被判斷為病毒時(shí),那么就需要調(diào)整病毒軟件的軟件特征,具體過程如下:
步驟S131,確定病毒庫中第一病毒的軟件信息;
步驟S132,根據(jù)所述第一病毒的軟件信息確定所述第一病毒的第一軟件特征;
步驟S133,判斷所述第一病毒的第一軟件特征是否與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配;
步驟S134,如果所述第一病毒的第一軟件特征與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配,則根據(jù)所述第一病毒的軟件信息確定所述第一病毒的第二軟件特征。
這里,繼續(xù)判斷所述第一病毒的第二軟件特征是否與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配;如果所述第一病毒的第二軟件特征與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配,那么繼續(xù)確定第一病毒的第三軟件特征,直到找到合適的軟件特征為止。
這里,如果所述第一病毒的第一軟件特征與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征不匹配,那么第一病毒的第一軟件特征則可以作為病毒的特征而存入病毒庫中。
在本發(fā)明的其他實(shí)施例中,所述方法還包括:
步驟S141,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,根據(jù)所述第一軟件的軟件信息從安裝包文件中提取第二軟件特征;
步驟S142,根據(jù)所述第二軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
步驟S143,如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第二軟件特征匹配的第二病毒的標(biāo)識(shí);
步驟S144,根據(jù)第二病毒的標(biāo)識(shí)判斷所述第二病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
步驟S145,如果所述第一判斷結(jié)果表明所述第二病毒不滿足所述第一條件,輸出第二提示信息,所述第二提示信息用于提醒對(duì)所述第一軟件通過人工審核以確認(rèn)所述第一軟件是否為病毒。
這里,對(duì)于智能名單檢測(cè)出來的誤殺的第一軟件,會(huì)把第一軟件的樣本重新進(jìn)行判斷,即重新提取第一軟件的軟件特征,如果再次判斷后第一軟件仍為病毒軟件,那么就需要進(jìn)行人工審核。
基于前述的實(shí)施例,本發(fā)明實(shí)施例提供一種防止病毒誤查殺的方法,該方法可應(yīng)用于所有在客戶端進(jìn)行病毒掃描的場(chǎng)景,如圖2和圖3所示,圖2為終端的掃描過程,圖3為掃描結(jié)果。圖4為本發(fā)明實(shí)施例防止病毒誤查殺的方法的實(shí)現(xiàn)流程示意圖二,如圖4所示,該方法包括:
步驟S401,本地查殺;
這里,終端如手機(jī)新安裝或下載了一個(gè)軟件例如應(yīng)用(App),那么手機(jī)先利用手機(jī)管家等軟件進(jìn)行本地查殺。
步驟S402,云查殺;
這里,云查殺時(shí),終端需要將待掃描軟件的相關(guān)信息發(fā)送給服務(wù)器,例如向服務(wù)器發(fā)送軟件的標(biāo)識(shí)、軟件的軟件信息或軟件的特征至少之一。
這里,無論本地查殺結(jié)果如何都可以進(jìn)行云查,當(dāng)然也可以是本地查殺后發(fā)現(xiàn)軟件是正常的安全軟件,那么就結(jié)束查殺;也可以是本地查殺后發(fā)現(xiàn)軟件是不病毒,那么在進(jìn)行云查殺。這里以查殺出來的結(jié)果為病毒為例。
步驟S403,判斷病毒是否為Master Key病毒,是時(shí),進(jìn)入步驟S404,反之,進(jìn)入步驟S405。
這里,以安卓操作系統(tǒng)為例進(jìn)行說明。
步驟S405,返回云查殺結(jié)果;
這里,服務(wù)器向終端發(fā)送云查殺結(jié)果,則返回的結(jié)果為該軟件是病毒。
步驟S406,判斷軟件是否命中智能名單,是時(shí),進(jìn)入步驟S407,反之,進(jìn)入步驟S404。
這里,智能名單為白名單。
步驟S407,誤查殺告警。
這里,如果軟件是白名單的軟件,那么就需要發(fā)送誤查殺的告警信息。
步驟S408,樣本重新判決;
步驟S409,加入人工審核;
步驟S410,攔截云查殺結(jié)果。
這里,在上述的步驟S408至步驟S410中,判定為誤殺的,把樣本信息通過微信告警發(fā)送運(yùn)營人員,把樣本重新加入到判別流程,如果仍然不能處理則提交人工審核。如果沒有命中智能名單,則原樣返回云查結(jié)果給終端。
這里,上述的智能名單收錄知名廠商或合作廠商證書、并且收錄名軟件信息(包名、證書、大小、MD5等)、以及收錄大數(shù)據(jù)分析追蹤收率軟件榜單,收率排名靠前的榜單上的軟件。
在上述實(shí)施例中,在客戶端云查即將返回階段,對(duì)云查結(jié)果進(jìn)行裁決;如果查出是病毒,而且不是master key證書偽裝病毒,且命中了上述的智能名單,則判定為誤殺,攔截此次云查結(jié)果。判定為誤殺的,把樣本信息通過微信告警發(fā)送運(yùn)營人員,把樣本重新加入到判別流程,如果仍然不能處理則提交人工審核。如果沒有命中智能名單,則原樣返回云查結(jié)果給終端。
本發(fā)明實(shí)施例提供的技術(shù)方案,實(shí)現(xiàn)了高可靠的防止云查病毒誤殺的方案,通過強(qiáng)大的智能名單,保護(hù)了知名軟件,合作廠商軟件,同時(shí)通過大數(shù)據(jù)追蹤軟件榜單,完全杜絕了大規(guī)模誤殺的可能性。同時(shí)提供了對(duì)運(yùn)營人員的微信告警,使得整個(gè)防誤殺系統(tǒng)運(yùn)行在監(jiān)督之下。
基于前述實(shí)施例,本發(fā)明實(shí)施例提供一種防止病毒誤殺的裝置,該裝置所包括的各單元以及各單元所包括的各模塊,都可以通過計(jì)算設(shè)備中的處理器來實(shí)現(xiàn),當(dāng)然也可通過具體的邏輯電路實(shí)現(xiàn);在實(shí)施的過程中,處理器可以為中央處理器(CPU)、微處理器(MPU)、數(shù)字信號(hào)處理器(DSP)或現(xiàn)場(chǎng)可編程門陣列(FPGA)等。
圖5為本發(fā)明實(shí)施例防止病毒誤殺的裝置的組成結(jié)構(gòu)示意圖,如圖5所示,該裝置400包括第一確定單元401、第一判斷單元402、第二確定單元403、第二判斷單元404、第三判斷單元405和第一輸出單元406,其中:
所述第一確定單元401,用于確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;
所述第一判斷單元402,用于根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
所述第二確定單元403,用于如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的第一病毒的標(biāo)識(shí);
所述第二判斷單元404,用于根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
所述第三判斷單元405,用于如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件,得到第二判斷結(jié)果;
所述第一輸出單元406,用于如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果,所述第一掃描結(jié)果用于表明所述第一軟件不是病毒。
在本發(fā)明的其他實(shí)施例中,所述第一判斷單元包括匹配模塊、第一確定模塊和第二確定模塊,其中:
所述匹配模塊,用于將所述第一軟件特征與病毒庫中的特征進(jìn)行匹配,得到第一匹配結(jié)果;
所述第一確定模塊,用于如果所述第一匹配結(jié)果表明所述第一軟件特征與所述病毒庫中的特征匹配,確定存在有與所述第一軟件進(jìn)行匹配的毒庫;
所述第二確定模塊,用于如果所述第一匹配結(jié)果表明所述第一軟件特征與所述病毒庫中的特征匹配,確定不存在有與所述第一軟件進(jìn)行匹配的病毒。
在本發(fā)明的其他實(shí)施例中,所述第一判斷單元包括發(fā)送模塊、接收模塊和判斷模塊,其中:
所述發(fā)送模塊,用于將所述第一軟件特征或第一軟件的軟件信息攜帶于云查殺請(qǐng)求中,并將所述云查殺請(qǐng)求發(fā)送給服務(wù)器;
所述接收模塊,用于接收所述服務(wù)器發(fā)送的云查殺響應(yīng),所述云查殺響應(yīng)中攜帶有查殺結(jié)果,所述查殺結(jié)果用于表明是否存在有與所述第一軟件進(jìn)行匹配的病毒;
所述判斷模塊,用于根據(jù)所述查殺結(jié)果判斷是否存在有與所述第一軟件進(jìn)行匹配的病毒。
在本發(fā)明的其他實(shí)施例中,所述裝置還包括第二輸出單元,用于如果所述第一判斷結(jié)果表明所述病毒不滿足所述第一條件,輸出第二掃描結(jié)果,所述第二掃描結(jié)果用于表明所述第一軟件是病毒;或者,如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)不滿足所述第二條件,輸出第二掃描結(jié)果。
在本發(fā)明的其他實(shí)施例中,所述裝置還包括提取單元、第四判斷單元,其中:
所述提取單元,用于如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,根據(jù)所述第一軟件的標(biāo)識(shí)從軟件的標(biāo)識(shí)滿足白名單的軟件庫中提取第二軟件的軟件信息;
所述第四判斷單元,用于判斷所述第一軟件的軟件信息與第二軟件的軟件信息是否匹配,得到第二匹配結(jié)果;如果所述第二匹配結(jié)果表明所述第一軟件的軟件信息與第二軟件的軟件信息匹配,則觸發(fā)所述第一輸出單元輸出第一掃描結(jié)果。
在本發(fā)明的其他實(shí)施例中,所述裝置還包括第三確定單元、第四確定單元、第五判斷單元和第五確定單元,其中:
所述第三確定單元,用于確定病毒庫中第一病毒的軟件信息;
所述第四確定單元,用于根據(jù)所述病第一毒的軟件信息確定所述第一病毒的第一軟件特征;
所述第五判斷單元,用于判斷所述第一病毒的第一軟件特征是否與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配;
所述第五確定單元,用于如果所述第一病毒的第一軟件特征與軟件的標(biāo)識(shí)滿足白名單的軟件庫中的特征匹配,則根據(jù)所述第一病毒的軟件信息確定所述第一病毒的第二軟件特征。
在本發(fā)明的其他實(shí)施例中,所述裝置還包括第三輸出單元,用于如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一提示信息,所述第一提示信息用于提醒對(duì)所述第一軟件進(jìn)行誤查殺。
在本發(fā)明的其他實(shí)施例中,所述裝置還包括提取單元、第六判斷單元、第六確定單元、第七判斷單元和第四輸出單元,其中:
所述提取單元,用于如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,根據(jù)所述第一軟件的軟件信息從安裝包文件中提取第二軟件特征;
所述第六判斷單元,用于根據(jù)所述第二軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
所述第六確定單元,用于如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第二軟件特征匹配的第二病毒的標(biāo)識(shí);
所述第七判斷單元,用于根據(jù)第二病毒的標(biāo)識(shí)判斷所述第二病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
所述第四輸出單元,用于如果所述第一判斷結(jié)果表明所述第二病毒不滿足所述第一條件,輸出第二提示信息,所述第二提示信息用于提醒對(duì)所述第一軟件通過人工審核以確認(rèn)所述第一軟件是否病毒。
這里需要指出的是:以上裝置實(shí)施例的描述,與上述方法實(shí)施例的描述是類似的,具有同方法實(shí)施例相似的有益效果,因此不做贅述。對(duì)于本發(fā)明裝置實(shí)施例中未披露的技術(shù)細(xì)節(jié),請(qǐng)參照本發(fā)明方法實(shí)施例的描述而理解。
要說明的是,本發(fā)明實(shí)施例中,如果以軟件功能模塊的形式實(shí)現(xiàn)上述的防止病毒誤殺的方法,并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明實(shí)施例的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(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í)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read Only Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。這樣,本發(fā)明實(shí)施例不限制于任何特定的硬件和軟件結(jié)合。
相應(yīng)地,本發(fā)明實(shí)施例再提供一種計(jì)算機(jī)存儲(chǔ)介質(zhì),所述計(jì)算機(jī)存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,該計(jì)算機(jī)可執(zhí)行指令用于實(shí)現(xiàn)本發(fā)明實(shí)施例中防止病毒誤殺的方法。
相應(yīng)地,本發(fā)明實(shí)施例再提供一種計(jì)算設(shè)備,該計(jì)算設(shè)備包括存儲(chǔ)介質(zhì),配置為存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令;
處理器,配置為執(zhí)行存儲(chǔ)在所述存儲(chǔ)介質(zhì)上的計(jì)算機(jī)可執(zhí)行指令,所述計(jì)算機(jī)可執(zhí)行指令包括:
確定待分析的第一軟件的軟件信息或第一軟件的第一軟件特征;
根據(jù)所述第一軟件的軟件信息或所述第一軟件特征判斷所述第一軟件是否與預(yù)設(shè)的病毒庫中的病毒匹配;
如果所述第一軟件與預(yù)設(shè)的病毒庫中的病毒匹配,確定與所述第一軟件特征匹配的所述第一病毒的標(biāo)識(shí);
根據(jù)所述第一病毒的標(biāo)識(shí)判斷所述第一病毒是否滿足預(yù)設(shè)的第一條件,得到第一判斷結(jié)果;
如果所述第一判斷結(jié)果表明所述第一病毒不滿足所述第一條件,判斷所述第一軟件的標(biāo)識(shí)是否滿足預(yù)設(shè)的第二條件,得到第二判斷結(jié)果;
如果所述第二判斷結(jié)果表明所述第一軟件的標(biāo)識(shí)滿足所述第二條件,輸出第一掃描結(jié)果,所述第一掃描結(jié)果用于表明所述第一軟件不是病毒。
這里需要指出的是:以上設(shè)備實(shí)施例項(xiàng)的描述,與上述方法描述是類似的,具有同方法實(shí)施例相同的有益效果,因此不做贅述。對(duì)于本發(fā)明設(shè)備實(shí)施例中未披露的技術(shù)細(xì)節(jié),本領(lǐng)域的技術(shù)人員請(qǐng)參照本發(fā)明方法實(shí)施例的描述而理解。
應(yīng)理解,說明書通篇中提到的“一個(gè)實(shí)施例”或“一實(shí)施例”意味著與實(shí)施例有關(guān)的特定特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個(gè)實(shí)施例中。因此,在整個(gè)說明書各處出現(xiàn)的“在一個(gè)實(shí)施例中”或“在一實(shí)施例中”未必一定指相同的實(shí)施例。此外,這些特定的特征、結(jié)構(gòu)或特性可以任意適合的方式結(jié)合在一個(gè)或多個(gè)實(shí)施例中。應(yīng)理解,在本發(fā)明的各種實(shí)施例中,上述各過程的序號(hào)的大小并不意味著執(zhí)行順序的先后,各過程的執(zhí)行順序應(yīng)以其功能和內(nèi)在邏輯確定,而不應(yīng)對(duì)本發(fā)明實(shí)施例的實(shí)施過程構(gòu)成任何限定。上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的設(shè)備和方法,可以通過其它的方式實(shí)現(xiàn)。以上所描述的設(shè)備實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,如:多個(gè)單元或組件可以結(jié)合,或可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設(shè)備或單元的間接耦合或通信連接,可以是電性的、機(jī)械的或其它形式的。
上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元;既可以位于一個(gè)地方,也可以分布到多個(gè)網(wǎng)絡(luò)單元上;可以根據(jù)實(shí)際的需要選擇其中的部分或全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各實(shí)施例中的各功能單元可以全部集成在一個(gè)處理單元中,也可以是各單元分別單獨(dú)作為一個(gè)單元,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中;上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:移動(dòng)存儲(chǔ)設(shè)備、只讀存儲(chǔ)器(Read Only Memory,ROM)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
或者,本發(fā)明上述集成的單元如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明實(shí)施例的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(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í)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分。而前述的存儲(chǔ)介質(zhì)包括:移動(dòng)存儲(chǔ)設(shè)備、ROM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。