[發明專利]一種基于動態污點分析進行消息語義解析的方法無效
| 申請號: | 201110437004.2 | 申請日: | 2011-12-23 |
| 公開(公告)號: | CN102521543A | 公開(公告)日: | 2012-06-27 |
| 發明(設計)人: | 張博鋒;吳逸倫;賴志權;喬林波;唐勇;張怡 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F21/00 | 分類號: | G06F21/00;H04L29/06 |
| 代理公司: | 湖南省國防科技工業局專利中心 43102 | 代理人: | 馮青 |
| 地址: | 410073 湖南省長*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 動態 污點 分析 進行 消息 語義 解析 方法 | ||
技術領域
本發明針對網絡交互產生的消息進行語義解析,通過分析軟件執行過程中的函數調用以及污點在軟件執行過程中的傳播過程,獲取用于描述消息語義的信息,可以應用于軟件的網絡交互信息提取和分析。
背景技術
隨著互聯網的日益推廣和廣泛應用,計算機用戶通過互聯網進行數據交互愈加頻繁。互聯網在便利用戶進行數據交互的同時,也承擔著交互數據帶來的潛在的威脅。目前,互聯網已經成為了黑客進行病毒傳播的主要途徑。在數據交互的同時植入病毒信息成為了當前黑客進行病毒擴散的重要手段。軟件通過互聯網進行數據交互時,可能攜帶了一定量的病毒信息,而這些信息對于用戶而言是隱性的。病毒就是通過這些隱性的方法,進入用戶計算機系統從而對計算機造成破壞。因此,對于消息語義進行解析以獲取消息語義格式成為了分析互聯網環境,保障主機安全的一種重要方法。在軍事應用方面,解析網絡消息語義成為了保護軍事信息安全,分析對方信息系統的關鍵技術之一。
動態污點分析(Dynamic?Taint?Analysis,DTA)是動態分析中一個細化的技術。動態污點分析是指在軟件運行時,跟蹤軟件對數據的處理,并記錄處理過程中數據在內存中的傳播。目前,動態污點分析已經廣泛地應用于軟件未知漏洞檢測,惡意軟件分析,測試用例生成等。污點分析的目標主要是跟蹤目標數據同源數據的關系,分析并判斷目標數據是否同源數據有相關。動態污點分析主要由污點源引入、污點源傳播以及污點源確認三個部分組成。每一個部分的具體內容如下。
污點源引入:定義了需要跟蹤并分析的輸入數據,即源數據。物理內存,CPU寄存器,硬盤以及網絡接口緩沖區等屬于內部空間,其中的任何區域都可以被設置成為污點源。鍵盤輸入、鼠標點擊等屬于外部輸入,這些輸入也可以被設置為污點源。對于被設置為污點源的區域,DTA將會給污點源一個特定的標識,用來表征這塊區域已經被污染(tainted)。
污點傳播過程:在污點源引入之后,隨著程序執行的不斷深入,污點數據作為輸入參數將會參與各種運算,此時運算得到的輸出結果就會同輸入參數產生依賴關系,這種依賴關系就被認為是污點的傳播。被污點傳播到的輸出參數被認為是新的污點,其污點標識同輸入參數的污點標識相同。
污點確認:主要針對目標數據進行,用于分析目標數據同源數據的關系。隨著程序的運行,污點傳播逐漸深入,污點數據不斷增多。此時,對于目標數據的污點確認成為了動態污點分析的最后一個流程。污點確認的范圍很廣,任何一個內存變量或者寄存器都可以進行污點確認。
目前對于消息格式的解析技術也是互聯網中的研究熱點。但是目前的消息解析重點對于消息的內容進行提取,而不是對消息中每一個字段的語義進行分析。僅獲取消息的內容是不夠的,例如,病毒通過互聯網進行傳播時,會將自身可執行文件嵌入發送消息中,對于消息內容的提取而言,僅僅知道了發送消息中每一個字節的內容,但是并不知道這塊內容的具體含義。因此,在對于消息進行解析時,對于消息每一個字段的語義提取是分析消息構成,甚至分析軟件網絡交互動機的關鍵。
發明內容
本發明的目的在于利用動態污點分析的技術方法,對軟件在網絡交互中產生的消息進行語義提取,提高對于軟件的分析能力。本發明分別于發送消息和接收消息的語義解析采用不同方法加以實現。
為實現本發明的目的,采用的技術方案包括以下步驟:
第一步,設置隔離環境。隔離環境由虛擬操作系統,虛擬機監視器以及必要的網絡環境組成。虛擬操作系統為軟件提供了運行的平臺,虛擬機監視器用于監視虛擬操作系統中的軟件,并完成同外部分析的交互。必要的網絡環境用于觸發軟件的網絡行為,保證在分析過程中軟件能夠正確產生消息。隔離環境的設置方法是:
1.1在宿主操作系統中安裝虛擬機監視器。虛擬機監視器必須具備對整個虛擬環境的監控能力。目前常用的虛擬機監視器由QEMU,TEMU等,這些工具提供了基于硬件層的虛擬環境模擬,能搭載多種虛擬操作系統。在正確安裝虛擬機監視器后,利用虛擬機監視器開啟虛擬操作系統,開啟的虛擬操作系統必須滿足軟件對于操作系統的要求。
1.2在隔離環境中建立網絡互聯。建立虛擬操作系統同外部的網絡互聯,保證雙方可以通過網絡進行通信。
第二步,利用動態分析,監控軟件的函數調用行為。監控方法如下:
2.1在隔離環境中運行軟件,利用虛擬機監視器監視軟件執行的每一條指令,利用指令提供的信息獲取軟件的函數調用行為。獲取函數調用行為的具體過程為:
2.1.1虛擬機監視器監聽軟件運行過程中執行的call指令;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110437004.2/2.html,轉載請聲明來源鉆瓜專利網。





