[發明專利]漏洞檢測方法、漏洞檢測裝置及服務器在審
| 申請號: | 201710560225.6 | 申請日: | 2017-07-11 |
| 公開(公告)號: | CN107358106A | 公開(公告)日: | 2017-11-17 |
| 發明(設計)人: | 潘劍鋒;閆廣祿;范曉草 | 申請(專利權)人: | 北京奇虎科技有限公司 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57 |
| 代理公司: | 北京市立方律師事務所11330 | 代理人: | 王增鑫 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 漏洞 檢測 方法 裝置 服務器 | ||
技術領域
本發明涉及計算機技術領域,具體而言,本發明涉及漏洞檢測方法、漏洞檢測裝置及服務器。
背景技術目前,
隨著計算機技術的不斷發展,很多惡意程序(例如,計算機病毒、后門程序、木馬、間諜軟件以及廣告軟件等)利用漏洞植入到目標程序中,從而導致目標程序癱瘓,給用戶操作帶來不便,或者導致用戶私人信息泄漏,給用戶的人身財產安全帶來隱患,等等;因此,實時地對目標程序中存在的漏洞進行檢測和修復顯得尤為重要。
現有技術在漏洞檢測時,首先,確定運行路徑,其次,對各個運行路徑進行漏洞檢測,查找各個運行路徑中存在的漏洞,并對漏洞進行修復,從而減低惡意程序入侵目標程序的幾率。為了更全面有效地檢測目標程序中存在的漏洞,需要盡可能地確定出更多的運行路徑,從而可通過盡可能全面的運行路徑對目標程序進行全方位的漏洞檢測;同時,在實際應用中,一個程序所包含的運行路徑的數量十分龐大,且并不是每個運行路徑都是“透明”的,因此,在漏洞檢測的過程中,需要不斷地確定出新的運行路徑。
通常,現有技術確定新的運行路徑的方法是:將多個樣本數據輸入到目標程序中運行,通過分析這些樣本數據在目標程序中的運行路徑,從而確定出運行路徑,其中,這多個樣本數據是根據相應的編碼規則生成的,現有技術在確定運行路徑時,為了獲得大量的樣本數據,需要不斷地根據編譯規則生成樣本數據,即需要進行大數量級的樣本數據的生成過程,因此,現有技術在獲取樣本數據時耗費了大量的時間和資源。
同時,由于需要將每個樣本數據輸入目標程序運行生成運行路徑,并根據確定的運行路徑對目標程序進行漏洞檢測,因此,由于現有技術中在獲取樣本數據時耗費了大量的時間和資源,導致確定運行路徑的效率的低下,進而導致漏洞檢測時的檢測效率低下。
發明內容
本發明針對現有技術的缺點,提出了一種漏洞檢測方法、漏洞檢測裝置及服務器,用于提高針對目標程序漏洞檢測時獲取樣本數據的效率,以及提高確定目標程序的運行路徑的效率,進而提高漏洞檢測時的檢測效率。
本發明實施例提供了一種漏洞檢測方法,包括:
獲取樣本數據,將多個樣本數據分別輸入至目標程序中運行,以確定至少一條運行路徑;
對各個樣本數據進行編譯處理,并基于編譯結果構建新的樣本數據集合;
將樣本數據集合中的各個新的樣本數據分別輸入至目標程序中運行,以確定新的運行路徑;
基于新的運行路徑對目標程序進行檢測,以確定目標程序中存在的漏洞。
優選地,獲取樣本數據步驟,具體包括:
對目標程序進行插樁,并將預先確定的樣本數據符號化;
將符號化的樣本數據輸入至目標程序中運行,監測運行過程中產生的數據流,并在運行路徑的分支處收集路徑約束條件;
對收集到路徑約束條件中的任一條件取反,調用求解器進行求解,生成新的樣本數據。
優選地,獲取樣本數據,將多個樣本數據分別輸入至目標程序中運行,以確定至少一條運行路徑的步驟,具體包括:
將多個樣本數據分別輸入至目標程序中運行,并監測運行過程中產生的各個事件;
將各個事件對應的日志分別打包為數據包發送至相應的硬件中處理,硬件將數據包記錄在預先配置的內存中;
解析數據包,提取數據包中包含的目標代碼片段;
分析目標代碼片段,以確定至少一條運行路徑。
優選地,分析目標代碼片段,以確定至少一條運行路徑的步驟,具體包括:
分析目標代碼片段,以提取與各個樣本數據對應的運行路徑;
將與各個樣本數據對應的運行路徑中的相同運行路徑去重,以確定至少一條運行路徑。
優選地,該方法還包括:
將各個樣本數據對應的運行路徑以位圖的形式存儲;以及
將與各個樣本數據對應的運行路徑中的相同運行路徑去重,以確定至少一條運行路徑的步驟,具體包括:
將各個樣本數據對應的運行路徑的位圖進行比較,若位圖相同,將相同位圖的運行路徑去重,以確定至少一條運行路徑。
優選地,該方法還包括:
若位圖不相同,將不相同位圖的運行路徑對應的樣本數據保存;以及
對各個樣本數據進行編譯處理,并基于編譯結果構建新的樣本數據集合的步驟,具體包括:
對不相同位圖的運行路徑對應的樣本數據進行編譯處理,并基于編譯結果構建新的樣本數據集合。
優選地,對各個樣本數據進行編譯處理的方式,具體包括:
將任一樣本數據中包含的子數據進行排列組合。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司,未經北京奇虎科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710560225.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種簾子布緩存裝置
- 下一篇:布匹對中機構及預縮機





