网上下载了个所谓的云免脚本,懂 shell 大神帮看看 gzexe 压缩

2017-05-06 15:28:42 +08:00
 pew
我判断是 gzexe 加密的,因为不太懂 shell,求大神帮分析分析

#!/bin/sh
skip=44

tab=' '
nl='
'
IFS=" $tab$nl"

umask=`umask`
umask 77

gztmpdir=
trap 'res=$?
test -n "$gztmpdir" && rm -fr "$gztmpdir"
(exit $res); exit $res
' 0 1 2 3 5 10 13 15

if type mktemp >/dev/null 2>&1; then
gztmpdir=`mktemp -dt`
else
gztmpdir=/tmp/gztmp$$; mkdir $gztmpdir
fi || { (exit 127); exit 127; }

gztmp=$gztmpdir/$0
case $0 in
-* | */*'
') mkdir -p "$gztmp" && rm -r "$gztmp";;
*/*) gztmp=$gztmpdir/`basename "$0"`;;
esac || { (exit 127); exit 127; }

case `echo X | tail -n +1 2>/dev/null` in
X) tail_n=-n;;
*) tail_n=;;
esac
if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then
umask $umask
chmod 700 "$gztmp"
(sleep 5; rm -fr "$gztmpdir") 2>/dev/null &
"$gztmp" ${1+"$@"}; res=$?
else
echo >&2 "Cannot decompress $0"
(exit 127); res=127
fi; exit $res

***下面就是各种乱码**
主要是运行过程解压到临时文件夹就立马 rm -fr 删除了
想在中间插入 cat 或者 cp 还报错"Cannot decompress $0"
5969 次点击
所在节点    Linux
22 条回复
pew
2017-05-06 15:29:18 +08:00
表示这个排版有点醉
kmahyyg
2017-05-06 15:33:00 +08:00
我搞过,那段乱码是个 libc 编译好的东西,才是真正的安装脚本,反编译吧
pew
2017-05-06 15:43:26 +08:00
@kmahyyg 嗯,但它也是解压到"$gztmp"这个文件夹运行了呀,就是一运行就删了,要不然就能找到解压的安装脚本了
linhua
2017-05-06 15:48:09 +08:00
禁止删除呀

2、chattr

change attribute,即修改文件或目录的隐藏属性;
(1)i:如果设置了此属性,则目录或文件不能被修改(即使 root 也不能修改或删除他)。
(2)a:如果设置了此属性,只能添加内容,而不能修改或删除内容;

chattr +ai file:添加属性;
chattr -ai file:删除属性;
chattr =a file:设置属性;

a:Append Only,系统只允许在这个文件之后增加数据,而不能删除这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立文件,而不允许删除任何文件,也不允许修改目录下原有的文件。只有 root 用户可以设置这个属性。
pew
2017-05-06 15:58:46 +08:00
@linhua 这个厉害,我试试
pew
2017-05-06 16:07:19 +08:00
@linhua 这个能作用到二级目录吗,它是执行的时候在 /tmp 下新建一个 /tmp.XXXX 文件夹,然后把脚本解压其中
kmahyyg
2017-05-06 17:37:44 +08:00
@pew 直接单独复制乱码部分出来,gzip 解开就行
chinanala
2017-05-06 18:44:05 +08:00
以前跟康师傅和骚猪要了源码,不知道丢哪去了
bearqq
2017-05-06 20:04:55 +08:00
chmod 700 "$gztmp"
这段改成 cat "$gztmp" ~/x 之类的就有了
用 ultraedit 之类的软件改,可以在 win 下用各种类似 cygwin 的环境运行

最早解出来是脚本,后来是二进制 bin
ihciah
2017-05-06 20:43:10 +08:00
几天前刚刚手拆了这个东西……
叫康师傅云免是吧,解压了然后 upx 脱个壳,拉 ida 里约等于明文了…
这东西干了一件比较奇怪的事,把系统的 curl 给换了…
有两个验证授权的地方,如果你少 patch 一个地方,还会删你 home 目录…
ps: 搭反代实测上海电信的三爱免流基于 ip 白名单,别试了。
ZeroClover
2017-05-07 06:24:43 +08:00
gzexe 压缩的脚本文件不是直接 gzexe -d 就可以还原了么。。。
pew
2017-05-07 17:22:10 +08:00
@bearqq 一改就没法运行了--
pew
2017-05-07 17:22:27 +08:00
@ihciah 求问怎么解压
bearqq
2017-05-07 17:47:07 +08:00
@pew 你不是要解压吗,改了以后就解压到你改的地方了,至于解压出来是脚本还是二进制程序那就看作者了
解压出来要运行先 chmod +x
pew
2017-05-07 17:56:30 +08:00
@bearqq 确实管用,不过得出的文件打开是乱码==,不是到是什么格式的。。。
pew
2017-05-07 17:57:47 +08:00
@bearqq 那就可能是二进制,得不到明文-。-
bearqq
2017-05-07 18:08:24 +08:00
@pew 二进制的参考 ihciah 的回复
反正也是折腾的事情,明文是没法简单拿到了,想折腾就继续吧~
pew
2017-05-07 19:03:58 +08:00
@ihciah 解压了,貌似没查到壳
ihciah
2017-05-07 20:33:56 +08:00
@pew
刚才把之前分析的东西打包丢服务器了(不保证链接长期有效
https://www.ihcblog.com/kangshifu_analyse.zip
jyf
2017-05-07 21:43:49 +08:00
你看命令里不是有 gzip -cd 么 不用猜就是 gz 许多大公司的 linux 版安装都是这个鬼玩法

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/359565

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX