1、症状
- 服务器一直向外发送SYN请求,并且无法通过netstat -anplt获取到对应的PID
- 服务器CPU一直很低,通过PS查找不到异常程序
- 安装NetHogs,工具卡死,无法显示是那个程序发起的请求(因为请求都是SYN_SEND,并且发生完成,进程就死亡),只能显示-
2、原因
1、大概率是因为Redis没有认证密码,通过aof设置定时任务,拉取病毒脚本http://oracle.zzhreceive.top/b2f628/b.sh
2、相关分析看博客1、博客2
3、病毒是TeamTNT变种
3、解决方案
1、删除认证密钥
cd ~/.ssh/
cat authorized_keys*
[root@redis-server .ssh]# lsattr authorized_keys*
-----a---------- authorized_keys
-----a---------- authorized_keys2
[root@redis-server .ssh]# chattr -a authorized_keys*
[root@redis-server .ssh]# echo > authorized_keys
[root@redis-server .ssh]# echo > authorized_keys2
2、停止进程,并且删除文件
rm -rf /var/tmp/.copydie/
[root@redis-server ~]# systemctl stop kswapd0
[root@redis-server ~]# rm -f /etc/systemd/system/kswapd0.service
[root@redis-server ~]# systemctl daemon-reload
3、删除关联进程
[root@redis-server ~]# rm -f /usr/share/[scan] /usr/local/bin/pnscan /usr/local/bin/pnscan /usr/libexec/urlgrabber-ext-down
[root@redis-server ~]# systemctl stop scan
[root@redis-server ~]# systemctl stop mass
[root@redis-server ~]# rm -f /etc/systemd/system/scan.service /etc/systemd/system/mass.service
4、刷新
[root@redis-server ~]# systemctl daemon-reload
5、验证
netstat -anplt|grep syn