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

一種安全應(yīng)用程序的啟動(dòng)方法、裝置及電子設(shè)備與流程

文檔序號(hào):11865184閱讀:260來源:國(guó)知局
一種安全應(yīng)用程序的啟動(dòng)方法、裝置及電子設(shè)備與流程

本發(fā)明涉及安全應(yīng)用程序的啟動(dòng)技術(shù)領(lǐng)域,尤其涉及一種安全應(yīng)用程序的啟動(dòng)方法、裝置及電子設(shè)備。



背景技術(shù):

隨著互聯(lián)網(wǎng)技術(shù)發(fā)展,病毒、木馬等惡意程序技術(shù)層出不窮,自從1987年發(fā)現(xiàn)了全世界首例計(jì)算機(jī)病毒以來,病毒的數(shù)量早已超過1萬(wàn)種以上,并且還在以每年兩千種新病毒的速度遞增,不斷困擾著涉及計(jì)算機(jī)領(lǐng)域的各個(gè)行業(yè)。

在已出現(xiàn)的眾多病毒中,存在這樣一種病毒,為表述簡(jiǎn)便起見,這種病毒可記為fx病毒,它能修改安全應(yīng)用程序的主程序的入口點(diǎn)(OEP,Original Entry Point)地址內(nèi)容,使得安全應(yīng)用程序無(wú)法啟動(dòng),造成用戶的電子設(shè)備如電腦無(wú)法正常防護(hù),甚至造成用戶財(cái)產(chǎn)損失。其中,安全應(yīng)用程序是指能夠?qū)Σ《具M(jìn)行防御和/或查殺的應(yīng)用程序,如金山安全應(yīng)用程序或安全衛(wèi)士等。

這種病毒使安全應(yīng)用程序失效的原理是:這種病毒有一個(gè)注冊(cè)表自啟動(dòng)項(xiàng),該啟動(dòng)項(xiàng)中記錄的啟動(dòng)文件是隨機(jī)變換的,即隨機(jī)啟動(dòng)進(jìn)程。在每次開機(jī)這種病毒自啟動(dòng)后,啟動(dòng)進(jìn)程把自身線程注入到explorer進(jìn)程(用戶的桌面進(jìn)程),然后啟動(dòng)進(jìn)程退出;當(dāng)用戶雙擊桌面上的安全應(yīng)用程序的圖標(biāo)時(shí)候,即通過explorer裝載安全應(yīng)用程序的主程序的時(shí)候,通過于這種病毒線程在explorer裝載安全應(yīng)用程序的主程序之前,把安全應(yīng)用程序的主程序的OEP地址內(nèi)容改寫了,寫入一段死循環(huán)的匯編代碼,造成用戶雙擊打開安全應(yīng)用程序的主程序執(zhí)行到入口函數(shù)的時(shí)候,被引入死循環(huán)程序中,從而使安全應(yīng)用程序的主程序無(wú)法啟動(dòng)。目前為止還沒有對(duì)付這種病毒的有效方法。



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

有鑒于此,本發(fā)明實(shí)施例提供一種安全應(yīng)用程序的啟動(dòng)方法、裝置及電子設(shè)備,以解決現(xiàn)有技術(shù)中安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容被修改后導(dǎo)致安全應(yīng)用程序的主程序無(wú)法正常啟動(dòng)的問題。

第一方面,本發(fā)明實(shí)施例提供一種安全應(yīng)用程序的啟動(dòng)方法,所述啟動(dòng)方法應(yīng)用于電子設(shè)備,所述啟動(dòng)方法包括:

判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程;

如果當(dāng)前創(chuàng)建的進(jìn)程是預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,則判斷所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改;

如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

結(jié)合第一方面,在第一方面的第一種實(shí)施方式中,所述判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,包括:

所述安全應(yīng)用程序的服務(wù)程序接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息;其中,所述信息中包括當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名;

所述安全應(yīng)用程序的服務(wù)程序,判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名;

若所述進(jìn)程名為所述安全應(yīng)用程序的主程序的進(jìn)程名,則確定所述當(dāng)前創(chuàng)建的進(jìn)程為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

結(jié)合第一方面的第一種實(shí)施方式,在第一方面的第二種實(shí)施方式中,所述安全應(yīng)用程序的服務(wù)程序接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息,包括:所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息;

其中,所述安全應(yīng)用程序的服務(wù)程序,判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名,包括:所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名。

結(jié)合第一方面至第一方面的第二種實(shí)施方式中的任一種實(shí)施方式,在第一方面的第三種實(shí)施方式中,所述判斷所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改,包括:所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù)獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息;根據(jù)所述進(jìn)程的標(biāo)識(shí)信息,讀取所述進(jìn)程在內(nèi)存中的數(shù)據(jù);根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址;根據(jù)所述主程序的入口點(diǎn)地址,判斷所述主程序的入口點(diǎn)地址內(nèi)容是否被修改。

結(jié)合第一方面的第三種實(shí)施方式,在第一方面的第四種實(shí)施方式中,所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù)獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息,包括:所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),從所述安全應(yīng)用程序的驅(qū)動(dòng)程序的通知中獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息。

結(jié)合第一方面的第三種實(shí)施方式,在第一方面的第五種實(shí)施方式中,所述根據(jù)所述進(jìn)程的標(biāo)識(shí)信息,讀取所述進(jìn)程在內(nèi)存中的數(shù)據(jù),包括:根據(jù)所述進(jìn)程的標(biāo)識(shí)信息調(diào)用打開進(jìn)程函數(shù)打開進(jìn)程,通過調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。

結(jié)合第一方面的第三種實(shí)施方式,在第一方面的第六種實(shí)施方式中,所述內(nèi)存中的數(shù)據(jù)為PE格式的數(shù)據(jù);所述根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址,包括:通過_IMAGE_DOS_HEADER、_IMAGE_NT_HEADERS和_IMAGE_OPTIONAL_HEADER三個(gè)結(jié)構(gòu)獲得所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

結(jié)合第一方面的第三種實(shí)施方式,在第一方面的第七種實(shí)施方式中,所述根據(jù)所述主程序的入口點(diǎn)地址,判斷所述主程序的入口點(diǎn)地址內(nèi)容是否被修改,包括:判斷所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,若是則確定所述主程序的入口點(diǎn)地址內(nèi)容已被修改。

結(jié)合第一方面至第一方面的第二種實(shí)施方式中的任一種實(shí)施方式,在第一方面的第八種實(shí)施方式中,所述由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序,包括:所述安全應(yīng)用程序的服務(wù)程序創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

結(jié)合第一方面的第八種實(shí)施方式,在第一方面的第九種實(shí)施方式中,所述安全應(yīng)用程序的服務(wù)程序創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程,包括:所述安全應(yīng)用程序的服務(wù)程序調(diào)用創(chuàng)建用戶態(tài)進(jìn)程函數(shù),創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

結(jié)合第一方面至第一方面的第二種實(shí)施方式中的任一種實(shí)施方式,在第一方面的第十種實(shí)施方式中,所述的安全應(yīng)用程序的啟動(dòng)方法,還包括:枚舉所有注冊(cè)表啟動(dòng)項(xiàng);匹配注冊(cè)表鍵值內(nèi)容是否存在字符串chsbssvc;如果注冊(cè)表鍵值內(nèi)容中存在字符串chsbssvc,則刪除鍵值中包含所述字符串chsbssvc的注冊(cè)表啟動(dòng)項(xiàng)。

第二方面,本發(fā)明實(shí)施例提供一種安全應(yīng)用程序的啟動(dòng)裝置,所述啟動(dòng)裝置應(yīng)用于電子設(shè)備,所述啟動(dòng)裝置包括:第一判斷模塊,用于判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程;第二判斷模塊,用于如果當(dāng)前創(chuàng)建的進(jìn)程是預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,則判斷所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改;啟動(dòng)模塊,用于如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

結(jié)合第二方面,在第二方面的第一種實(shí)施方式中,所述第一判斷模塊,設(shè)于所述安全應(yīng)用程序的服務(wù)程序中;所述第一判斷模塊,包括:信息接收子模塊,用于接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息;其中,所述信息中包括當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名;進(jìn)程名判斷子模塊,用于判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名;進(jìn)程確定子模塊,用于若所述進(jìn)程名為所述安全應(yīng)用程序的主程序的進(jìn)程名,則確定所述當(dāng)前創(chuàng)建的進(jìn)程為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

結(jié)合第二方面或第二方面的第一種實(shí)施方式,在第二方面的第二種實(shí)施方式中,所述第二判斷模塊,設(shè)于所述安全應(yīng)用程序的服務(wù)程序中;所述第二判斷模塊,包括:標(biāo)識(shí)信息獲取子模塊,用于獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息;內(nèi)存數(shù)據(jù)讀取子模塊,用于根據(jù)所述進(jìn)程的標(biāo)識(shí)信息,讀取所述進(jìn)程在內(nèi)存中的數(shù)據(jù);地址獲取子模塊,用于根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址;地址內(nèi)容判斷子模塊,用于根據(jù)所述主程序的入口點(diǎn)地址,判斷所述主程序的入口點(diǎn)地址內(nèi)容是否被修改。

結(jié)合第二方面的第二種實(shí)施方式,在第二方面的第三種實(shí)施方式中,所述標(biāo)識(shí)信息獲取子模塊,用于從所述安全應(yīng)用程序的驅(qū)動(dòng)程序的通知中獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息。

結(jié)合第二方面的第二種實(shí)施方式,在第二方面的第四種實(shí)施方式中,所述內(nèi)存數(shù)據(jù)讀取子模塊,用于根據(jù)所述進(jìn)程的標(biāo)識(shí)信息調(diào)用打開進(jìn)程函數(shù)打開進(jìn)程,通過調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。

