[發明專利]利用大數據和神經網絡的軟件分析方法和裝置有效
| 申請號: | 201810107975.2 | 申請日: | 2018-02-02 |
| 公開(公告)號: | CN108229170B | 公開(公告)日: | 2020-05-12 |
| 發明(設計)人: | 馬寧 | 申請(專利權)人: | 中科軟評科技(北京)有限公司 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56;G06F8/41;G06F16/9535;G06F16/955;G06N3/08 |
| 代理公司: | 北京維正專利代理有限公司 11508 | 代理人: | 羅煥清 |
| 地址: | 100070 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 利用 數據 神經網絡 軟件 分析 方法 裝置 | ||
1.一種軟件分析方法,包括:
步驟101,搜索并下載開源代碼;
步驟102,提取所述開源代碼的指紋信息;
步驟103,將所述指紋信息存儲到指紋數據庫中;
步驟104,利用所述指紋數據庫對待分析軟件進行分析,識別其中的開源代碼,并確定識別出的開源代碼的來源;
步驟102具體為:
提取開源代碼的靜態特征和動態特征,基于所述靜態特征和動態特征計算得到開源代碼的指紋信息;
所述靜態特征包括分析開源代碼的語言形式和語法結構而得到的執行路徑信息;
所述動態特征包括開源代碼執行時的執行路徑信息;
提取開源代碼的動態特征包括:
對開源代碼進行編譯,得到二進制代碼,分析所述二進制代碼中的函數調用關系,得到所述動態特征;
步驟104具體為:
識別待分析軟件中的可疑代碼段,采用與所述步驟S102同樣的方式計算得到該代碼段的指紋信息F2;
將所述指紋信息F2與指紋數據庫中的多個指紋信息F1逐一進行比較,從而判斷其是否屬于開源代碼;
如果所述指紋數據庫中存在某一指紋信息F1與所述指紋信息F2相匹配,則判斷該代碼段屬于開源代碼,輸出該開源代碼的來源。
2.根據權利要求1所述的軟件分析方法,其特征在于,基于所述靜態特征和動態特征計算得到開源代碼的指紋信息包括:
對所述靜態特征和動態特征進行哈希運算,得到靜態特征哈希值和動態特征哈希值;
將所述靜態特征哈希值和動態特征哈希值進行合并,從而得到所述開源代碼的指紋信息。
3.根據權利要求2所述的軟件分析方法,其特征在于,通過以下步驟得到所述動態特征哈希值:
對開源代碼進行編譯,得到二進制代碼;
提取所述二進制代碼中的函數調用關系,將其用樹狀結構表示,該樹狀結構為動態特征M;
從所述動態特征M中刪除無效信息,得到有效動態特征M1;
計算所述有效動態特征M1的哈希值,作為所述動態特征哈希值。
4.根據權利要求3所述的軟件分析方法,其特征在于,所述無效信息包括:與所述二進制代碼的輸入和輸出無關的函數,未被調用的函數,以及代碼中的說明和備注信息。
5.根據權利要求1所述的軟件分析方法,其特征在于:
在步驟104中,采用基于人工智能預先構建的多個感知單元對待分析軟件進行分析;
其中,所述多個感知單元預先對所述指紋信息庫中的指紋信息進行學習,在對待分析軟件進行分析時,所述多個感知單元基于學習結果,將待分析軟件中的代碼與指紋庫中的指紋信息進行比對,從而識別待分析軟件中的開源代碼,并確定識別出的開源代碼的來源。
6.一種軟件分析裝置,包括:
下載裝置,搜索并下載開源代碼;
提取裝置,提取所述開源代碼的指紋信息;
存儲裝置,將所述指紋信息存儲到指紋數據庫中;
識別裝置,利用所述指紋數據庫對待分析軟件進行分析,識別其中的開源代碼,并確定識別出的開源代碼的來源;
所述提取裝置提取開源代碼的靜態特征和動態特征,基于所述靜態特征和動態特征計算得到開源代碼的指紋信息;所述靜態特征包括分析開源代碼的語言形式和語法結構而得到的執行路徑信息;所述動態特征包括開源代碼執行時的執行路徑信息;所述提取裝置對開源代碼進行編譯,得到二進制代碼,分析所述二進制代碼中的函數調用關系,得到所述動態特征;
所述識別裝置識別待分析軟件中的可疑代碼段,采用與所述提取裝置同樣的方式計算得到該代碼段的指紋信息F2;將所述指紋信息F2與指紋數據庫中的多個指紋信息F1逐一進行比較,從而判斷其是否屬于開源代碼;如果所述指紋數據庫中存在某一指紋信息F1與所述指紋信息F2相匹配,則判斷該代碼段屬于開源代碼,輸出該開源代碼的來源。
7.一種計算機系統,包括處理器、存儲器以及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現1-5之一所述的方法。
8.一種計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現權利要求1-5之一所述的方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中科軟評科技(北京)有限公司,未經中科軟評科技(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810107975.2/1.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





