• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種程序漏洞的檢測方法、終端及服務器技術

    技術編號:15691360 閱讀:62 留言:0更新日期:2017-06-24 04:30
    本申請提供了一種程序漏洞的檢測方法、終端及服務器。其方法包括:根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。根據本發明專利技術的技術方案,提高了程序漏洞的檢測效率。

    Method, terminal and server for detecting program vulnerability

    The present application provides a method for detecting a program vulnerability, a terminal and a server. The method comprises the following steps: according to preset vulnerability detection program rules, to determine the initial conditions corresponding to the loopholes in rules and end conditions; according to the initial statement of initial conditions corresponding to the detection rules determine the vulnerability to test procedures; to determine the location of the initial detection of sentence, the initial statement including position detection the initial detection statement corresponding to the register name; to the initial detection statement as a starting point, the order tracking program to be detected; tracking stop condition is detected, the data flow path of recording the initial detection statement of the position and the statement to the end of the initial detection conditions, and end detection. According to the technical proposal of the invention, the detection efficiency of the program loophole is improved.

    【技術實現步驟摘要】
    一種程序漏洞的檢測方法、終端及服務器
    本專利技術涉及信息安全領域,具體而言,涉及一種程序漏洞的檢測方法、終端及服務器。
    技術介紹
    隨著智能終端的迅猛發展,智能終端上各種APP程序不斷增多,信息安全的隱患也不斷增大,因此,在每一款APP程序正式發布之前,都需要對程序的漏洞進行檢測。現有的檢測方法通常為確定漏洞的起點函數和終點函數,在程序中尋找該起點函數,然后根據起點函數進行逆向查找,找到對應的終點函數,再進行分析是否為漏洞;若起點函數為通用函數,則會導致逆向查找的工作量大大增加,且需要技術人員對查找出的每一條路徑都進行分析,費時費力。因此,通過逆向查找的方法檢測程序中的漏洞時,若逆向查找的起點函數為通用函數時,容易造成檢測效率低的問題。
    技術實現思路
    本專利技術的主要目的在于提供一種程序漏洞的檢測方法、終端及服務器,以解決檢測智能終端APP程序中的漏洞檢測效率低的問題。為了實現上述目的,根據本專利技術的一個方面,提供了一種程序漏洞的檢測方法,該方法包括:根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。進一步地,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,具體包括:以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,若追蹤檢測過程中檢測到跳轉語句,則根據跳轉語句的跳轉邏輯進行跳轉;跳轉后按照待檢測程序的執行順序繼續追蹤檢測。進一步地,若追蹤檢測過程中檢測到按照第一檢測語句順序執行的語句為跳轉語句,且跳轉語句對應的跳轉邏輯為賦值邏輯,則根據跳轉語句的跳轉邏輯進行跳轉并在跳轉后按照待檢測程序的執行順序繼續追蹤檢測;且確定跳轉至所述第一檢測語句對應的跳轉語句為第一跳轉語句;將所述第一跳轉語句順序執行對應的檢測語句作為第二檢測語句,對第二檢測語句進行順序追蹤檢測。進一步地,所述追蹤檢測到結束條件,具體包括:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;且追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件;追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;追蹤檢測所述第二檢測語句,未檢測到結束條件。進一步地,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,具體包括:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,且追蹤檢測所述第二檢測語句,檢測到結束條件;則分別記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;以及所述初始檢測語句的位置,所述通過第二檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,追蹤檢測所述第二檢測語句,未檢測到結束條件;則記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件,追蹤檢測所述第二檢測語句,檢測到結束條件;則記錄所述初始檢測語句的位置,所述通過第二檢測語句檢測到結束條件對應的數據流動路徑。進一步地,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,還包括:以所述初始檢測語句為起點,順序追蹤檢測,若追蹤檢測到的跳轉語句的次數大于設定的次數閾值,則結束追蹤檢測;若不大于設定的次數閾值,則繼續追蹤檢測。進一步地,確定所述初始檢測語句的位置之前,還包括:對待檢測程序的語句進行分析,確定所述待檢測程序中的跳轉語句;將所述待檢測程序中每兩個跳轉語句之間的順序執行語句集合作為一個跳轉語句塊;根據跳轉語句的邏輯關系確定各跳轉語句塊之間的跳轉邏輯關系。進一步地,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,具體包括:以所述初始檢測語句為起點,根據跳轉語句塊的執行順序以及所述跳轉語句塊之間的跳轉邏輯關系對所述待檢測程序進行順序追蹤檢測。進一步地,對待檢測程序的語句進行分析,確定所述待檢測程序中的跳轉語句,具體包括:將所述待檢測程序語句編譯為中間語言;對所述中間語言進行分析,確定所述中間語言的跳轉語句。進一步地,根據預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件,具體包括:將所述漏洞規則對應的初始條件和結束條件形成配置文件。進一步地,所述配置文件中的初始條件包括至少一個漏洞觸發條件;所述配置文件中的結束條件包括至少一個漏洞形成條件。為了實現上述目的,根據本專利技術的另一方面,還提供了一種程序漏洞的檢測終端,該終端包括:規則識別模塊,用于根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;所述規則識別模塊,還用于根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;語句分析模塊,用于確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;漏洞檢測模塊,用于以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;檢測記錄模塊,用于追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。進一步地,所述漏洞檢測模塊,具體用于:以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,若追蹤檢測過程中檢測到跳轉語句,則根據跳轉語句的跳轉邏輯進行跳轉;跳轉后按照待檢測程序的執行順序繼續追蹤檢測。進一步地,所述漏洞檢測模塊,還用于:若追蹤檢測過程中檢測到按照第一檢測語句順序執行的語句為跳轉語句,且跳轉語句對應的跳轉邏輯為賦值邏輯,則根據跳轉語句的跳轉邏輯進行跳轉并在跳轉后按照待檢測程序的執行順序繼續追蹤檢測;且確定跳轉至所述第一檢測語句對應的跳轉語句為第一跳轉語句;將所述第一跳轉語句順序執行對應的檢測語句作為第二檢測語句,對第二檢測語句進行順序追蹤檢測。進一步地,所述檢測記錄模塊,具體用于:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;且追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件;追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;追蹤檢測所述第二檢測語句,未檢測到結束條件。進一步地,所述檢測記錄模塊,具體用于:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,且追蹤檢測所述第二檢測語句,檢測到結束條件;則分別記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;以及所述初始檢測語句的位置,所述通過第二檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,追蹤檢測所述第二檢測語句,未檢測到結束條件;則記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件,追蹤檢測所述第二檢測語句,檢測到結束條件;則本文檔來自技高網...
    一種程序漏洞的檢測方法、終端及服務器

    【技術保護點】
    一種程序漏洞的檢測方法,其特征在于,包括:根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。

    【技術特征摘要】
    1.一種程序漏洞的檢測方法,其特征在于,包括:根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。2.如權利要求1所述的方法,其特征在于,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,具體包括:以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,若追蹤檢測過程中檢測到跳轉語句,則根據跳轉語句的跳轉邏輯進行跳轉;跳轉后按照待檢測程序的執行順序繼續追蹤檢測。3.如權利要求2所述的方法,其特征在于,若追蹤檢測過程中檢測到按照第一檢測語句順序執行的語句為跳轉語句,且跳轉語句對應的跳轉邏輯為賦值邏輯,則根據跳轉語句的跳轉邏輯進行跳轉并在跳轉后按照待檢測程序的執行順序繼續追蹤檢測;且確定跳轉至所述第一檢測語句對應的跳轉語句為第一跳轉語句;將所述第一跳轉語句順序執行對應的檢測語句作為第二檢測語句,對第二檢測語句進行順序追蹤檢測。4.如權利要求3所述的方法,其特征在于,所述追蹤檢測到結束條件,具體包括:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;且追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件;追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;追蹤檢測所述第二檢測語句,未檢測到結束條件。5.如權利要求4所述的方法,其特征在于,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,具體包括:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,且追蹤檢測所述第二檢測語句,檢測到結束條件;則分別記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;以及所述初始檢測語句的位置,所述通過第二檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,追蹤檢測所述第二檢測語句,未檢測到結束條件;則記錄所述初始檢測語句的位置,所述通過第一檢測語句檢測到結束條件對應的數據流動路徑;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件,追蹤檢測所述第二檢測語句,檢測到結束條件;則記錄所述初始檢測語句的位置,所述通過第二檢測語句檢測到結束條件對應的數據流動路徑。6.如權利要求1~5任一所述的方法,其特征在于,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,還包括:以所述初始檢測語句為起點,順序追蹤檢測,若追蹤檢測到的跳轉語句的次數大于設定的次數閾值,則結束追蹤檢測;若不大于設定的次數閾值,則繼續追蹤檢測。7.如權利要求6所述的方法,其特征在于,確定所述初始檢測語句的位置之前,還包括:對待檢測程序的語句進行分析,確定所述待檢測程序中的跳轉語句;將所述待檢測程序中每兩個跳轉語句之間的順序執行語句集合作為一個跳轉語句塊;根據跳轉語句的邏輯關系確定各跳轉語句塊之間的跳轉邏輯關系。8.如權利要求7所述的方法,其特征在于,以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,具體包括:以所述初始檢測語句為起點,根據跳轉語句塊的執行順序以及所述跳轉語句塊之間的跳轉邏輯關系對所述待檢測程序進行順序追蹤檢測。9.如權利要求8所述的方法,其特征在于,對待檢測程序的語句進行分析,確定所述待檢測程序中的跳轉語句,具體包括:將所述待檢測程序語句編譯為中間語言;對所述中間語言進行分析,確定所述中間語言的跳轉語句。10.如權利要求1~5任一所述的方法,其特征在于,根據預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件,具體包括:將所述漏洞規則對應的初始條件和結束條件形成配置文件。11.如權利要求10所述的方法,其特征在于,所述配置文件中的初始條件包括至少一個漏洞觸發條件;所述配置文件中的結束條件包括至少一個漏洞形成條件。12.一種程序漏洞的檢測終端,其特征在于,該終端包括:規則識別模塊,用于根據待檢測程序預先設定的漏洞規則,確定所述漏洞規則對應的初始條件和結束條件;所述規則識別模塊,還用于根據所述漏洞規則對應的初始條件確定所述待檢測程序的初始檢測語句;語句分析模塊,用于確定所述初始檢測語句的位置,其中初始檢測語句的位置包括所述初始檢測語句對應的寄存器名稱;漏洞檢測模塊,用于以所述初始檢測語句為起點,順序追蹤檢測待檢測程序;檢測記錄模塊,用于追蹤檢測到結束條件,記錄所述初始檢測語句的位置以及所述初始檢測語句至所述結束條件的數據流動路徑,并結束檢測。13.如權利要求12所述的終端,其特征在于,所述漏洞檢測模塊,具體用于:以所述初始檢測語句為起點,順序追蹤檢測待檢測程序,若追蹤檢測過程中檢測到跳轉語句,則根據跳轉語句的跳轉邏輯進行跳轉;跳轉后按照待檢測程序的執行順序繼續追蹤檢測。14.如權利要求13所述的終端,其特征在于,所述漏洞檢測模塊,還用于:若追蹤檢測過程中檢測到按照第一檢測語句順序執行的語句為跳轉語句,且跳轉語句對應的跳轉邏輯為賦值邏輯,則根據跳轉語句的跳轉邏輯進行跳轉并在跳轉后按照待檢測程序的執行順序繼續追蹤檢測;且確定跳轉至所述第一檢測語句對應的跳轉語句為第一跳轉語句;將所述第一跳轉語句順序執行對應的檢測語句作為第二檢測語句,對第二檢測語句進行順序追蹤檢測。15.如權利要求14所述的終端,其特征在于,所述檢測記錄模塊,具體用于:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;且追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,未檢測到結束條件;追蹤檢測所述第二檢測語句,檢測到結束條件;或,追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件;追蹤檢測所述第二檢測語句,未檢測到結束條件。16.如權利要求15所述的終端,其特征在于,所述檢測記錄模塊,具體用于:追蹤檢測第一檢測語句對應的跳轉語句,檢測到結束條件,且追蹤檢測所述第二檢測語句,檢測到結束條件;則分別記錄所述初始檢測語句的位置,所述通過...

    【專利技術屬性】
    技術研發人員:陳晉福
    申請(專利權)人:阿里巴巴集團控股有限公司
    類型:發明
    國別省市:開曼群島,KY

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 精品无码成人片一区二区98| 影音先锋无码a∨男人资源站| 精品无码国产AV一区二区三区 | 久久午夜福利无码1000合集| 亚洲日韩精品无码专区加勒比| 四虎成人精品无码永久在线 | 久久亚洲中文字幕无码| 日韩电影无码A不卡| 日韩人妻无码精品久久免费一| heyzo高无码国产精品| 精品久久久久久无码专区| 亚洲国产综合无码一区| 亚洲AV无码专区在线电影成人| 13小箩利洗澡无码视频网站免费| 国产成人无码AV片在线观看| 无码精品国产一区二区三区免费| 国产精品无码一区二区在线观一 | 99精品国产在热久久无码| r级无码视频在线观看| 无码av无码天堂资源网| 亚洲av日韩av无码av| 亚洲国产精品无码一线岛国| 久久无码AV中文出轨人妻| a级毛片无码免费真人| 中文无码字幕中文有码字幕| 熟妇人妻中文字幕无码老熟妇| 中文无码久久精品| a级毛片无码免费真人久久| 下载天堂国产AV成人无码精品网站 | 日韩放荡少妇无码视频| 精品人妻系列无码天堂| 无码国产精品一区二区免费16| 国产成人精品无码免费看 | 日韩乱码人妻无码系列中文字幕 | 成人无码区免费A片视频WWW| 无码人妻丰满熟妇精品区| 亚洲av永久无码制服河南实里| 伊人久久无码中文字幕| 日韩欧国产精品一区综合无码| 国产V亚洲V天堂A无码| 国产在线无码一区二区三区视频|