結(jié)合第二方面的第二種實(shí)施方式,在第二方面的第五種實(shí)施方式中,所述內(nèi)存中的數(shù)據(jù)為PE格式的數(shù)據(jù);所述地址獲取子模塊,用于通過_IMAGE_DOS_HEADER、_IMAGE_NT_HEADERS和_IMAGE_OPTIONAL_HEADER三個(gè)結(jié)構(gòu)獲得所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

結(jié)合第二方面的第二種實(shí)施方式,在第二方面的第六種實(shí)施方式中,所述地址內(nèi)容判斷子模塊,用于判斷所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,若是則確定所述主程序的入口點(diǎn)地址內(nèi)容已被修改。

結(jié)合第二方面或第二方面的第一種實(shí)施方式,在第二方面的第七種實(shí)施方式中,所述啟動(dòng)模塊,用于創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

結(jié)合第二方面的第七種實(shí)施方式,在第二方面的第八種實(shí)施方式中,所述啟動(dòng)模塊,具體用于調(diào)用創(chuàng)建用戶態(tài)進(jìn)程函數(shù),創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

結(jié)合第二方面或第二方面的第一種實(shí)施方式,在第二方面的第九種實(shí)施方式中,所述的安全應(yīng)用程序的啟動(dòng)裝置,還包括:病毒處理模塊,用于枚舉所有注冊(cè)表啟動(dòng)項(xiàng);匹配注冊(cè)表鍵值內(nèi)容是否存在字符串chsbssvc;如果注冊(cè)表鍵值內(nèi)容中存在字符串chsbssvc,則刪除鍵值中包含所述字符串chsbssvc的注冊(cè)表啟動(dòng)項(xiàng)。

第三方面,本發(fā)明實(shí)施例提供一種電子設(shè)備,所述電子設(shè)備包括:殼體、處理器、存儲(chǔ)器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內(nèi)部,處理器和存儲(chǔ)器設(shè)置在電路板上;電源電路,用于為上述電子設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼;處理器通過讀取存儲(chǔ)器中存儲(chǔ)的可執(zhí)行程序代碼來運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,用于執(zhí)行前述任一實(shí)施方式所述的安全應(yīng)用程序的啟動(dòng)方法。

本發(fā)明實(shí)施例提供的一種安全應(yīng)用程序的啟動(dòng)方法、裝置及電子設(shè)備,通過判斷安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序,這樣能夠解決現(xiàn)有技術(shù)中安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容被修改后導(dǎo)致安全應(yīng)用程序的主程序無(wú)法正常啟動(dòng)的問題。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。

圖1為本發(fā)明的實(shí)施例安全應(yīng)用程序的啟動(dòng)方法實(shí)施例一的流程示意圖;

圖2為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例二的流程圖;

圖3為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例三的流程圖;

圖4為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例四的流程圖;

圖5為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例一的結(jié)構(gòu)示意圖;

圖6為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例二的結(jié)構(gòu)示意圖;

圖7為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例二的結(jié)構(gòu)示意圖;

圖8為本發(fā)明電子設(shè)備一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例進(jìn)行詳細(xì)描述。

應(yīng)當(dāng)明確,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

圖1為本發(fā)明的實(shí)施例安全應(yīng)用程序的啟動(dòng)方法實(shí)施例一的流程示意圖。所述啟動(dòng)方法可應(yīng)用于電子設(shè)備,如圖1所示,本實(shí)施例的啟動(dòng)方法可以包括:

步驟101、判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

本實(shí)施例中,安全應(yīng)用程序是指能夠?qū)Σ《具M(jìn)行防御和/或查殺的應(yīng)用程序,如金山安全應(yīng)用程序或安全衛(wèi)士等。安全應(yīng)用程序包括可運(yùn)行于應(yīng)用層的服務(wù)程序和主程序,以及可運(yùn)行于操作系統(tǒng)內(nèi)核層的驅(qū)動(dòng)程序。其中,安全應(yīng)用程序的服務(wù)程序和主程序運(yùn)行于客戶端,服務(wù)程序負(fù)責(zé)防御系統(tǒng)上的各種監(jiān)控邏輯,主程序負(fù)責(zé)界面展示,兩者都是自啟動(dòng),區(qū)別是,服務(wù)程序開機(jī)后由系統(tǒng)進(jìn)程啟動(dòng),主程序由系統(tǒng)開機(jī)后explorer負(fù)責(zé)啟動(dòng)。

由于安全應(yīng)用程序的服務(wù)程序開機(jī)后由系統(tǒng)進(jìn)程啟動(dòng),主程序由系統(tǒng)開機(jī)后explorer負(fù)責(zé)啟動(dòng),因此,安全應(yīng)用程序的主程序可能會(huì)被fx病毒破壞,而安全應(yīng)用程序的服務(wù)程序則不會(huì)被fx病毒破壞。

本實(shí)施例中,當(dāng)有進(jìn)程創(chuàng)建時(shí),可根據(jù)當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名來判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,即是否是目標(biāo)安全應(yīng)用程序的主程序的進(jìn)程。比如,可根據(jù)進(jìn)程名kxetray.exe來判斷出當(dāng)前創(chuàng)建的進(jìn)程是金山毒霸的主程序的進(jìn)程。

本實(shí)施例中,如果當(dāng)前創(chuàng)建的進(jìn)程是預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,則執(zhí)行步驟102,如果當(dāng)前創(chuàng)建的進(jìn)程不是預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,則結(jié)束本實(shí)施例的流程。

步驟102、判斷所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改。

本實(shí)施例中,所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù)可獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息;根據(jù)所述進(jìn)程的標(biāo)識(shí)信息,讀取所述進(jìn)程在內(nèi)存中的數(shù)據(jù);根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址;根據(jù)所述主程序的入口點(diǎn)地址,判斷所述主程序的入口點(diǎn)地址內(nèi)容是否被修改。

本實(shí)施例中,若所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,則可確定所述主程序的入口點(diǎn)地址內(nèi)容已被修改。

本實(shí)施例中,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則執(zhí)行步驟103,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容未被修改,則執(zhí)行步驟104。

步驟103、由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

本實(shí)施例中,所述安全應(yīng)用程序的服務(wù)程序創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。具體來講,所述安全應(yīng)用程序的服務(wù)程序調(diào)用創(chuàng)建用戶態(tài)進(jìn)程函數(shù),即CreateProcessAsUser函數(shù),創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

步驟104、由explorer啟動(dòng)所述安全應(yīng)用程序的主程序。

本發(fā)明實(shí)施例安全應(yīng)用程序的啟動(dòng)方法,通過判斷安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序,這樣能夠解決現(xiàn)有技術(shù)中安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容被修改后導(dǎo)致安全應(yīng)用程序的主程序無(wú)法正常啟動(dòng)的問題。此外,本發(fā)明實(shí)施例在進(jìn)程創(chuàng)建的攔截點(diǎn)上,實(shí)現(xiàn)防御fx病毒對(duì)安全應(yīng)用程序的破壞。

圖2為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例二的流程圖。本實(shí)施例的啟動(dòng)方法可應(yīng)用于電子設(shè)備,如圖2所示,本實(shí)施例的方法可以包括:

步驟201、監(jiān)控操作系統(tǒng)中進(jìn)程的創(chuàng)建。

本實(shí)施例中,由安全應(yīng)用程序的驅(qū)動(dòng)程序監(jiān)控操作系統(tǒng)中進(jìn)程的創(chuàng)建。當(dāng)監(jiān)測(cè)到用戶點(diǎn)擊桌面上的快捷方式以啟動(dòng)應(yīng)用程序時(shí),則檢測(cè)當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,若是,則獲取當(dāng)前創(chuàng)建的進(jìn)程的信息,并將獲取的所述信息通知給所述安全應(yīng)用程序的服務(wù)程序。其中,所述信息中包括當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名和標(biāo)識(shí)信息即進(jìn)程ID(identification的縮寫)。

步驟202、接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息。

本實(shí)施例中,由所述安全應(yīng)用程序的服務(wù)程序接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息。

進(jìn)一步地,可通過所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息。

步驟203、判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名。

本實(shí)施例中,可由所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名。

若所述進(jìn)程名為所述安全應(yīng)用程序的主程序的進(jìn)程名,則執(zhí)行步驟204;若所述進(jìn)程名不是所述安全應(yīng)用程序的主程序的進(jìn)程名,則結(jié)束本實(shí)施例的流程。

步驟204、確定所述當(dāng)前創(chuàng)建的進(jìn)程為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

步驟205、獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息。

本實(shí)施例中,由所述安全應(yīng)用程序的服務(wù)程序中的進(jìn)程監(jiān)控創(chuàng)建函數(shù),從所述安全應(yīng)用程序的驅(qū)動(dòng)程序的通知中獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息,即進(jìn)程ID。

步驟206、調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。

本實(shí)施例中,根據(jù)所述進(jìn)程的標(biāo)識(shí)信息調(diào)用打開進(jìn)程函數(shù)OpenProcess打開進(jìn)程,通過調(diào)用讀取進(jìn)程內(nèi)存函數(shù)ReadProcessMemory讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。

調(diào)用ReadProcessMemory讀取的進(jìn)程在內(nèi)存中的數(shù)據(jù),是個(gè)PE文件結(jié)構(gòu),舉例如下:

步驟207、獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

本實(shí)施例中,根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

所述內(nèi)存中的數(shù)據(jù)為PE格式的數(shù)據(jù)。根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址,可以包括:

通過_IMAGE_DOS_HEADER、_IMAGE_NT_HEADERS和_IMAGE_OPTIONAL_HEADER三個(gè)結(jié)構(gòu)獲得所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。簡(jiǎn)單來說,就是通過基地址,定位到OEP程序入口地址。

步驟208、判斷所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令。

本實(shí)施例中,若所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,則表明所述主程序的入口點(diǎn)地址內(nèi)容已被修改。如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則執(zhí)行步驟209,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容未被修改,則執(zhí)行步驟210。

