溫馨提示×

溫馨提示×

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

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

shell腳本加密工具shc怎么用

發(fā)布時間:2021-06-28 11:41:38 來源:億速云 閱讀:376 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細講解有關(guān)shell腳本加密工具shc怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

shell腳本加密工具shc

shc是一個加密shell腳本的工具.它的作用是把shell腳本轉(zhuǎn)換為一個可執(zhí)行的二進制文件.

應用場景

用shell腳本對系統(tǒng)進行自動化維護,簡單,便捷而且可移植性好.但shell腳本是可讀寫的,很有可能會泄露敏感信息,如用戶名,密碼,路徑,IP等.

對于腳本中含有一些敏感信息的,通常我們都想做成二進制程序,不讓用戶看到源碼,對于有這種需求的通常我們一般采用shc或者gzexe,我個人還是比較推薦shc。

shc 安裝 和使用

yum -y install shc 或 apt install shc

我們隨便寫一個腳本

# cat test.sh
#!/bin/bash

echo "this is shc test"

用shc加密

shc -r -v -f test.sh

shc -r -f script-name 注意:要有-r選項, -f 后跟要加密的腳本名.

# ls -l
total 36
-rw-r--r-- 1 root root    37 12月 20 21:48 test.sh
-rwx--x--x 1 root root 11160 12月 20 21:48 test.sh.x
-rw-r--r-- 1 root root  9433 12月 20 21:48 test.sh.x.c

加密后會生成二個文件
test.sh 源文件
test.sh.x 加密后二進制文件
test.sh.x.c 腳本對應的C語言版本源碼

執(zhí)行一下加密后文件

# ./test.sh.x
this is shc test

shc解密

市面上面現(xiàn)在有對應的unshc解密程序,我們直接去github看看

https://github.com/yanncam/UnSHc/
支持x86 mips arm架構(gòu)CPU
但對于我測試結(jié)果對于x86支持應該是最好的,作者自己維護的,其它的是第三方個人維護,兼容性不好。

 # ./unshc.sh /tmp/test.sh.x  -o test.txt
 _   _       _____ _   _
| | | |     /  ___| | | |
| | | |_ __ \ `--.| |_| | ___
| | | | '_ \ `--. \  _  |/ __|
| |_| | | | /\__/ / | | | (__
 \___/|_| |_\____/\_| |_/\___|

--- UnSHc - The shc decrypter.
--- Version: 0.8
------------------------------
UnSHc is used to decrypt script encrypted with SHc
Original idea from Luiz Octavio Duarte (LOD)
Updated and modernized by Yann CAM
- SHc   : [http://www.datsi.fi.upm.es/~frosal/]
- UnSHc : [https://www.asafety.fr/unshc-the-shc-decrypter/]
------------------------------

[*] Input file name to decrypt [/tmp/test.sh.x]
[+] Output file name specified [test.txt]
[+] ARC4 address call candidate : [0x400d06]
[*] Extracting each args address and size for the 14 arc4() calls with address [0x400d06]...
	[0] Working with var address at offset [0x602179] (0x2a bytes)
	[1] Working with var address at offset [0x602121] (0x1 bytes)
	[2] Working with var address at offset [0x602319] (0xa bytes)
	[3] Working with var address at offset [0x602170] (0x3 bytes)
	[4] Working with var address at offset [0x6020e0] (0xf bytes)
	[5] Working with var address at offset [0x602141] (0x1 bytes)
	[6] Working with var address at offset [0x602127] (0x16 bytes)
	[7] Working with var address at offset [0x602144] (0x16 bytes)
	[8] Working with var address at offset [0x60215d] (0x13 bytes)
	[9] Working with var address at offset [0x6021ad] (0x1 bytes)
	[10] Working with var address at offset [0x6021ae] (0x1 bytes)
	[11] Working with var address at offset [0x6020f9] (0x26 bytes)
	[12] Working with var address at offset [0x6021b3] (0x13 bytes)
	[13] Working with var address at offset [0x6021c8] (0x13 bytes)
[*] Extracting password...
	[+] PWD address found : [0x6021ec]
	[+] PWD size found : [0x100]
[*] Executing [/tmp/MYoKED] to decrypt [/tmp/test.sh.x]
[*] Retrieving initial source code in [test.txt]
[*] All done!
root@Develop:~/UnSHc-master/latest# cat test.txt
#!/bin/bash

echo "this is shc test"

可見直接解密出來源碼,對于x86的這種,支持非常的好。 其原理 就是 頭部增加4096字節(jié)亂碼。并且 shc加密的腳本在運行時ps -ef可以看到shell的源碼。 因此,shc其實不是真的很有用!

關(guān)于“shell腳本加密工具shc怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI