shc脚本编译工具

如何使用SHC对Shell脚本进行封装和源码隐藏 shc是一个由C语言编写的Shell脚本加密程序,它可以将你的脚本编译成二进制可执行文件,从而隐藏源码。 阅读详情
如果你的shell脚本包含了敏感的口令或者其它重要信息, 而且你不希望用户通过ps -ef(查看系统每个进程的状态)捕获敏感信息.
你可以使用shc工具来给shell脚本增加一层额外的安全保护. shc是一个脚本编译工具, 使用RC4加密算法,
它能够把shell程序转换成二进制可执行文件(支持静态链接和动态链接).
该工具能够很好的支持: 需要加密, 解密, 或者通过命令参数传递口令的环境.

shc下载链接
http://www.datsi.fi.upm.es/%7Efrosal/sources/

shc-3.8.7.tgz   shc-3.8.7.tgz(缺一个shc.c)

shc-3.8.7.tgz 按照Makefile 会报错
***    Running a compiled test script!
***    It must fail showing "./match.x: has expired!"
./match.x
./match.x: has expired!
Please contact your provider

原因是由于它设置来过期时间
直接跳过
make  (shc必须在绝对路径下使用)
make install (直接shc)

注:根据它的Makefile 创建man1目录来存放shc.1  mkdir -p /usr/local/man/man1/

shc
-e:指定过期时间为2010年10月20日
-m:过期后打印出的信息;
-v: verbose
-r: 可在相同操作系统的不同主机上执行
-f: 指定源she

1). 加密脚本.
vim hello.sh
   echo "Hello world"

# shc -r -v -f hello.sh
-v: 是verbose模式,输出更详细编译日志. -f: 指定脚本的名称.

上面命令在屏幕上的输出:
shc shll=sh
shc [-i]=-c
shc [-x]=exec ‘%s’ “$@”
shc [-l]=
shc opts=
shc: cc hello.sh.x.c -o hello.sh.x
shc: strip hello.x
shc: chmod go-r hello.sh.x

我们可以看到生成了动态链接可执行二进制文件hello.sh.x和C源文件hello.x.c, 注意生成的二进制文件因为是动态链接形式, 所以在其它平台上不能运行:

#file hello.sh.x
hello.sh.x: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.6.9, stripped

2). 生成静态链接的二进制可执行文件.

不过, 我们可以通过下面的方法生成一个静态链接的二进制可执行文件:

# CFLAGS=-static shc -r -f hello.sh
# file hello.sh.x

shc -e 03/31/2007 -m “the mysql backup script is now out of date.” -f mysql_back.sh
Linux下Shell脚本编译器(shc)的使用与应用 Linux系统的压缩包文件是将多个文件或目录压缩成一个文件以便于存储和传输。常见的压缩格式有.gz、.tar.gz、.tar.bz2、.zip、.rar等。使用压缩包不仅可以节省存储空间,还能通过密码保护文件内容,增加安全性。在Linux环境下,压缩和解压命令有很多种,例如gzip、bzip2、tar等,每种命令都有其特定的用途和优势。例如,gzip压缩效率较高,适合压缩较小的文件;bzip2压缩率更高,适合压缩较大的文件;tar命令不仅可以打包,还可以选择不同的压缩算法。 阅读详情

相关推荐

shc工具使用指南[源码]

shc是一个将Shell脚本编译为二进制可执行文件的工具,通过将脚本嵌入C代码并编译生成二进制文件,增加反编译难度。文章详细介绍了shc的命令格式、选项及其功能,如设置到期日期、修改到期消息、指定输出文件等。此外,还解释了shc的工作原理,即编码和加密Shell脚本后生成C源代码,再编译为二进制文件,但不会提升执行速度。文章还提供了多个使用示例,如编译可再分发的二进制文件、不可追踪的二进制文件等,并强调了脚本文件首行必须添加#!/bin/sh的重要性。

shell脚本编译成二进制文件shc

将Shell脚本转换为二进制执行文件,可以使用shc工具。shc是一个Shell编译器,它可以将Shell脚本编译成二进制文件。

江上清风山间明月的博客 1933

Zynq 双核AMP 通信

4、配置离线编译(这里不讲),配置linux的内核地址空间(0x4000_0000改为0x2000_0000),以及单核启动。CPU1设置为0x2000_0000~0x3FFF_FFFF(也可以小于0x3FFF_FFFF)如果禁用CPU1的L2 cache,在CPU1的bsp里面添加编译时候所需要的宏。3、配置工程,将vivado产生的.xsa文件复制到amp_com项目目录下。9、使用petalinux-package --boot 打包。一、vivado工程。5、编译u-boot。

y183128184的博客 1086

Shell【工具 01】Shc一个用于将Shell脚本编译成二进制可执行文件的工具(下载安装使用)

摘要:Shc是一个将Shell脚本编译成二进制文件的工具,可保护脚本代码不被直接查看。文章详细介绍了Shc的下载安装方法(支持源码编译和make安装两种方式)、基本语法及常用选项说明,并通过一个简单的测试脚本演示了完整的使用流程,包括编译、生成可执行文件及测试运行。最后指出Shc的主要用途是保护脚本代码安全性,适用于需要分发但不希望脚本内容被轻易查看的场景。但需注意二进制文件仍可能被逆向工程,且会降低可维护性。

Java与大数据相关实践内容分享! 2705

Evolution of Heuristics: Towards Efficient Automatic Algorithm Design Using Large Language Model

启发式算法广泛用于处理复杂的搜索和优化问题。然而,启发式算法的手动设计通常非常耗费人力,需要丰富的工作经验和知识。本文提出了启发式算法的进化 (EoH),这是一种新颖的进化范式,它利用大型语言模型 (LLM) 和进化计算 (EC) 方法进行自动启发式设计 (AHD)。EoH 代表自然语言中的启发式概念,称为思想。然后由 LLM 将它们转换为可执行代码。进化搜索框架中思想和代码的演变使其在生成高性能启发式算法方面非常有效和高效。

weixin_43961909的博客 2162

微机原理课程设计-模拟十字路口交通信号灯

一、设计任务描述 1.1设计目的 通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结合专业从事微机应用设计奠定基础。 1.2 设计要求 控制LED灯,按照十字路口红绿灯的原理亮灭显示: (1) 东西方向车辆放行x秒...

Learning_is_endless的博客 2万+

linux上将sh脚本文件打包成二进制程序文件

shc的命令格式为shc创建命令行上使用-f指定的脚本的剥离二进制可执行版本。如果未使用[-o outfile]选项定义outfile,则默认情况下会附加.x扩展名,并且通常会比原始ascii代码大一点。生成的C源代码保存在扩展名为.x.c的文件中或使用适当选项指定的文件中。如果您使用-e选项提供到期日期,编译后的二进制文件将拒绝在指定日期之后运行。将显示消息请联系您的提供商。可以使用-m选项更改此消息。可以编译任何类型的外壳脚本,但需要提供有效的 -i、-x 和 -l 选项。

热爱生活,忠于自己 1812

基于Dify Agent构建智能客服:攻克知识库查询、多轮对话、安全鉴权与人机协同

基于Dify Agent构建智能客服,并将知识库等核心能力工具化,再通过Chatflow进行流程编排,是一种强大且灵活的策略。它不仅解决了当前AI客服面临的诸多核心挑战,也为未来的功能扩展和智能化升级打下了坚实的基础。希望本文能为您在构建高效、智能的AI客服系统之路上提供有益的参考!dify实验室基于LLMOps平台-Dify的一站式学习平台。包含不限于:Dify工作流案例、DSL文件分享、模型接入、Dify交流讨论等各类资源分享。关注我,获取Dify相关资源(DSL、token、交流群等)。

同名公众号:dify实验室 3742

用shc加密或者编译shell脚本

shell脚本有时候需要保存密码,比如登陆,ftp脚本.有时候又需要是可执行文件的格式,比如在windows下的gvim中是没法直接调用shell脚本的,这就可以通过编译成可执行文件来调用.shc是一个脚本编译工具, 使用RC4加密算法,讲shell脚本编译成动态链接或者静态链接的可执行文件.下载地址:http://www.datsi.fi.upm.es/~frosal/Cyg

Ricky Wu的专栏 3862

无感健康监测的未来:毫米波雷达如何重新定义睡眠科技与居家养老

毫米波雷达技术正重新定义无感健康监测,特别是在睡眠科技与居家养老领域。通过精准监测呼吸、心率和体动,无需穿戴设备即可实现临床级精度。结合合宙Air700E开发板,构建了完整的远程看护解决方案,为老年人提供跌倒检测、异常报警等安全保障,同时保护用户隐私。

cake8的博客 566

“傻瓜”stata入门——熟悉操作界面

小白开始学习stata和matlab,零基础上手

nnpersistent的博客 4456

把代码藏起来!Shell和Perl脚本加密与可执行文件编译技术大全

在当今数字化的时代,脚本编程在软件开发和自动化任务中扮演着至关重要的角色。然而,未加密的脚本代码面临着潜在的盗用和篡改风险,甚至可能导致敏感信息泄露。为此,本文探讨了多种有效的脚本加密与编译技术,涵盖了 Shell 和 Perl 脚本的保护方法。通过使用流行工具如 SHC 和 PAR::Packer,以及加密算法如 Crypt::CBC,开发者能够有效提高源代码的安全性与隐私保护。最终,确保开发者的创意与劳动成果不受侵犯,增强用户对软件的信任。

Lion_Long的博客 2061

美军利用MANET技术实现无人作战单元协同作战

本文首先介绍了移动自组织网络 (MANET)以及Wave Relay®波形中继技术,并探讨了波形中继MANET平台在美空军ABMS项目等军事方面的运用情况。

guanyifu9的博客 853

Linux的Shell脚本加密

Linux Shell脚本简单,易用,功能强大。但是,由于其基于类似文本的编写方式,导致其容易泄露敏感信息。因此,对于Shell脚本的加密也是一个重要的需求。 本文将介绍一款Shell加密工具Shc。它可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。

itas109的专栏 2852

大规模新闻聚合爬虫实战:Python爬取数百万新闻数据的完整指南

本文详细介绍了如何构建一个大规模新闻聚合爬虫,结合Python异步爬虫技术,实现高效、稳定的新闻数据采集。增加NLP模块对新闻内容做自动分类、情感分析。引入机器学习模型检测新闻真实性。使用分布式爬虫框架进一步提升规模。增加多媒体内容抓取与处理。

2201_76125261的博客 1554

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

把代码藏起来!一文讲清Shell和Perl脚本加密与可执行文件编译技术!

脚本加密和编译技术为确保源代码安全性提供了有效的手段。本文详细介绍了使用流行工具和方法对 Shell 脚本和 Perl 脚本进行加密和编译的步骤,旨在帮助开发者保护自己的代码和敏感信息。通过使用shc工具,我们能够将 Shell 脚本编译成二进制格式,使源代码不易被读取和篡改。同时,利用base64编码和openssl加密等方法,进一步增强了脚本在存储和传输过程中的安全性。在 Perl 方面,允许开发者将脚本及其依赖项打包成独立的可执行文件,极大地方便了在不同环境中的运行,而perlcc。

qq_41314882的博客 1805

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

shc 加密错误解决办法

shc 加密错误解决办法 安装下面依赖就可以。

i8520-酷谷的谷子-博客 376

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SHC Shell脚本加密工具安装与使用指南

SHC(Shell Script Compiler)是一个通用的shell脚本编译器工具,它能够将普通的shell脚本转换为加密的二进制可执行文件。该工具通过将脚本编码、加密并生成C源代码,然后使用系统编译器编译生成精简的二进制可执行文件,从而有效保护shell脚本不被轻易查看或修改。 ## 项目结构分析 SHC项目采用标准的开源项目布局,包含以下核心目录和文件: - **src/目录**

gitblog_00978的博客 852

shc将shell脚本转成二进制文件

最近在做一个项目,需要把shell脚本自定拷贝到目标客户端中执行,但是并不想让用户知道脚本的源码,于是采用shc对shell脚本进行处理 首先装个wget工具 yum -y install wget 下载 wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz 解压到当前文件夹 tar zxf shc-3.8.7.tgz...

左北右西 2316

使用shc保护shell脚本源码

shc是一个脚本编译工具, 使用RC4加密算法, 它能够把shell程序转换成二进制可执行文件(支持静态链接和动态链接)。shc主页:http://www.datsi.fi.upm.es/%7Efrosal/安装shcwget http://www.datsi.fi.upm.es/%7Efrosal/sources/shc-3.8.6.tgztar vxf shc-3.8....

weixin_34087503的博客 181
上一篇: gentoo emerge之后出现No outdated packages were found on your system. /etc/dispatch-conf.conf
下一篇: Gentoo下portage包的管理
xiaotjx
博客等级 码龄15年 1粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值