999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于緩沖區溢出攻擊的shellcode編碼技術研究

2018-08-31 05:54:48沈陽理工大學信息科學與工程學院李愛華趙曉雯
電子世界 2018年16期
關鍵詞:指令

沈陽理工大學信息科學與工程學院 高 珊 李愛華 趙曉雯

1 引言

緩沖區是程序運行期間在內存中分配的一個連續的區域。所謂緩沖區溢出,就是向固定長度的緩沖區中寫入超出其預告分配長度的內容,從而覆蓋了緩沖區周圍的內存空間。攻擊者要實現緩沖區溢出攻擊,一般都要完成下面三個步驟:

(1)構造需要執行的代碼shellcode(即緩沖區溢出攻擊中植入進程的代碼,可用來實現特定攻擊或獲取權限),并將其放到目標系統的內存;

(2)獲得緩沖區的大小和定位溢出點ret的位置;

(3)控制程序跳轉,改變程序流程。

對于緩沖區溢出攻擊來說,shellcode起到了至關重要的作用。然而在很多漏洞利用場景中,shellcode的內容將會受到限制,通過對其編碼可以在一定程度上解決該問題。

2 shellcode常用編碼

要想突破重重防護,把shellcode安全送入堆棧,不難想到的一個方法就是給shellcode喬裝打扮,讓它通過防守再采取行動。首先設計好shellcode,然后使用編碼技術對其進行編碼,使它達到各種限制要求,最后構造解碼程序,在真正的shellcode之前加上幾條解碼指令。當exploit成功后,首先運行頂端的解碼程序,這會將經過編碼的shellcode還原成原來的樣子,然后再執行。

2.1 異或法

最簡單的編碼方式莫過于異或運算了,該方法所依據的原理是一個數與另一個數做兩次異或運算,得到的還是它本身,即A xor B xor B=A。可以通過編程讓shellcode逐個字節地與某個特定數據(key)做異或運算,使shellcode的內容符合要求。

在編碼時需注意以下幾點:

(1)在選取key時,不要選擇shellcode中已有的字節,這樣會導致NULL字節的出現;

(2)可以選擇多個key對shellcode的不同區域分別進行編碼;

(3)可以對shellcode進行多輪次的編碼。

2.2 微調法

有時shellcode或者解碼指令中只是有個別非法字符,那么可以采用微調法。它就是在不影響指令原本功能的情況下,對不符合要求的指令進行等價替換。例如:攻擊IIS的shellcode里不能有0x20,如果想要實現將ebx的值減去0x20,可有兩種不同的表達方式,一種是直接表示成mov ebx 20h,另一種是采用微調法表示成mov ebx 32h;sub ebx 12h,這兩種不同的表達方式實現的功能是相同的,但是第二種方式避免了在代碼中出現0x20。

2.3 字符拆分法

字符拆分法是把shellcode中的字符拆分成其他幾個符合要求的字符,然后在解碼的時候,再將字符合起來,恢復成原來的shellcode。

第一種拆分法是把shellcode中的字符拆分成若干個數字的和,這樣一來就會有很多種拆分方式,可以避免一些限制字符。例如:可將0x20拆分成0x03+0x05+0x06+0x06,解碼時從頭開始每4個字節一相加,這樣就又恢復為原來的shellcode。

第二種拆分法是乘積的拆分法,舉例來說就是在編碼時把0xAB拆分成0xA和0xB,解碼時通過0xA*0x10+0xB=0xAB來恢復。

3 shellcode編碼設計及實現

3.1 改進的shellcode編碼設計

以上介紹的幾種shellcode編碼方法各有所長,但在實際應用中僅僅選擇其中某種編碼方法,很難達到要求。對此本文提出一種將異或法與微調法相結合的編碼方法。異或法最大的優點就是編碼和解碼都比較簡單,可以有效的避開一些限制字符,但該方法有一定的適應性,比如在經過一次或幾次異或編碼之后可能仍存在非法字符,或者解碼指令decode本身就存在非法字符,這時再采取異或法改變key值是解決不了問題的,可以結合微調法對shellcode或解碼程序中僅有的幾個非法字符作調整以滿足要求。

3.2 shellcode編碼實現

以win2000中文版SP3下開DOS窗口的shellcode為例。由于shellcode中有”x00”,所以首先通過自己編寫的編碼器對shellcode進行編碼,異或0x97,這樣得到的enshellcode中就不含有”x00”了,執行效果如圖1所示。

圖1 獲得enshellcode結果圖

編碼之后還需要編寫一段解碼程序decode,其對應的匯編代碼如下:

jmp decode_end //獲取enshellcode的地址

decode_start:

pop edx

dec edx

xor ecx,ecx

mov ecx,0x200 //enshellcode的長度0x200足夠

decode_loop:

xor byte ptr[edx+ecx],0x97 //解碼時的key也為0x97

loop decode_loop //循環實行解碼操作

jmp decode_ok //解碼完畢

decode_end:

call decode_start

