[發(fā)明專利]安全DMA控制器及數(shù)據(jù)搬運方法在審
| 申請?zhí)枺?/td> | 202011207935.9 | 申請日: | 2020-11-03 |
| 公開(公告)號: | CN112256605A | 公開(公告)日: | 2021-01-22 |
| 發(fā)明(設計)人: | 藺建琪 | 申請(專利權(quán))人: | 藺建琪 |
| 主分類號: | G06F13/28 | 分類號: | G06F13/28;G06F13/16;G06F3/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100083 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 安全 dma 控制器 數(shù)據(jù) 搬運 方法 | ||
一種安全DMA控制器及數(shù)據(jù)搬運方法,涉及計算機安全技術(shù)領域。該數(shù)據(jù)搬運方法,應用于安全DMA控制器,用于阻斷惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù),包括:接收用于指示DMA控制器執(zhí)行數(shù)據(jù)搬運操作的數(shù)據(jù)傳輸指令;判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段;若是,則阻斷所述數(shù)據(jù)傳輸指令,并觸發(fā)異常;若否,則執(zhí)行所述數(shù)據(jù)傳輸指令。本發(fā)明通過在DMA控制器內(nèi)引入針對系統(tǒng)關鍵內(nèi)存數(shù)據(jù)的審核策略,解決了惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù)的問題,保障了計算機運行與數(shù)據(jù)安全。
技術(shù)領域
本發(fā)明屬于計算機安全領域,尤其涉及一種用于阻斷惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù)的安全DMA控制器及數(shù)據(jù)搬運方法。
背景技術(shù)
隨著近年來計算機和智能終端的廣泛普及,以及互聯(lián)網(wǎng)技術(shù)的高速發(fā)展,設備安全的問題也更是日益凸顯。圍繞處理器進行的防護手段越來越多,比如各種殺毒軟件、防火墻、主動防御軟件等,還有如設置在處理器內(nèi)部的安全部件,例如MMU(內(nèi)存管理單元)可以將內(nèi)存定義為只讀、可執(zhí)行、可讀可寫等不同區(qū)段,如果經(jīng)過處理器的程序去改寫一段被MMU定義為“只讀”的內(nèi)存區(qū)段,則MMU會禁止這種訪問并觸發(fā)異常。而一旦有惡意程序繞過處理器去讀寫數(shù)據(jù),則會直接導致這些傳統(tǒng)的防護手段失效。
DMA技術(shù)是為了提高計算機系統(tǒng)性能,提升處理器利用率而提出的,一些數(shù)據(jù)搬運工作可以由DMA控制器完成,此時就可以釋放處理器的性能,讓其去處理其它工作。從計算機系統(tǒng)總線的角度來看,處理器和DMA控制器都是主設備,二者均可以主動地發(fā)起總線訪問,這就使得惡意程序可以通過傳遞給DMA控制器特定的參數(shù),使DMA控制器去改寫那些本該受保護的內(nèi)存區(qū)段,比如惡意程序可以讓DMA控制器去篡改操作系統(tǒng)的某個系統(tǒng)調(diào)用入口,以達到劫持系統(tǒng)調(diào)用的目的。
因此,現(xiàn)有技術(shù)中缺乏一種防止惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù)的技術(shù)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的一個目的是提出一種數(shù)據(jù)搬運方法,以解決現(xiàn)有技術(shù)中惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù)的問題。
在一些說明性實施例中,所述數(shù)據(jù)搬運方法,應用于安全DMA控制器,用于阻斷惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù),包括:接收用于指示DMA控制器執(zhí)行數(shù)據(jù)搬運操作的數(shù)據(jù)傳輸指令;判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段;若是,則阻斷所述數(shù)據(jù)傳輸指令,并觸發(fā)異常;若否,則執(zhí)行所述數(shù)據(jù)傳輸指令。
在一些可選地實施例中,在所述判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段之前,還包括:判斷所述數(shù)據(jù)傳輸指令的目標地址是否指向內(nèi)存;若是,則再次判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段;若否,則直接執(zhí)行所述數(shù)據(jù)傳輸指令。
在一些可選地實施例中,在所述判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段之前,還包括:根據(jù)所述數(shù)據(jù)傳輸指令中的目標地址與數(shù)據(jù)長度,確定目標地址區(qū)段;所述判斷所述數(shù)據(jù)傳輸指令中的目標地址是否指向系統(tǒng)關鍵內(nèi)存區(qū)段,具體包括:將所述目標地址區(qū)域與所述系統(tǒng)關鍵內(nèi)存區(qū)段進行匹配;若所述目標地址區(qū)域與所述系統(tǒng)關鍵內(nèi)存區(qū)段存在重疊,則阻斷所述數(shù)據(jù)傳輸指令,并觸發(fā)異常;否則,執(zhí)行所述數(shù)據(jù)傳輸指令。
在一些可選地實施例中,在所述接收用于指示DMA控制器執(zhí)行數(shù)據(jù)搬運操作的數(shù)據(jù)傳輸指令之前,還包括:在系統(tǒng)上電或重啟后的初始化階段,獲取所述系統(tǒng)關鍵內(nèi)存區(qū)段;將獲取到的所述系統(tǒng)關鍵內(nèi)存區(qū)段寫入預先設定的審核表中,并鎖定所述審核表,使所述審核表在再次上電或重啟之前只讀。
在一些可選地實施例中,所述系統(tǒng)關鍵內(nèi)存區(qū)段至少包括:操作系統(tǒng)代碼段、只讀數(shù)據(jù)區(qū)、系統(tǒng)調(diào)用表、中斷向量表和用戶自定義區(qū)段。
本發(fā)明的另一個目的在于提出一種安全DMA控制器,該安全DMA控制器可解決現(xiàn)有技術(shù)中惡意程序利用DMA控制器破壞關鍵內(nèi)存數(shù)據(jù)的問題。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于藺建琪,未經(jīng)藺建琪許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011207935.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





