破解sh执行加密脚本方法 简单粗暴

1.下载一个加密过的脚本测试,不要执行

2.分析正版脚本之后发现他只用了shc加密,我们可以用unshc脚本一键解密,也可以用内存中获取解密之后的数据(Core Dump)

unshc脚本下载地址:https://github.com/yanncam/UnSHc


什么是Core dump
Core dump翻译过来就是核心转储,当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump。core dump在应用crash掉之后对问题的诊断是很有帮助的。多数情况下Core dump默认是关闭状态的。



方法一:直接执行命令行开启:

1

ulimit -c 70000

通过上面的命令就开启了core dump,同时限制文件大小为7000k,也就是限制单个文件大小为7M左右,一般的脚本没那么大的。

方法二:配置profile文件,打开/etc/profile文件,在里面可以找到


Shell



ulimit –S –c 0 > /dev/null 2>&1

将它修改成下面这样就可以了。


Shell



ulimit –S –c unlimited > /dev/null 2>&1

当然,对于像我们这样的菜鸟来讲,还是方法一比较实际。

开启了Core Dump,我们就可以进行猥琐的解密工作了。

首先设置下执行脚本并中断,假如你需要解密的二进制脚本文件名为abc

1

./abc & ( sleep 0.02 && kill -SIGSEGV $! )

执行后该目录会出现一个新文件core_xxxx(xxxx为随机的uid号)

然后把这个文件传到电脑里面(便于新手操作)用文本编辑器打开,编码为utf-8

然后就会发现有一大段乱码的文件,然后删除之后就是完整的脚本了

脚本破解

脚本解密之后我们就能直接对脚本进行编辑,此时的破解应该是很简单的,我就直接把他的判断搞成恒等式,然后就行了,要更高级的破解方式还请另行百度


文章来自 https://www.xtboke.cn/CodeNotes/51.html


原文链接:,转发请注明来源!
「破解sh执行加密脚本方法 简单粗暴」评论列表

发表评论