• 挖矿病毒分析(centos7)


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

    服务器中挖矿病毒后,最基本的一个特征就是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删除该用户

    image.png

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

    3、[scan]

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

    image.png

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

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

    image.png

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

    4、pamdicks

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

    image.png

    image.png 可以看出来啊,这个木马特别的猛啊,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的端口不通就没有事情。只要内网里有机器感染了病毒,就可以继续感染。

  • 相关阅读:
    C语言(第三十七天)
    HTML+CSS大作业——电影动漫言叶之庭(4页) web前端课程设计_web前端课程设计代码,web课程设计-HTML网页制作代码
    高数(上)
    【毕业设计】62-基于单片机的防酒驾\酒精浓度检测系统设计研究(原理图、源代码、仿真工程、低重复率参考设计、PPT)
    es的数据存储结构;近实时查询原因
    xml转换成txt (VOC转换为YOLO)
    ASEMI新能源快恢复桥EGBJ5006/HGBJ5006
    java根据经纬度转地址或者根据地址转经纬度
    ionic+vue+capacitor系列笔记--常用操作代码合集(图片引用,axios跨域配置,去除按钮波纹)
    <script>标签内容详解
  • 原文地址:https://www.cnblogs.com/-xiao-wu-ge/p/16128911.html