decode_ok: //后面接enshellcode

然后可得到decode的機器碼為:“xEBx10x5Ax4Ax33xC9x66xB9x00x02x80x34x0Ax97xE2xFAxEBx05xE8xEBxFFxFFxFF"。此時,發現decode中有”x00”,但是再使用異或法改變key值是解決不了問題的。這種情況就需要結合其他的方法,可以選擇微調法。經分析這是由于匯編代碼中有”0x200”,那么可將其改為”0x201”,就沒有”x00”了。

最后把decode和enshellcode一起送入裝載器測試,結果如圖2所示。

圖2 執行結果圖

4 測試結果分析

在上述的例子中,首先通過異或法對shellcode編碼起到了避免截斷的效果,之后卻發現解碼指令decode中還存在不合法字符,這種情況使用異或法改變key值是解決不了問題的,不僅會降低編碼效率,還會影響shellcode的執行效果。這時結合微調法將decode稍作修改便符合要求了。結果表明這種經過改進的編碼方法能夠實現shellcode的有效性,提高編碼效率。

5 小結

基于緩沖區溢出攻擊研究了幾種shellcode的編碼方法,分析了異或法、微調法、字符拆分法各自的編碼特點。在此基礎上,提出了一種將異或法與微調法相結合的shellcode編碼方法以提高編碼效率。

給出改進的shellcode編碼設計及實現,并對測試結果進行了分析,測試結果表明此shellcode編碼實現了植入代碼的準確性及有效性,對緩沖區溢出攻擊的防御研究具有一定的參考價值。

猜你喜歡
指令
聽我指令:大催眠術
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
巧用G10指令實現橢圓輪廓零件倒圓角
時代農機(2015年3期)2015-11-14 01:14:29
中斷與跳轉操作對指令串的影響
科技傳播(2015年20期)2015-03-25 08:20:30
基于匯編指令分布的惡意代碼檢測算法研究
一種基于滑窗的余度指令判別算法
歐盟修訂電氣及電子設備等產品安全規定
家電科技(2014年5期)2014-04-16 03:11:28
MAC指令推動制冷劑行業發展
汽車零部件(2014年2期)2014-03-11 17:46:27
主站蜘蛛池模板: 伊人婷婷色香五月综合缴缴情| 国产一区二区网站| 国产裸舞福利在线视频合集| 国产亚洲视频中文字幕视频| 欧美性天天| 欧美人与牲动交a欧美精品| 亚洲国产成人久久精品软件| 99精品视频播放| 欧美精品xx| a毛片免费在线观看| 亚洲综合久久一本伊一区| 在线观看欧美国产| 伦精品一区二区三区视频| 国产精品深爱在线| 在线视频一区二区三区不卡| 亚洲精品国偷自产在线91正片| 国产精品久久久久久久久久98| 青青草原国产av福利网站| 久久夜色撩人精品国产| 久久亚洲欧美综合| 伊人五月丁香综合AⅤ| 色香蕉网站| 污污网站在线观看| 亚洲人成网7777777国产| 婷婷99视频精品全部在线观看| 国产菊爆视频在线观看| 亚洲欧美极品| 91精品啪在线观看国产91九色| 国产欧美视频综合二区| 日本人真淫视频一区二区三区| 狠狠色丁婷婷综合久久| 71pao成人国产永久免费视频| 黄色一及毛片| 国产成人高清精品免费5388| 欧美三级不卡在线观看视频| 免费三A级毛片视频| 欧美日韩资源| 91系列在线观看| 女人毛片a级大学毛片免费| 午夜欧美理论2019理论| 99热最新在线| 精品欧美视频| 一区二区三区在线不卡免费| 欧美色综合网站| 无码丝袜人妻| 中文国产成人精品久久| 亚洲色图另类| 亚洲成人动漫在线观看| 欧美丝袜高跟鞋一区二区| 亚洲国产清纯| 97超爽成人免费视频在线播放| 国产网站免费看| 四虎永久在线精品国产免费| 亚洲国产精品国自产拍A| 亚洲免费三区| 91极品美女高潮叫床在线观看| 国产午夜福利片在线观看| 狂欢视频在线观看不卡| 色偷偷综合网| 亚洲免费福利视频| 婷婷色一区二区三区| 97国内精品久久久久不卡| 好紧好深好大乳无码中文字幕| 欧美色图第一页| 国产精品欧美亚洲韩国日本不卡| 欧美一级高清视频在线播放| 国产精品网址在线观看你懂的| 久久精品日日躁夜夜躁欧美| 大乳丰满人妻中文字幕日本| 欧美曰批视频免费播放免费| 国产精品刺激对白在线| 国产一级一级毛片永久| 免费日韩在线视频| 宅男噜噜噜66国产在线观看| 日韩欧美中文在线| 欧美国产综合色视频| 91福利片| 999福利激情视频| 婷五月综合| 国产毛片不卡| 欧美一区日韩一区中文字幕页| 国产视频自拍一区|