sch 助shell腳本加密 02
來源:程序員人生 發布時間:2015-01-13 08:50:22 閱讀次數:2997次
sch 助shell腳本加密 02
1、 簡介
SHC(shell script compiler),即shell腳本編譯器。通過SHC編譯過的腳本對普通用戶而言是不可讀的,因此如果你想讓你的代碼實現加密功能,讓其有效的屏蔽1些敏感信息,這個時候可以斟酌使用SHC;它通常情況下是不太容易被破解的,但是還是有些人可以通過反編譯SHC的方法來實現破解加密過的腳本。
2、 實驗測試開始
2.1 下載并編譯SHC
[root@woo ~]# wget http://www.datsi.fi.upm.es/~frosal/sources/shc⑶.8.3.tgz
[root@woo ~]# ll shc⑶.8.3.tgz
-rw-r--r-- 1 root root 19874 Dec 31 20:40 shc⑶.8.3.tgz
[root@woo ~]# tar -zxvf shc⑶.8.3.tgz
shc⑶.8.3/CHANGES
shc⑶.8.3/Copying
shc⑶.8.3/Makefile
shc⑶.8.3/match
shc⑶.8.3/pru.sh
shc⑶.8.3/shc.1
shc⑶.8.3/shc.c
shc⑶.8.3/shc.html
shc⑶.8.3/shc.README
shc⑶.8.3/test.bash
shc⑶.8.3/test.csh
[root@woo ~]# cd shc⑶.8.3
[root@woo shc⑶.8.3]# make && make install
*** ?Do you want to probe shc with a test script?
*** Please try... make test
[root@woo shc⑶.8.3]#
2.2 編譯完成以后,我們切換到oracle用戶下編輯1個腳本
[root@woo ~]# su - oracle
[oracle@woo ~]$ vi sqlscript.sql
#!/bin/sh
sqlplus -S system/oracle << EOF
set pagesize 0 linesize 80 feedback off
select 'The database ' || instance_name ||
' has been running since '||
to_char(startup_time, 'HH24:MI MM/DD/YYYY')
from v$instance;
select 'There are ' || count(status) ||
' data files with a status of ' || status
from dba_data_files
group by status
order by status;
exit;
EOF
2.3 履行加密前的腳本
[oracle@woo ~]$ ./sqlscript.sql
The database woo has been running since 18:17 12/23/2014
There are 4 data files with a status of AVAILABLE
2.4 對腳本進行加密操作,會在原來的基礎上多出兩個文件
[root@woo shc⑶.8.3]# shc -r -f /home/oracle/sqlscript.sql
[oracle@woo ~]$ ll sqlscript*
-rwxr-xr-x 1 oracle oinstall 365 Dec 31 18:55 sqlscript.sql --運行文件
-rwx--x--x 1 root root 12048 Dec 31 22:00 sqlscript.sql.x
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
------分隔線----------------------------
------分隔線----------------------------