执行了一个 shell 脚本,被吓了一跳

228 天前
 DosLee

开了台虚拟机,本来是想着解锁一下某视频网站的非自制剧观看权限。查了一下大部分都是推荐用 Cloudflare Warp 代理来解锁。这只是开头。

然后我搜索的时候卡看到一个博客写的不错,就按照给出的 Github 地址执行了给出的脚本。执行时使用的是普通用户,不能执行,我就切换到了 root 用户执行脚本。

执行后等待了一会,提示我 “更新依赖时出错,建议重启 SSH 客户端。如果依旧如此建议卸载重装 SSH 客户端” 我看到后很疑惑,这跟 SSH 客户端有什么关系。

我尝试打开最开始执行命令中的连接,看一下脚本运行的步骤。结果,不看不知道,一看吓一跳,打开后整个屏幕都是密密麻麻的字符,仔细看了一眼好像是变量赋值,中间部分有一个 eval 命令读取变量后拼接到一起然后组成一个“明文”脚本。

我看明白后当场就觉得完了,是不是植入挖矿或是其他可执行文件了,要隐藏的这么深。

我尝试写了一个 Python 脚本,解析后我发现,竟然还用 Base64 编码了。还需要解码,我找了一个在线网页进行解码后,这家伙,还是一个套娃,有好几层(命令我会发到第一层评论)。

改了改了 Python 脚本全部解析后,看到了脚本的真实面目。然后发现,竟然还有反转。

脚本在一开始定义了一个 skip 变量,在这个变量指定的地方写的是 "BZh91AY&SYX" 开头的字符,后边全是乱码了。我一看,这不会是把压缩文件放脚本中了吧。我试着使用 tail -n +76 endip.sh | bzip2 -cd > output.sh 仔细查看了脚本,竟然没发现有什么不同。那这“里三层外三层”又是拼接又是下载新脚本的到底是干什么?

7698 次点击
所在节点    程序员
40 条回复
defunct9
227 天前
lujiaxing
227 天前
估计 整件事都是他自己在炒作自己... 让更多人用自己的脚本.
Misaka 跟他是同一个人.

加密代码明面说的是防止 Misaka 抄袭,
本质上是植入挖矿代码或者为植入挖矿代码做准备
xxx027
227 天前
因为真的会被那个小朋友直接改成自己的,被那个小朋友祸害过的可不少
脚本作者好像说过如果找得到脚本挖矿的证据直接奖励 10 万元
uub
227 天前
之前有人发过他脚本的源码
https://gitlab.com/openyg1/openyg
vB4h3r2AS7wOYkY0
227 天前
啥脚本看都不看直接 root 跑也是没谁了,再说配置一个 warp 又不是多费劲儿的事儿。
没被风控的区域直接 wgcf+wireguard 搞定,风控的区域用 warp-go (不过后者也是没开源的东西,建议 systemd dynamic user 跑。
Greendays
227 天前
这个 Misaka 和 Jellyfin 的那个 Misaka 应该没啥关系吧(
Remember
227 天前
@MayKiller 很多人是看都不看源码,就执行别人的一键脚本的。
xjngbla
227 天前
@defunct9 #1 花了我半小时
DosLee
227 天前
@MayKiller 害,不是主力机,当时也是想着实验一下,能不能获取到 Warp 比较好的 IP ,不能用就删了。

平时很少用脚本,都是包管理器安装。用脚本也会用 GPT 检查一下的。
banyasmya23
227 天前
@defunct9 #21 大佬 博客代码前面的序号,复制的时候也会被复制下面,运行就报错 很麻烦啊 优化下吧
banyasmya23
227 天前
@defunct9 #21 https://i.mji.rip/2024/05/09/a4d937354f2d070c106363db4d555a1c.png 大佬 博客代码前面的序号,复制的时候也会被复制下面,运行就报错 很麻烦啊 优化下吧
halofingle
227 天前
之前看到视频评论说这人脚本里面有挖矿程序。。。还能看机器配置决定是否启动。。。配置低的就不挖
cosette
227 天前
拒绝任何 `bash -c $(curl example.com)` 或者类似的管道安装和运行的方式,尤其是直接使用 root 用户的情况下。

跑来源不明的脚本属于心比较大的情况,除非是非常值得信赖的情况。
defunct9
227 天前
@banyasmya23 https://mjj.today/i/TSpFYG . 应该是你自己的问题。markdown 的文件,本身也没有序号。你自己检查自己的机器吧。
lisxour
227 天前
根据我见过这么多类似事件的经验,代码开源 + 无故混淆加密、二次动态分发下载,90%都有鬼
FrankAdler
226 天前
@defunct9 大佬留个联系方式,下次发代码到 GitHub 前先找你掌掌眼
ClarkAbe
226 天前
@defunct9 就是...应该给他电脑开个 ssh, 连上去全给他删了
defunct9
226 天前
@FrankAdler 不敢。github 本身就是个人平台,写自己的就是。至于好还,不好就改呗。写的多了自然就好了。
FrankAdler
226 天前
@defunct9 个人感觉,就上面贴出来这个脚本,写的稀烂。这也配放到 github 上?果真无耻无畏
真的不会骂我吗
defunct9
226 天前
@FrankAdler 上面这种夹杂着 2 进制,伪开源的东西,你看着不闹心么

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

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

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

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

© 2021 V2EX