[發(fā)明專利]一種載荷自動化生成系統(tǒng)在審
| 申請?zhí)枺?/td> | 202010151659.2 | 申請日: | 2020-03-06 |
| 公開(公告)號: | CN111385302A | 公開(公告)日: | 2020-07-07 |
| 發(fā)明(設(shè)計)人: | 王定宇;劉滋潤;楊梟;許明龍;賈瓊;張帥;羅濟(jì)凡;秦路平 | 申請(專利權(quán))人: | 北京計算機(jī)技術(shù)及應(yīng)用研究所 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 中國兵器工業(yè)集團(tuán)公司專利中心 11011 | 代理人: | 王雪芬 |
| 地址: | 100854*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 載荷 自動化 生成 系統(tǒng) | ||
1.一種載荷自動化生成系統(tǒng),其特征在于,包括解析模塊、地址定位模塊、轉(zhuǎn)換模塊、變形模塊和布局模塊;其中,
所述解析模塊用于通過對輸入的惡意函數(shù)調(diào)用序列進(jìn)行解析,識別并提取所有函數(shù)調(diào)用的相關(guān)信息,構(gòu)建等價的函數(shù)調(diào)用節(jié)點鏈表;
地址定位模塊包括起始地址定位子模塊和函數(shù)地址定位子模塊兩部分,其中起始地址定位子模塊用于利用跳轉(zhuǎn)指令集,實現(xiàn)對攻擊載荷起始地址的定位;函數(shù)地址定位子模塊用于,首先利用解析模塊輸出的函數(shù)調(diào)用節(jié)點鏈表,提取攻擊載荷中所需的函數(shù)API,通過Hash運算簡化函數(shù)名稱信息,構(gòu)建函數(shù)調(diào)用集;接著遍歷所述函數(shù)調(diào)用集,利用動態(tài)鏈接庫的導(dǎo)出表信息動態(tài)獲取函數(shù)對應(yīng)的API地址,完成最終函數(shù)地址列表的構(gòu)建;
轉(zhuǎn)換模塊用于將表示惡意函數(shù)調(diào)用流程信息的鏈表,即所述函數(shù)調(diào)用節(jié)點鏈表按照函數(shù)調(diào)用節(jié)點加入的先后次序,翻譯成等價的匯編指令序列,也即攻擊載荷鏈表;
變形模塊用于將轉(zhuǎn)換模塊生成的功能性的攻擊載荷進(jìn)行變異,消除攻擊載荷特征,繞過檢測;
布局模塊用于利用漏洞特征庫中存放的目標(biāo)程序漏洞信息結(jié)合起始地址定位子模塊生成的跳板庫中的跳轉(zhuǎn)指令,設(shè)計兩種類型的布局模型,針對具體的目標(biāo)程序定制植入模式,生成最終的攻擊載荷。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述解析模塊具體用于,首先對輸入的惡意函數(shù)調(diào)用序列進(jìn)行逐字掃描,標(biāo)記輸入中的所有符號,將字符串流轉(zhuǎn)換為等價的單詞流,構(gòu)建等價的單詞流的過程中,順序掃描輸入字符串,每產(chǎn)生一個單詞,則創(chuàng)建一個單詞節(jié)點,記錄單詞所代表的內(nèi)容和屬性值,直到掃描結(jié)束,則成功將惡意函數(shù)調(diào)用序列轉(zhuǎn)換為等價的單詞流鏈表,以備后續(xù)的函數(shù)調(diào)用關(guān)系提取。
3.如權(quán)利要求2所述的系統(tǒng),其特征在于,所述起始地址定位子模塊具體用于,首先將對可利用的跳轉(zhuǎn)指令集進(jìn)行,接著在程序運行中遍歷DLL內(nèi)存,匹配跳轉(zhuǎn)指令在內(nèi)存中的地址,最后生成跳板庫,為實現(xiàn)動態(tài)生成跳板庫,保存跳轉(zhuǎn)指令和對應(yīng)的機(jī)器碼信息,保存動態(tài)生成的跳板指令地址信息,以單鏈表的形式存儲。
4.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述函數(shù)地址定位子模塊在構(gòu)建函數(shù)調(diào)用集時,具體用于記錄所需函數(shù)和當(dāng)前調(diào)用函數(shù)所在的動態(tài)鏈接庫信息,其中設(shè)計一種結(jié)構(gòu)類型來實現(xiàn)函數(shù)信息的保存,而函數(shù)調(diào)用集即是該類型單鏈表結(jié)構(gòu);構(gòu)建函數(shù)地址列表,實質(zhì)就是遍歷函數(shù)調(diào)用集,利用導(dǎo)出表中三個關(guān)鍵字段即調(diào)用的函數(shù)名、函數(shù)對應(yīng)的哈希、函數(shù)所在動態(tài)鏈接庫的對應(yīng)關(guān)系,動態(tài)獲取函數(shù)API地址信息,每匹配成功一個函數(shù),構(gòu)建一個節(jié)點保存當(dāng)前函數(shù)API地址信息,并將其插入函數(shù)地址列表尾部,最終遍歷完函數(shù)調(diào)用集,完成函數(shù)地址列表的構(gòu)建。
5.如權(quán)利要求4所述的系統(tǒng),其特征在于,所述轉(zhuǎn)換模塊在轉(zhuǎn)換過程中,具體用于利用push指令實現(xiàn)參數(shù)壓棧操作,通過搜索函數(shù)地址定位子模塊生成的函數(shù)地址列表,用call指令實現(xiàn)函數(shù)入口地址切換操作,其中函數(shù)返回利用寄存器的交互完成,函數(shù)調(diào)用節(jié)點中參數(shù)列表按照從右到左的順序push入棧,其中實參內(nèi)容的轉(zhuǎn)換利用小端字節(jié)序進(jìn)行壓棧處理,利用寄存器保存參數(shù)地址,完成匯編級別函數(shù)調(diào)用指令代碼的構(gòu)建;為記錄轉(zhuǎn)換出的每一條指令結(jié)構(gòu)信息,設(shè)計一種類型用來保存指令的助記符和操作數(shù),而最終生成功能等價的攻擊載荷即是以這種類型的雙鏈表形式存儲,每轉(zhuǎn)換出一條指令,則新建一個節(jié)點保存指令信息,并將新建節(jié)點插入尾部;每個函數(shù)調(diào)用節(jié)點對應(yīng)一組指令序列,完成對應(yīng)函數(shù)調(diào)用棧幀的參數(shù)傳遞和入口地址切換,遍歷表示惡意函數(shù)調(diào)用流程的鏈表,對每個函數(shù)調(diào)用節(jié)點構(gòu)建對應(yīng)的一組指令序列,順序拼接每個函數(shù)調(diào)用節(jié)點對應(yīng)指令序列,完成最終功能等價的攻擊載荷鏈表的構(gòu)建。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述變形模塊包括無效指令插入子模塊、編碼子模塊和解碼子模塊,無效指令插入子模塊用于利用特定的跳轉(zhuǎn)算法構(gòu)建插入點,然后插入隨機(jī)生成的無效指令;編碼子模塊用于將對無效指令插入子模塊生成的攻擊載荷鏈表對應(yīng)的機(jī)器碼序列進(jìn)行異或變形,消除攻擊載荷的特征值;解碼子模塊對應(yīng)于編碼子模塊,為實現(xiàn)攻擊載荷的正常執(zhí)行,在編碼子模塊的輸出前加載相反的解碼算法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京計算機(jī)技術(shù)及應(yīng)用研究所,未經(jīng)北京計算機(jī)技術(shù)及應(yīng)用研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010151659.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 自動化設(shè)備和自動化系統(tǒng)
- 一種基于流程驅(qū)動的測試自動化方法以及測試自動化系統(tǒng)
- 用于工業(yè)自動化設(shè)備認(rèn)識的系統(tǒng)和方法
- 實現(xiàn)過程自動化服務(wù)的標(biāo)準(zhǔn)化設(shè)計方法學(xué)的自動化系統(tǒng)
- 一種日產(chǎn)50萬安時勻漿自動化系統(tǒng)
- 一種自動化肥料生產(chǎn)系統(tǒng)
- 一種電氣自動化設(shè)備自動檢測系統(tǒng)及檢測方法
- 用于自動化應(yīng)用的抽象層
- 一種基于虛擬化架構(gòu)的自動化系統(tǒng)功能驗證方法
- 自動化測試框架自動測試的實現(xiàn)技術(shù)