步驟209、由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

本實(shí)施例中,由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序的過程和上述方法實(shí)施例的步驟103類似,此處不再贅述。

步驟210、由explorer啟動(dòng)所述安全應(yīng)用程序的主程序。

本實(shí)施例的步驟202至209,可實(shí)現(xiàn)于所述安全應(yīng)用程序的服務(wù)程序中,運(yùn)行于所述安全應(yīng)用程序的客戶端。

本發(fā)明實(shí)施例安全應(yīng)用程序的啟動(dòng)方法,通過判斷安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序,這樣能夠解決現(xiàn)有技術(shù)中安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容被修改后導(dǎo)致安全應(yīng)用程序的主程序無(wú)法正常啟動(dòng)的問題。此外,本發(fā)明實(shí)施例在進(jìn)程創(chuàng)建的攔截點(diǎn)上,實(shí)現(xiàn)防御fx病毒對(duì)安全應(yīng)用程序的破壞。

圖3為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例三的流程圖。本實(shí)施例的啟動(dòng)方法可應(yīng)用于電子設(shè)備,如圖3所示,本實(shí)施例在圖2所示方法實(shí)施例的基礎(chǔ)上,還可包括清理病毒的步驟,本實(shí)施例的方法可以包括:

步驟301、監(jiān)控操作系統(tǒng)中進(jìn)程的創(chuàng)建。

本實(shí)施例中,監(jiān)控操作系統(tǒng)中進(jìn)程的創(chuàng)建的過程和上述方法實(shí)施例的步驟201類似,此處不再贅述。

步驟302、接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息。

本實(shí)施例中,接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息的過程和上述方法實(shí)施例的步驟202類似,此處不再贅述。

步驟303、判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名。

本實(shí)施例中,判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名的過程和上述方法實(shí)施例的步驟203類似,此處不再贅述。

步驟304、確定所述當(dāng)前創(chuàng)建的進(jìn)程為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

步驟305、獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息。

本實(shí)施例中,獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息的過程和上述方法實(shí)施例的步驟205類似,此處不再贅述。

步驟306、調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。

本實(shí)施例中,調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)的過程和上述方法實(shí)施例的步驟205類似,此處不再贅述。

步驟307、獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

本實(shí)施例中,獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址的過程和上述方法實(shí)施例的步驟206類似,此處不再贅述。

本實(shí)施例中,根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

所述內(nèi)存中的數(shù)據(jù)為PE格式的數(shù)據(jù)。根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址,可以包括:通過_IMAGE_DOS_HEADER、_IMAGE_NT_HEADERS和_IMAGE_OPTIONAL_HEADER三個(gè)結(jié)構(gòu)獲得所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。

步驟308、判斷所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令。

本實(shí)施例中,若所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,則表明所述主程序的入口點(diǎn)地址內(nèi)容已被修改。

本實(shí)施例中,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則執(zhí)行步驟309,如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容未被修改,則執(zhí)行步驟310。

步驟309、由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

本實(shí)施例中,由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序的過程和上述方法實(shí)施例的步驟103類似,此處不再贅述。

步驟310、由explorer啟動(dòng)所述安全應(yīng)用程序的主程序。

步驟311、枚舉所有注冊(cè)表啟動(dòng)項(xiàng)。

步驟312、匹配注冊(cè)表鍵值內(nèi)容是否存在字符串chsbssvc。

步驟313、如果注冊(cè)表鍵值內(nèi)容中存在字符串chsbssvc,則刪除鍵值中包含所述字符串chsbssvc的注冊(cè)表啟動(dòng)項(xiàng)。

通過本實(shí)施例,在進(jìn)程創(chuàng)建的攔截點(diǎn)上,實(shí)現(xiàn)清理并防御fx病毒對(duì)安全應(yīng)用程序的破壞,能夠更有效地保護(hù)系統(tǒng)的安全。

下面采用一個(gè)具體的實(shí)施例,對(duì)圖1~圖3中任一個(gè)所示方法實(shí)施例的技術(shù)方案進(jìn)行詳細(xì)說明。

圖4為本發(fā)明安全應(yīng)用程序的啟動(dòng)方法實(shí)施例四的流程圖,本實(shí)施例的適用場(chǎng)景可以是fx病毒對(duì)金山毒霸主程序破壞的防御,如圖4所示,具體的安全應(yīng)用程序的啟動(dòng)方法可以包括:

步驟401、金山毒霸的驅(qū)動(dòng)程序監(jiān)控進(jìn)程的創(chuàng)建。

本實(shí)施例中,金山毒霸的驅(qū)動(dòng)程序監(jiān)控到有進(jìn)程的創(chuàng)建時(shí),通知金山毒霸的服務(wù)程序的進(jìn)程監(jiān)控創(chuàng)建函數(shù)。

當(dāng)用戶雙擊桌面快捷圖標(biāo)啟動(dòng)應(yīng)用程序時(shí)(由explorer進(jìn)程啟動(dòng)),金山毒霸的驅(qū)動(dòng)程序獲取當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名和進(jìn)程ID等信息,并將所述信息通知給金山毒霸的服務(wù)程序的進(jìn)程監(jiān)控創(chuàng)建函數(shù)。

步驟402、判斷當(dāng)前創(chuàng)建的進(jìn)程是否是金山毒霸的主程序的進(jìn)程。

金山毒霸的主程序的進(jìn)程名為kxetray.exe,因此,在金山毒霸的服務(wù)程序的進(jìn)程監(jiān)控創(chuàng)建函數(shù)中,可根據(jù)進(jìn)程名是否是kxetray.exe來判斷當(dāng)前創(chuàng)建的進(jìn)程是否是金山毒霸的主程序的進(jìn)程,若是,則執(zhí)行步驟403。

步驟403、檢測(cè)OEP地址內(nèi)容是否被修改。

具體可通過以下方法檢測(cè)OEP地址內(nèi)容是否被修改:在金山毒霸的服務(wù)程序的進(jìn)程監(jiān)控創(chuàng)建函數(shù)中,可獲取到金山毒霸的驅(qū)動(dòng)程序通知過來的當(dāng)前創(chuàng)建的進(jìn)程ID,由進(jìn)程ID再調(diào)用OpenProcess打開進(jìn)程,再調(diào)用ReadProcessMemory讀取進(jìn)程在內(nèi)存中的數(shù)據(jù)。內(nèi)存中的數(shù)據(jù)格式是PE文件格式,由PE文件格式知識(shí)可知,OEP地址是可通過_IMAGE_DOS_HEADER,_IMAGE_NT_HEADERS,_IMAGE_OPTIONAL_HEADER這三個(gè)結(jié)構(gòu)找出OEP地址。

由前述得到的OEP地址,再讀取此地址內(nèi)容,如果是0xeb,0xfe,0xcc,0xcc這4個(gè)字節(jié)內(nèi)容相同,說明是一段死循環(huán)的跳轉(zhuǎn)指令,就可以說明金山毒霸的主程序的OEP地址內(nèi)容已被fx病毒所改寫了;在OEP地址內(nèi)容中寫入死循環(huán)的程序是無(wú)法啟動(dòng)成功的。檢測(cè)到OEP地址內(nèi)容被修改后,執(zhí)行步驟404,若OEP地址內(nèi)容未被修改,執(zhí)行步驟405。

步驟404、由金山毒霸的服務(wù)程序重新啟動(dòng)金山毒霸的主程序。

本步驟中,金山毒霸的服務(wù)程序通過調(diào)用CreateProcessAsUser函數(shù)創(chuàng)建一個(gè)用戶態(tài)的毒霸主程序進(jìn)程,可以正常啟動(dòng)了毒霸的主界面。這樣給用戶無(wú)任何感知,就好像用戶雙擊毒霸圖標(biāo)啟動(dòng)并顯示主界面一樣無(wú)任何區(qū)別。

步驟405、由explorer啟動(dòng)所述安全應(yīng)用程序的主程序。

步驟406、清理fx病毒。

防御了fx病毒之后,還需要實(shí)現(xiàn)fx病毒的清理。fx病毒需寫一個(gè)注冊(cè)表啟動(dòng)項(xiàng),啟動(dòng)信息如下:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]

″Auxiesvc″=″C:\\Users\\Administrator\\AppData\\Roaming\\chsbssvc\\corrprop.exe″。

其中,Corrprop.exe就是一個(gè)啟動(dòng)進(jìn)程名,Auxiesvc注冊(cè)表鍵也是可變的,在不同的電腦上會(huì)變成不一樣的,所以無(wú)法通過注冊(cè)表鍵刪除注冊(cè)表;但是注冊(cè)表鍵值下的chsbssvc目錄名是不變的,通過枚舉系統(tǒng)上所有的注冊(cè)表啟動(dòng)項(xiàng),然后匹配注冊(cè)表鍵值內(nèi)容,如果發(fā)現(xiàn)存在chsbssvc,即可刪除此項(xiàng)注冊(cè)表啟動(dòng)項(xiàng),實(shí)現(xiàn)了fx病毒啟動(dòng)項(xiàng)的清理。

圖5為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例一的結(jié)構(gòu)示意圖,如圖5所示,本實(shí)施例的裝置應(yīng)用于電子設(shè)備,可以包括:第一判斷模塊11、第二判斷模塊12和啟動(dòng)模塊13,其中,第一判斷模塊11,用于判斷當(dāng)前創(chuàng)建的進(jìn)程是否為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程;第二判斷模塊12,用于如果當(dāng)前創(chuàng)建的進(jìn)程是預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程,則判斷所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容是否被修改;啟動(dòng)模塊13,用于如果所述安全應(yīng)用程序的主程序的入口點(diǎn)地址內(nèi)容已被修改,則由所述安全應(yīng)用程序的服務(wù)程序啟動(dòng)所述安全應(yīng)用程序的主程序。

