最近买的云服务器中毒了,起因是安装 redis 的时候默认安装,没有进行安全配置。过了一个晚上就被入侵了,好像是挖矿病毒。症状就是每天 1 点中会跑很多的定时任务,造成服务器内存溢出。定时任务会运行 ftpdns 和 ftphttp 两个文件,具体代码就不传播了。有遇到的麻烦提供一下解决方法。
1
goodryb 2019-04-08 13:21:19 +08:00
有快照就回滚,没有就重装吧,以免后患
|
2
defunct9 2019-04-08 13:25:05 +08:00 1
开 ssh,让我上去看看。
|
3
claysec 2019-04-08 13:33:34 +08:00
#1 +1
|
4
pynix 2019-04-08 13:35:04 +08:00
你干嘛把入网端口打开呢?
|
5
jjc27017 2019-04-08 13:37:38 +08:00
如果没有重要资料在上面就直接删掉重新安装系统就可以了,redis / mongo 这种全部按默认,然后暴露公网的最容易被搞
|
8
javashell 2019-04-08 13:39:57 +08:00 via Android
猜测 redis 未授权导致的,看看定时任务和进程有没有挖矿程序运行
|
9
Hanbuger OP @javashell 有定时任务,会从 https://pastebin.com/上 down 程序,每天一点运行
|
12
javashell 2019-04-08 13:51:35 +08:00 via Android
@Hanbuger 如果不是你设置的定时任务,先删掉定时任务在 kill 进程,关闭公网 redis 端口或设置密码再看看
|
13
1O 2019-04-08 13:53:45 +08:00
你这没啥损失重装就行了,以前我有一台机器中招了流量给我跑超了 2000 多块钱,钱被扣了才发现,肠子都悔青了。
|
14
Hanbuger OP @javashell 定时任务删了,过一会又会有。redis 端口已经关了,还换了系统用户名。现在就是纳闷是在哪里生成的定时任务
|
18
52coder 2019-04-08 14:33:28 +08:00
问题解决了吗,你指的 redis 默认安装存在问题,需要如何避免? 刚好最近在看 redis,我安装就是 make make install
|
19
luanluan 2019-04-08 14:34:38 +08:00
开 SSH 我来给你弄
|
20
wzaqqq 2019-04-08 14:44:23 +08:00 1
重装吧,估计很多基础命令都被换了
|
21
wesall100200 2019-04-08 14:45:29 +08:00
@defunct9 哥们这句话好眼熟哈哈
|
22
huiyifyj 2019-04-08 14:48:09 +08:00 via Android
用着 win server2012 正常。
|
23
aulia 2019-04-08 14:54:58 +08:00 via Android
妥妥的 redis 开默认没密码
|
24
abc12524 2019-04-08 14:58:50 +08:00
让我康康!
|
25
jjc27017 2019-04-08 15:52:19 +08:00
最好是直接删了重开一个吧,那些脚本做了什么排查起来很耗时间的,改了底层的话你继续用又不知道。之后注意高危软件的配置就好了(不使用默认端口,账号密码认证登录,最好能指定源 ip 地址访问)
|
26
recall704 2019-04-08 16:52:12 +08:00
之前我的云服务器也中毒了,分析一波发现是挖矿的。
skill -STOP 15753 你可以通过上面这个命令,冻结进程,让后慢慢分析。 |
27
tomczhen 2019-04-08 16:53:47 +08:00
改本地 host 让脚本更新地址失效就好 :doge:
|
28
Jblue 2019-04-08 17:29:33 +08:00
我也遇到过,最好的方法还是重装。舍不得的话看看 redis 里面有没有奇怪的数据多出来,看看服务器上有没有多出用户。
|
29
jhsea3do 2019-04-08 17:52:20 +08:00
重装吧,保险点, 安全组只开 ssh / http(s)
|
30
lrh3321 2019-04-08 18:01:02 +08:00 via Android
重装保险点。以前也碰上过,后来 redis 就老老实实跑 docker 里了
|
31
cnzjl 2019-04-08 18:01:27 +08:00
|
32
nickfan 2019-04-08 18:14:58 +08:00
公司老服务器中过同样的枪,给你个方案参考一下:
1. 改 /etc/hosts 先屏蔽 pastebin.com 2. 清理各个用户下的 crontab 中的自动下载脚本 3. 用 ll -rt 在 /etc/init.d/下看一下最近添加的启动脚本 4. 用 lsof -p 看内存中这些垃圾进程打开的文件句柄关联的文件,并清理之。 5. 确认没问题,取消 pastebin.com 的屏蔽 6. 重启过一段时间确认没有问题。 done. |
33
catalina 2019-04-08 18:20:42 +08:00 via Android
我都是开在 loopback 接口上,然后需要调试的时候直接 ssh 本地映射过来(这样在机器上看过去就是 localhost 连接到服务器上的)弄的。。。
|
34
bk201 2019-04-08 18:20:55 +08:00
这时候就体现容器化的好处了
|
35
hxz0803 2019-04-08 18:43:07 +08:00
|
36
mikeguan 2019-04-09 00:41:17 +08:00 via Android
1. 不用 root 启动 Redis
2. 可以的话不用默认端口 3. 开启授权认证,密码建议 32 位以上 |
37
akira 2019-04-09 00:57:24 +08:00
重新开一台 数据导过来以后 原来的直接废弃
|
38
linnil 2019-04-09 08:40:19 +08:00
很久没关注`redis`的挖矿木马了,解决方案参考:[对抗这种 rootkit 难度爆表,,回滚更划算,]( https://www.v2ex.com/t/537457?p=1)
|
39
Hanbuger OP 改了用户名,好像运行的代码里会判断用户名是否等于 root,过了一天发现定时任务里没有增加,再等等看好不好使
|
40
rootit 2019-04-10 11:28:26 +08:00
这种问题 直接回滚或重装系统,别想能清理干净 rootkit,别报一丝希望
|