欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

linux shc shell脚本_详解shell脚本加密解密软件—gzese和shc

发布时间:2023/12/2 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 linux shc shell脚本_详解shell脚本加密解密软件—gzese和shc 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

概述

以我个人的需求为例,有时写一个脚本需要传密码,如果直接把密码写在脚本里会存在安全问题,一般是把密码写在脚本里,作为参数传给脚本,而保存密码的脚本,使用某种手段加密,令其不可读但是可执行。而常用的shell加密方法有两种,一种是通过gzexe加密,另一种是通过shc加密。


一、gzexe

1、概念

Linux gzexe命令用于压缩执行文件。

gzexe是用来压缩执行文件的程序。当执行被压缩过的执行文件时,该文件会自动解压然后继续执行,和使用一般的执行文件相同。

gzexe加密很简单,并且gzexe是系统自带,所以不需要安装任何东西,只要在SSH中输入gzexe 加密的脚本。

2、gzexe加密

 gzexe 脚本名

其中hwb.sh~ 是原文件 , hwb.sh 是压缩后的二进制文件

3、gzexe解密

gzexe但是通过gzexe加密的shell脚本并不是很安全,观察脚本可以看到内容中有一行叫skip=44,这一行非常重要,它告诉我们从第44行起才是原来压缩之前文件的内容,前面都是压缩软件附加上去的内容。虽然从44行往后面也全部都是乱码,我们也读不懂这些内容,但是gzip程序会告诉我们的。

首先我们把第44行以后的内容过滤出来生成一个.gz结尾文件,然后解压,文件内容就都出来了。

tail -n +44 hwb.sh > hwb.gz # 我们把第44行以后的文件写成一个.gz结尾的压缩文件gunzip hwb.gz # 解压生成的文件cat hwb # 解压后的文件和压缩文件同名--第二种方式gzexe -d hwb.sh

二、shc

1、安装shc

SHC官网地址:http://www.datsi.fi.upm.es/~frosal/sources/

--推荐编译指定版本wget http://www.datsi.fi.upm.es/%7Efrosal/sources/shc-3.8.9.tgztar vxf shc-3.8.9.tgzcd shc-3.8.9make testmake stringsmkdir -p /usr/local/man/man1/make install

2、shc加密

 shc -r -f 脚本名

--运行后会生成两个文件,script-name.x 和 script-name.x.c

script-name.x是加密后的可执行的二进制文件,可重命名后运行.

script-name.x.c是生成script-name.x的原文件(c语言),基本没有作用,可以删除。

注意:如果脚本只需要在当前服务器上执行,可以不加参数-r,如果需要在别的系统下也能执行,这里就需要加-r

3、shc解密

项目地址:https://github.com/yanncam/UnSHc

git clone https://github.com/yanncam/UnSHc.git./UnSHc/latest/unshc.sh 脚本名

4、实例

4.1、加密

 shc -r -f log_clean.sh

4.2、测试加密效果

可以发现已完成加密

4.3、解密

将unshc.sh文件和需要解密的shell脚本放在同一目录,然后终端在当前目录运行./unshc.sh shell文件名,如果可以解密的话就可以了

 /home/scripts/UnSHc/latest/unshc.sh log_clean.sh.x

后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下!

总结

以上是生活随笔为你收集整理的linux shc shell脚本_详解shell脚本加密解密软件—gzese和shc的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。