本實(shí)施例的裝置,可以用于執(zhí)行圖1所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖6為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例二的結(jié)構(gòu)示意圖,如圖6所示,本實(shí)施例的裝置在圖5所示裝置結(jié)構(gòu)的基礎(chǔ)上,進(jìn)一步地,所述第一判斷模塊11,設(shè)于所述安全應(yīng)用程序的服務(wù)程序中;所述第一判斷模塊11,包括:信息接收子模塊111、進(jìn)程名判斷子模塊112和進(jìn)程確定子模塊113;其中,信息接收子模塊111,用于接收所述安全應(yīng)用程序的驅(qū)動(dòng)程序傳送的操作系統(tǒng)中當(dāng)前創(chuàng)建的進(jìn)程的信息;其中,所述信息中包括當(dāng)前創(chuàng)建的進(jìn)程的進(jìn)程名;進(jìn)程名判斷子模塊112,用于判斷所述進(jìn)程名是否為所述安全應(yīng)用程序的主程序的進(jìn)程名;進(jìn)程確定子模塊113,用于若所述進(jìn)程名為所述安全應(yīng)用程序的主程序的進(jìn)程名,則確定所述當(dāng)前創(chuàng)建的進(jìn)程為預(yù)定的安全應(yīng)用程序的主程序的進(jìn)程。

進(jìn)一步地,所述第二判斷模塊12,設(shè)于所述安全應(yīng)用程序的服務(wù)程序中;所述第二判斷模塊12,包括:標(biāo)識(shí)信息獲取子模塊121、內(nèi)存數(shù)據(jù)讀取子模塊122、地址獲取子模塊123和地址內(nèi)容判斷子模塊124;其中,標(biāo)識(shí)信息獲取子模塊121,用于獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息,具體來講,用于從所述安全應(yīng)用程序的驅(qū)動(dòng)程序的通知中獲取當(dāng)前創(chuàng)建的進(jìn)程的標(biāo)識(shí)信息,進(jìn)一步地,根據(jù)所述進(jìn)程的標(biāo)識(shí)信息調(diào)用打開進(jìn)程函數(shù)打開進(jìn)程,通過調(diào)用讀取進(jìn)程內(nèi)存函數(shù)讀取進(jìn)程在內(nèi)存中的數(shù)據(jù);內(nèi)存數(shù)據(jù)讀取子模塊122,用于根據(jù)所述進(jìn)程的標(biāo)識(shí)信息,讀取所述進(jìn)程在內(nèi)存中的數(shù)據(jù);地址獲取子模塊123,用于根據(jù)所述進(jìn)程在內(nèi)存中的數(shù)據(jù),獲取所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址。所述內(nèi)存中的數(shù)據(jù)為PE格式的數(shù)據(jù),所述地址獲取子模塊123,具體用于通過_IMAGE_DOS_HEADER、_IMAGE_NT_HEADERS和_IMAGE_OPTIONAL_HEADER三個(gè)結(jié)構(gòu)獲得所述進(jìn)程對(duì)應(yīng)的主程序的入口點(diǎn)地址;地址內(nèi)容判斷子模塊124,用于根據(jù)所述主程序的入口點(diǎn)地址,判斷所述主程序的入口點(diǎn)地址內(nèi)容是否被修改,具體可以是判斷所述主程序的入口點(diǎn)地址處是否存儲(chǔ)有一段死循環(huán)的跳轉(zhuǎn)指令,若是則確定所述主程序的入口點(diǎn)地址內(nèi)容已被修改。

本實(shí)施例中,啟動(dòng)模塊13,用于創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程,具體用于調(diào)用創(chuàng)建用戶態(tài)進(jìn)程函數(shù),創(chuàng)建所述安全應(yīng)用程序的一個(gè)用戶態(tài)的主程序進(jìn)程。

本實(shí)施例的裝置,可以用于執(zhí)行圖2所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

圖7為本發(fā)明安全應(yīng)用程序的啟動(dòng)裝置實(shí)施例二的結(jié)構(gòu)示意圖,如圖7所示,本實(shí)施例的裝置在圖6所示裝置結(jié)構(gòu)的基礎(chǔ)上,進(jìn)一步地,所述啟動(dòng)裝置包括:病毒處理模塊14,用于枚舉所有注冊(cè)表啟動(dòng)項(xiàng);匹配注冊(cè)表鍵值內(nèi)容是否存在字符串chsbssvc;如果注冊(cè)表鍵值內(nèi)容中存在字符串chsbssvc,則刪除鍵值中包含所述字符串chsbssvc的注冊(cè)表啟動(dòng)項(xiàng)。

本實(shí)施例的裝置,可以用于執(zhí)行圖3所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理和技術(shù)效果類似,此處不再贅述。

本發(fā)明實(shí)施例還提供一種電子設(shè)備,圖8為本發(fā)明電子設(shè)備一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,可以實(shí)現(xiàn)本發(fā)明圖1、圖2或圖3所示實(shí)施例的流程,如圖8所示,上述電子設(shè)備可以包括:殼體41、處理器42、存儲(chǔ)器43、電路板44和電源電路45,其中,電路板44安置在殼體41圍成的空間內(nèi)部,處理器42和存儲(chǔ)器43設(shè)置在電路板44上;電源電路45,用于為上述電子設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器43用于存儲(chǔ)可執(zhí)行程序代碼;處理器42通過讀取存儲(chǔ)器43中存儲(chǔ)的可執(zhí)行程序代碼來運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,用于執(zhí)行前述任一實(shí)施例所述的安全應(yīng)用程序的啟動(dòng)方法。

處理器42對(duì)上述步驟的具體執(zhí)行過程以及處理器42通過運(yùn)行可執(zhí)行程序代碼來進(jìn)一步執(zhí)行的步驟,可以參見本發(fā)明圖1-3所示實(shí)施例的描述,在此不再贅述。

該電子設(shè)備以多種形式存在,包括但不限于:

(1)移動(dòng)通信設(shè)備:這類設(shè)備的特點(diǎn)是具備移動(dòng)通信功能,并且以提供話音、數(shù)據(jù)通信為主要目標(biāo)。這類終端包括:智能手機(jī)(例如iPhone)、多媒體手機(jī)、功能性手機(jī),以及低端手機(jī)等。

(2)超移動(dòng)個(gè)人計(jì)算機(jī)設(shè)備:這類設(shè)備屬于個(gè)人計(jì)算機(jī)的范疇,有計(jì)算和處理功能,一般也具備移動(dòng)上網(wǎng)特性。這類終端包括:PDA、MID和UMPC設(shè)備等,例如iPad。

(3)便攜式娛樂設(shè)備:這類設(shè)備可以顯示和播放多媒體內(nèi)容。該類設(shè)備包括:音頻、視頻播放器(例如iPod),掌上游戲機(jī),電子書,以及智能玩具和便攜式車載導(dǎo)航設(shè)備。

(4)服務(wù)器:提供計(jì)算服務(wù)的設(shè)備,服務(wù)器的構(gòu)成包括處理器、硬盤、內(nèi)存、系統(tǒng)總線等,服務(wù)器和通用的計(jì)算機(jī)架構(gòu)類似,但是由于需要提供高可靠的服務(wù),因此在處理能力、穩(wěn)定性、可靠性、安全性、可擴(kuò)展性、可管理性等方面要求較高。

(5)其他具有數(shù)據(jù)交互功能的電子設(shè)備。

需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

本說明書中的各個(gè)實(shí)施例均采用相關(guān)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說明即可。

在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認(rèn)為是用于實(shí)現(xiàn)邏輯功能的可執(zhí)行指令的定序列表,可以具體實(shí)現(xiàn)在任何計(jì)算機(jī)可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如基于計(jì)算機(jī)的系統(tǒng)、包括處理器的系統(tǒng)或其他可以從指令執(zhí)行系統(tǒng)、裝置或設(shè)備取指令并執(zhí)行指令的系統(tǒng))使用,或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。就本說明書而言,″計(jì)算機(jī)可讀介質(zhì)″可以是任何可以包含、存儲(chǔ)、通信、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用的裝置。計(jì)算機(jī)可讀介質(zhì)的更具體的示例(非窮盡性列表)包括以下:具有一個(gè)或多個(gè)布線的電連接部(電子裝置),便攜式計(jì)算機(jī)盤盒(磁裝置),隨機(jī)存取存儲(chǔ)器(RAM),只讀存儲(chǔ)器(ROM),可擦除可編輯只讀存儲(chǔ)器(EPROM或閃速存儲(chǔ)器),光纖裝置,以及便攜式光盤只讀存儲(chǔ)器(CDROM)。另外,計(jì)算機(jī)可讀介質(zhì)甚至可以是可在其上打印所述程序的紙或其他合適的介質(zhì),因?yàn)榭梢岳缤ㄟ^對(duì)紙或其他介質(zhì)進(jìn)行光學(xué)掃描,接著進(jìn)行編輯、解譯或必要時(shí)以其他合適方式進(jìn)行處理來以電子方式獲得所述程序,然后將其存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中。

應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實(shí)現(xiàn)。

在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實(shí)現(xiàn)。例如,如果用硬件來實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場(chǎng)可編程門陣列(FPGA)等。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory,ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory,RAM)等。

以上所述,僅為本發(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)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
通河县| 衡南县| 新竹县| 三河市| 陈巴尔虎旗| 泌阳县| 大英县| 阳春市| 永清县| 吉林市| 青岛市| 保德县| 肇州县| 衡阳市| 扶余县| 沾益县| 扎囊县| 象山县| 缙云县| 神池县| 中江县| 桐乡市| 灵璧县| 松阳县| 南雄市| 嘉鱼县| 崇州市| 舞阳县| 民勤县| 东辽县| 保德县| 常宁市| 灵寿县| 永德县| 鄂尔多斯市| 潜江市| 长寿区| 镇江市| 河北区| 江达县| 淮安市|