shc/unshc工具用于加/解密shell脚本
一、shc加密文件
Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。经过shc对shell脚本进行加密后,会同时生成两种个新的文件,一个是加密后的可执行的二进制文件(文件名以.x结束),另一个是C语言的原文件(文件名以.x.c结束)。
下面就说明一下shc的安装,参数,以及使用示例:
(官网下载地址: http://www.datsi.fi.upm.es/~frosal/sources/)
安装命令:
# wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz
# tar zxf shc-3.8.9.tgz
# cd shc-3.8.9
# make
# make install
(仅用make就可以完成安装,运行shc时要指出绝对路径;用make install,将shc安装到/usr/local/bin下,可以直接运行)
常用参数:
-e date (指定过期日期)
-m message (指定过期提示的信息)
-f script_name(指定要编译的shell的路径及文件名)
-r Relax security. (可以相同操作系统的不同系统中执行)
-v Verbose compilation(编译的详细情况)
使用方法:
# shc -v -f abc.sh
-v 是现实加密过程
-f 后面跟需要加密的文件
运行后会生成两个文件:
abc.sh.x 和 abc.sh.x.c
abc.sh.x为二进制文件,赋予执行权限后,可直接执行。更改名字mv abc.sh.x a.sh
abc.sh.x.c 是c源文件。基本没用,可以删除
另shc还提供了一种设定有效执行期限的方法,过期时间,如:
# shc -e 28/01/2012 -m "过期了" -f abc.sh
选项“-e”指定过期时间,格式为“日/月/年”;选项“-m”指定过期后执行此shell程序的提示信息。
如果在过期后执行,则会有如下提示:
# ./abc.sh.x
./abc.sh.x: has expired!
过期了
其他事项
1) 安全问题:总体来说,相对安全。对于一般的应用场景来说是够用的。但是也可以通过gdb等其它的调试工具获得源码。如果安全系数要求更高, 可以考虑使用wzshSDK。
2) 跨平台运行:在编译shc的时候就要修改相应的Makefile,修改成交叉编译工具链。完成后,生成的加密的二进制文件就可以在目标平台运行了。
二、unshc解密shc加密的文件
项目地址:https://github.com/yanncam/UnSHc
sh脚本下载地址:https://github.com/yanncam/UnSHc/blob/master/release/0.8/unshc-v0.8.sh
[root@server:~/unshc]$ ./unshc.sh -h_ _ _____ _ _ | | | | / ___| | | | | | | |_ __ \ `--.| |_| | ___ | | | | '_ \ `--. \ _ |/ __| | |_| | | | /\__/ / | | | (__\___/|_| |_\____/\_| |_/\___|--- UnSHc - The shc decrypter. --- Version: 0.6 ------------------------------ 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/] ------------------------------[*] Usage : ./unshc.sh [OPTIONS] <file.sh.x>-h | --help : print this help message-a OFFSET | --arc4 OFFSET : specify the arc4() offset arbitrarily (without 0x prefix)-d DUMPFILE | --dumpfile DUMPFILE : provide an object dump file (objdump -D script.sh.x > DUMPFILE)-s STRFILE | --stringfile STRFILE : provide a string dump file (objdump -s script.sh.x > STRFILE)-o OUTFILE | --outputfile OUTFILE : indicate the output file name[*] e.g :./unshc.sh script.sh.x./unshc.sh script.sh.x -o script_decrypted.sh./unshc.sh script.sh.x -a 400f9b./unshc.sh script.sh.x -d /tmp/dumpfile -s /tmp/strfile./unshc.sh script.sh.x -a 400f9b -d /tmp/dumpfile -s /tmp/strfile -o script_decrypted.sh
shc/unshc工具用于加/解密shell脚本相关推荐
- linux shell 脚本要不要加,linux shell脚本基本命令费不需要网
用VB打造自己的SQL连接器 大家好.....好长时间没上网了...祝大家新年快乐....好了.工程开始 现建一个普通窗口..放上3个textBox控件. 一个是用来输入ip的txtaddres..还 ...
- shc加密(仅仅对shell脚本加密)
shc加密(仅仅对shell脚本加密) shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP. 密码等不希望公开的问题 ...
- shell脚本之工具
在学习了shell脚本的基本语法,命令,符号之后,接下来要看的就是shell脚本使用的所有工具了. 在shell脚本中,工具的使用简化了所要编写的代码.接下来就介绍几个shell下经常使用的工具. 1 ...
- ubuntu shell脚本弹窗小工具yad
ubuntu shell脚本弹窗小工具yad 简介 安装 使用 选择文件夹/文件 输入文本 选择下拉菜单 小结 简介 yad是ubuntu下面的一个很有用的命令行工具,可以在shell脚本里弹窗给用户 ...
- 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter17-ChapterB )
十七.创建函数 bash shell 提供了用户自定义函数功能,可以将 shell 脚本代码放入函数中封装起来. 函数是一个脚本代码块,你可以为其命名并在脚本中的任何位置重用它.每当需要在脚本中使用该 ...
- 使用拦截器进行数据加解密
文章目录 使用拦截器进行数据加解密 1. 加解密工具 3. 加解密字段注解 3.1 加密注解 3.2 解密注解 4. 封装加解密工具 5. 拦截器 6. 不同框架配置说明 6.1 springboot ...
- shell脚本——expect的综合使用(包含应用案例)
这里写目录标题 Expect概述 基本命令 应用案例 磁盘自动分区脚本 远程ssh另一台主机 自动连接ftp下载文件 综合案例 Expect概述 Expect是建立在tcl基础上的一个工具,Expec ...
- 69:shell脚本介绍 | shell脚本结构 | 执行data命令用法 | shell脚本中变量
2019独角兽企业重金招聘Python工程师标准>>> 1.shell脚本介绍: shell是一种脚本语言和传统的开发语言相比,会比较简单: shell有自己语法,可以支持逻辑判断. ...
- shell实例第18讲:利用gzexe加密shell脚本
利用gzexe加密shell脚本 gzexe_test.sh内容如下: #!/bin/bashecho "gzexe test!" 结果: 使用gzexe加密shell脚本命令:g ...
- shell 脚本加密
想想好久没更新博客了,今天在群里看到讨论关于shell脚本加密的事情. 想想也是,我们在写脚本有时候会配置相关账号和密码的事情,这样只要能权限都能看到该信息,非常的不安全,有没有在正常运行的情况下对文 ...
最新文章
- python基础教程书籍推荐-入门python有什么好的书籍推荐?
- 阿里面试经历JAVA总结
- python 验证码识别训练_Python爬虫笔记【一】模拟用户访问之Tesseract-ocr验证码训练(5)...
- html鼠标悬停盒子凸起,css3 transform动画鼠标悬停div容器凸起放大显示
- 数据结构--双链表的创建和操作
- LGBM模型取消打印日志(关闭日志)
- [NYOJ 15] 括号匹配(二)
- 带你了解开课吧,Python培训的怎么样?
- linux 并行 模式,并行设计模式-Master/Worker
- Photoshop操作秘籍
- 清华大学计算机学院2021拟录取,【盛世清北】2020年清华大学(清华)计算机系考研复试拟录取信息...
- html5 页面3d显示不出来的,Word页面视图内容为什么在大纲视图上显示不出来?
- 图解网络(一)——计算机网络基础
- java项目远程调用别的项目接口
- 改变思维(深度学习)
- 去美元化:曾经被称为加密的地缘政治问题
- Luogu 3371【模板】单源最短路径
- 给中国学生的第三封信——成功、自信、快乐
- 梦饮酒者,旦而哭泣;梦哭泣者,旦而田猎。方其梦也,不知其梦也。 ------庄子.齐物论-节选
- 集群部署时的分布式 Session 如何实现?