[發(fā)明專利]基于抽象解釋的軟件檢測方法、裝置、計算機設(shè)備和存儲介質(zhì)在審
| 申請?zhí)枺?/td> | 202010523994.0 | 申請日: | 2020-06-10 |
| 公開(公告)號: | CN111708694A | 公開(公告)日: | 2020-09-25 |
| 發(fā)明(設(shè)計)人: | 李隆;朱慶;李世杰;賴建新 | 申請(專利權(quán))人: | XC5香港有限公司;相持軟件(深圳)有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F21/56 |
| 代理公司: | 深圳市中智立信知識產(chǎn)權(quán)代理有限公司 44427 | 代理人: | 丁麗琴 |
| 地址: | 中國香港灣仔*** | 國省代碼: | 香港;81 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 抽象 解釋 軟件 檢測 方法 裝置 計算機 設(shè)備 存儲 介質(zhì) | ||
1.一種基于抽象解釋的軟件檢測方法,其特征在于,包括:
獲取待檢測軟件的軟件源代碼;所述軟件源代碼上標(biāo)注有抽象解釋檢測需求信息;
根據(jù)所述抽象解釋檢測需求信息對所述待檢測軟件進(jìn)行檢測,得到檢測結(jié)果。
2.根據(jù)權(quán)利要求1所述的軟件檢測方法,其特征在于,所述根據(jù)所述抽象解釋檢測需求信息對所述待檢測軟件進(jìn)行檢測,得到檢測結(jié)果的步驟,具體包括:
將所述待檢測軟件的軟件源代碼轉(zhuǎn)化為以靜態(tài)單賦值形式表示的軟件中介碼;
將所述抽象解釋檢測需求信息轉(zhuǎn)化為以靜態(tài)單賦值形式表示的檢測需求中介碼;
根據(jù)所述檢測需求中介碼對所述軟件中介碼進(jìn)行檢測分析,得到軟件檢測結(jié)果。
3.根據(jù)權(quán)利要求2所述的軟件檢測方法,其特征在于,所述根據(jù)所述檢測需求中介碼對所述軟件中介碼進(jìn)行檢測分析,得到軟件檢測結(jié)果的步驟,具體包括:
遍歷所述軟件中介碼的所有語句,并確定存在抽象解釋檢測需求的目標(biāo)語句;
根據(jù)所述檢測需求中介碼獲取與所述目標(biāo)語句關(guān)聯(lián)的關(guān)聯(lián)語句的上下文信息;
根據(jù)所述上下文信息以及所述檢測需求中介碼對所述軟件中介碼進(jìn)行檢測分析,得到軟件檢測結(jié)果。
4.根據(jù)權(quán)利要求3所述的軟件檢測方法,其特征在于,所述根據(jù)所述檢測需求中介碼獲取與所述目標(biāo)語句關(guān)聯(lián)的關(guān)聯(lián)語句的上下文信息的步驟,具體包括:
判斷在所述目標(biāo)語句上所述抽象解釋檢測需求的所需信息是否完整;
當(dāng)判斷所述目標(biāo)語句上所述抽象解釋檢測需求的所需信息不完整時,根據(jù)所述檢測需求中介碼獲取與所述目標(biāo)語句關(guān)聯(lián)的關(guān)聯(lián)語句的上下文信息。
5.一種基于抽象解釋的軟件檢測裝置,其特征在于,包括:
軟件源代碼獲取單元,用于獲取待檢測軟件的軟件源代碼;所述軟件源代碼上標(biāo)注有抽象解釋檢測需求信息;
軟件檢測單元,用于根據(jù)所述抽象解釋檢測需求信息對所述待檢測軟件進(jìn)行檢測,得到檢測結(jié)果。
6.根據(jù)權(quán)利要求5所述的一種軟件檢測裝置。其特征在于,所述軟件檢測單元包括:
軟件源代碼轉(zhuǎn)化次單元,用于將所述待檢測軟件的軟件源代碼轉(zhuǎn)化為以靜態(tài)單賦值形式表示的軟件中介碼;
檢測需求信息轉(zhuǎn)化次單元,用于將所述抽象解釋檢測需求信息轉(zhuǎn)化為以靜態(tài)單賦值形式表示的檢測需求中介碼;
軟件檢測次單元,用于根據(jù)所述檢測需求中介碼對所述軟件中介碼進(jìn)行檢測分析,得到軟件檢測結(jié)果。
7.根據(jù)權(quán)利要求6所述的一種軟件檢測裝置,其特征在于,所述軟件檢測次單元包括:
目標(biāo)語句確定模塊,用于遍歷所述軟件中介碼的所有語句,并確定存在抽象解釋檢測需求的目標(biāo)語句;
上下文信息獲取模塊,用于根據(jù)所述檢測需求中介碼獲取與所述目標(biāo)語句關(guān)聯(lián)的關(guān)聯(lián)語句的上下文信息;
軟件檢測模塊,用于根據(jù)所述上下文信息以及所述檢測需求中介碼對所述軟件中介碼進(jìn)行檢測分析,得到軟件檢測結(jié)果。
8.根據(jù)權(quán)利要求7所述的一種軟件檢測裝置,其特征在于,所述上下文信息獲取模塊包括:
信息判斷次模塊,用于判斷在所述目標(biāo)語句上所述抽象解釋檢測需求的所需信息是否完整;
上下文信息獲取次模塊,用于當(dāng)判斷所述目標(biāo)語句上所述抽象解釋檢測需求的所需信息不完整時,根據(jù)所述檢測需求中介碼獲取與所述目標(biāo)語句關(guān)聯(lián)的關(guān)聯(lián)語句的上下文信息。
9.一種計算機設(shè)備,其特征在于,包括存儲器和處理器,所述存儲器中存儲有計算機程序,所述計算機程序被所述處理器執(zhí)行時,使得所述處理器執(zhí)行權(quán)利要求1至4中任一項權(quán)利要求所述基于抽象解釋的軟件檢測方法的步驟。
10.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時,使得所述處理器執(zhí)行權(quán)利要求1至4中任一項權(quán)利要求所述基于抽象解釋的軟件檢測方法的步驟。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于XC5香港有限公司;相持軟件(深圳)有限公司,未經(jīng)XC5香港有限公司;相持軟件(深圳)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010523994.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲介質(zhì)
- 軟件驗證裝置、軟件驗證方法以及軟件驗證程序
- 使用靜態(tài)和動態(tài)惡意軟件分析來擴展惡意軟件的動態(tài)檢測
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測驗軟件的裝置與方法





