[發明專利]跨架構的嵌入式設備固件未修補漏洞檢測方法及系統在審
| 申請號: | 202010578595.4 | 申請日: | 2020-06-23 |
| 公開(公告)號: | CN111752586A | 公開(公告)日: | 2020-10-09 |
| 發明(設計)人: | 谷大武;金宣成;張一葦;李卷孺;陳澤元 | 申請(專利權)人: | 上海交通大學 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65;G06F8/71;G06F21/57 |
| 代理公司: | 上海交達專利事務所 31201 | 代理人: | 王毓理;王錫麟 |
| 地址: | 200240 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 架構 嵌入式 設備 固件未 修補 漏洞 檢測 方法 系統 | ||
1.一種跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征在于,首先采集新版本和舊版本的固件,選取兩個對應的新舊版本程序二進制文件作為分析對象,將兩個二進制文件提升到LLVM IR,基于LLVM IR展開分析,即對兩個版本固件的中間語言代碼進行函數級別的構造相似性分析,識別出構造相似函數;然后對非構造相似函數進行函數語義相似性分析,識別出語義相似函數;最后對得到的語義相似函數進行差異分析,將差異分析的結果與差異模板進行匹配,完成未修補漏洞檢測;
所述的匹配是指:將差異基本塊與未修補漏洞差異模板進行包括結構相似性分析以及語義相似性分析的定制化匹配。
2.根據權利要求1所述的跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征是,所述的未修補漏洞差異模板以及定制化匹配包括:
模板一:加入了icmp指令與空指針進行比較,新加入了一個含有錯誤處理代碼的分支;其定制化匹配為:采用基于控制流圖的結構相似性比較,并判斷新增的指令是否為條件判斷指令;
模板二:將內存釋放函數的調用指令從代碼中進行了刪除;其定制化匹配為:采用直接的指令比較,判斷是否刪除對單指針參數函數調用指令的刪除;
模板三:加入了對指針置零的store指令;其定制化匹配為:判斷是否加入了對內存進行置零的指令;
模板四:加入了對內存操作函數的參數進行算術運算的指令;其定制化匹配為:判斷是否有加入對內存操作函數的參數進行算術運算的指令;
模板五:加入了bitcast指令,進行指針的類型轉換;其定制化匹配為:判斷是否僅新加入進行類型轉換的指令;
模板六:進行了icmp指令判定條件的替換;其定制化匹配為:判斷是否替換條件判斷指令的條件;
模板七:加入了兩個函數調用,傳入的為同一參數;其定制化匹配為:判斷是否新增兩個將同一變量作為參數的函數調用指令。
3.根據權利要求1所述的跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征是,所述的提升是指:將二進制程序通過代碼提升轉換為中間語言表示。
4.根據權利要求1所述的跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征是,所述的函數級別的構造相似性分析是指:分析兩個目標中間語言在函數級別上的構造相似性,過程內的控制流圖相似性。
5.根據權利要求1所述的跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征是,所述的函數語義相似性分析是指:進行函數級別的符號執行,對返回值符號表達式、內部函數調用參數的符號表達式進行相似性分析。
6.根據權利要求1所述的跨架構的嵌入式設備固件未修補漏洞檢測方法,其特征是,所述的差異分析是指:進行基本塊級別的語義相似性分析,去除識別出來的語義相似基本塊,得到差異基本塊即差異分析的結果。
7.一種實現上述任一權利要求所述方法的系統,其特征在于,包括:預處理單元、非構造相似函數識別單元、語義相似函數識別單元、差異分析單元以及差異模板匹配單元,其中:預處理單元與非構造相似函數識別單元相連并傳輸中間語言表示,非構造相似函數識別單元與語義相似函數識別單元相連并傳輸去掉構造相似函數后的非構造相似函數集合,語義相似函數識別單元與差異分析單元相連并傳輸篩選后的非構造相似但是語義相似的函數對,差異分析單元與差異模板匹配單元相連,并傳輸分析得到的差異基本塊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海交通大學,未經上海交通大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010578595.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種磁場調制升頻式的電磁俘能裝置
- 下一篇:一種無紡布生產裝置





