[發明專利]基于基本塊上下文信息的二進制函數差分分析方法有效
| 申請號: | 202010574982.0 | 申請日: | 2020-06-22 |
| 公開(公告)號: | CN111913718B | 公開(公告)日: | 2022-02-11 |
| 發明(設計)人: | 范銘;徐一飛;劉烴 | 申請(專利權)人: | 西安交通大學 |
| 主分類號: | G06F8/53 | 分類號: | G06F8/53;G06F11/36 |
| 代理公司: | 西安通大專利代理有限責任公司 61200 | 代理人: | 王艾華 |
| 地址: | 710049 *** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 基本 上下文 信息 二進制 函數 分析 方法 | ||
本發明公開了一種基于基本塊上下文信息的二進制函數差分分析方法,本發明利用哈希值進行基本塊初步匹配,再結合基本塊上下文信息對可能發生錯位匹配的基本塊進行精確對位匹配,并過濾匹配成功的基本塊以完成函數差分分析。首先,對函數二進制代碼進行反匯編及標準化處理;其次,以基本塊為單位計算指令哈希并進行基本塊初步匹配;然后,通過結合上下文信息的基本塊匹配算法對可能發生錯位匹配的基本塊進行匹配;最后,收集兩函數中未能匹配的基本塊以完成函數差分分析。本方法的目標是在二進制函數間進行精準的基本塊匹配,以完成準確的函數差分分析,有效解決了現有差分分析方法中存在的由基本塊錯位匹配導致的差分結果不準確問題。
技術領域
本發明屬于二進制程序分析技術領域,特別涉及一種基于基本塊上下文信息的二進制函數差分分析方法。
背景技術
二進制函數差分分析技術定量的度量了兩個給定二進制函數間(或兩段二進制代碼間)的差異,并產生細粒度的基本塊級別的匹配。其廣泛應用于各類二進制分析工作,例如漏洞檢測,補丁分析等,是二進制程序分析領域內的一項關鍵且基礎的技術。基本塊匹配是二進制差分分析技術的核心,基本塊匹配試圖將兩個函數中相同的基本塊進行匹配,函數間未匹配的基本塊被認為是差異所在。然而,若兩個函數在不同位置存在多個相同基本塊,就可能出現錯位匹配了相同基本塊的問題,這導致基本塊匹配準確率降低,對函數差分分析結果的準確性帶來影響。
現有的靜態差分分析方法多是依賴于代碼語法信息,并未考慮到基本塊間的相對位置關系以及函數控制流結構信息。此類方法由于沒有考量基本塊在函數中的對應位置,在基本塊匹配過程中就很可能發生基本塊錯位匹配,導致差分分析結果不準確。
發明內容
為了解決上述由于基本塊錯位匹配導致差分分析結果不準確的問題,本發明提出了一種基于基本塊上下文信息的二進制函數差分分析方法,利用哈希值進行初步基本塊匹配,再結合基本塊上下文鄰接節點信息對可能發生錯位匹配的基本塊進行精確對位匹配,并通過過濾匹配成功的基本塊完成函數差分分析。
為了實現上述目的,本發明采用的技術方案是:
一種基于基本塊上下文信息的二進制函數差分分析方法,包括如下步驟:
S1:通過反匯編工具對輸入的兩個待差分二進制函數進行反匯編處理,分別構建出兩函數以匯編指令表示的控制流圖;
S2:對函數基本塊信息進行提取及預處理,包括函數控制流圖信息收集,指令標準化,基本塊哈希值計算;
S3:利用基本塊哈希值完成兩函數相同基本塊的初步匹配,即將兩函數中哈希值相同的基本塊進行匹配;
S4:針對基本塊初步匹配結果,判斷是否存在可能發生錯位匹配的基本塊,如果存在,則結合該基本塊上下文信息再次進行匹配;如果不存在,則進入差分結果收集步驟;
S5:對于可能發生錯位匹配的基本塊,通過結合該基本塊的上下文信息,計算兩函數中與該基本塊鄰接的局部區域的相似度,再根據相似度得分,利用貪心策略完成基本塊準確匹配,包括結合上下文信息的相似度計算和基本塊貪心匹配;
S6:根據基本塊匹配結果,過濾掉兩函數中所有匹配成功的基本塊對,收集兩個函數中剩余未得到匹配的基本塊,并將這些基本塊作為函數差分分析結果,至此完成了函數差分分析,算法結束。
本發明進一步的改進在于:所述步驟S2中,對函數基本塊信息進行提取及預處理,獲取基本塊鄰接節點信息,完成基本塊指令標準化及哈希值計算,步驟S2具體包括:
S201:控制流圖信息提取:通過對函數控制流圖的分析,收集如下信息:
1)基本塊指令信息,一個基本塊內的所有匯編指令;
2)基本塊結構信息,一個基本塊在控制流圖中的所有鄰接基本塊;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安交通大學,未經西安交通大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010574982.0/2.html,轉載請聲明來源鉆瓜專利網。
- 信息記錄介質、信息記錄方法、信息記錄設備、信息再現方法和信息再現設備
- 信息記錄裝置、信息記錄方法、信息記錄介質、信息復制裝置和信息復制方法
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄設備、信息重放設備、信息記錄方法、信息重放方法、以及信息記錄介質
- 信息存儲介質、信息記錄方法、信息重放方法、信息記錄設備、以及信息重放設備
- 信息存儲介質、信息記錄方法、信息回放方法、信息記錄設備和信息回放設備
- 信息記錄介質、信息記錄方法、信息記錄裝置、信息再現方法和信息再現裝置
- 信息終端,信息終端的信息呈現方法和信息呈現程序
- 信息創建、信息發送方法及信息創建、信息發送裝置





