背景
朋友购买了某云服务器,部署了程序(java+redis),后来收到平台的报警短信。
使用top
命令后发现CPU占用率飙升,查资料发现是因为redis密码设置过于简单,被挖矿病毒入侵了。
找出病毒
使用top
命令,找到占用CPU最高的进程。

确认病毒
根据进程号查看进程详情
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| [root@izuf688rg4xz5pozv7vvhfz ~]# systemctl status 13192 ● session-406429.scope - Session 406429 of user root Loaded: loaded (/run/systemd/system/session-406429.scope; static; vendor preset: disabled) Drop-In: /run/systemd/system/session-406429.scope.d └─50-After-systemd-logind\x2eservice.conf, 50-After-systemd-user-sessions\x2eservice.conf, 50-Description.conf, 50-SendSIGHUP.conf, 50-Slice.conf, 50-TasksMax.conf Active: active (running) since 四 2020-07-09 14:39:02 CST; 3 days ago CGroup: /user.slice/user-0.slice/session-406429.scope ├─13192 /etc/networkservice ├─26931 /usr/sbin/CROND -n ├─32336 ./sysupdate └─32486 ./sysguard
7月 11 21:19:05 izuf688rg4xz5pozv7vvhfz crontab[3353]: (root) LIST (root)
|
进入到/etc目录下,
我们可以看到有sysupdate、networkservice、sysguard三个文件,这三个文件都是二进制文件,这三个应该就是挖矿的主程序和守护程序。还有一个update.sh文件,这应该是对挖矿病毒升级用的。这个update.sh怎么找出来的呢,其实是通过定时程序里面的cron找出来的。
解决
- 删除定时任务
- 杀掉进程,并删除文件
- 删除/root/.ssh/authorized_keys(可能攻击者已经配置了免密登录)
- 修改redis密码,或者关闭redis外网端口。