挖矿的类型

  1. 主动挖矿:用户在个人电脑或服务器使用挖矿程序进行CPU,GPU计算,获取虚拟货币。
  2. 被动挖矿:挖矿病毒通过系统漏洞,恶意程序,弱口令等方式入侵服务器,设备感染挖矿病毒后会开始挖掘虚拟货币。
  3. 前端挖矿:JS挖矿,挖矿病毒嵌入到王爷的javascript中,用户访问网页时浏览器执行挖矿命令,现在比较少。不稳定,用户关闭浏览器挖矿程序可能就停止运行了。

常见挖矿事件的行为

  1. 访问恶意域名
  2. CPU GPU占用率高
  3. 端口扫描行为

挖矿的排查思路

总体思路就是:隔离被感染主机   进程确认和系统排查   清除挖矿木马  加固与防范

一:初步判断:是否遭受挖矿攻击,攻击时间,传播范围,网络环境等。

二:异常进程与文件:隔离被感染的主机后,就要确定挖矿的恶意进程及其关联的恶意样本,以便后续进行清楚工作。

三:系统排查:挖矿木马会创建恶意的进程连接矿池,利用计算机CPU,GPU资源来挖矿。同时会利用系统的功能来实现持久化,例如创建用户,计划任务,启动项,注册表等。

四:日志排查:登录日志,服务器日志,安全设备日志,做一下根因分析,避免加固后再次出现同类问题。

具体的排查操作

  • 异常进程与文件
  1. 使用top 命令查看占用CPU最高的进程

 2.ps命令也可以定位高CPU占用的进程。

  ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%cpu | head -n 5    cpu占用前5的信息

  • 网络连接排查 netstart

netstart -anltp  查看到可疑ip可以到威胁情报上去确认是否为矿池域名或恶意地址

  • 查看可疑的进程文件

经过上面排查,基本获取到进程的pid,可以依据pid去查找相关恶意文件

lsof -p pid

ls -al /proc/[pid]/exe   定位程序的实际路径

  • 结束进程清除文件

kill -9 pid

  • rm 删除可疑的程序文件

rm -rf 文件路径

  • 有些时候无法通过上述排查定位pid,可能是将/proc/pid进行了隐藏,可以通过以下方式隐藏

mkdir .hidden

mount -o bind .hidden /proc/pid

这种情况可以使用  cat /proc/$$/mountinfo

恶意程序为了持久化驻留,还会创建计划任务 ,启动项,用户账号等

计划任务排查

1.使用计划任务命令查询   crontab -u root -l 查看root用户计划任务

2.查看/etc下计划任务文件

ls /etc/cron*  查看/etc目录下所有计划任务文件

常见的定时任务文件

/var/spool/cron/*    #centos的

/var/spool/cron/crontabs/*    #ubantu的

/etc/anacrontab*   异步定时

/etc/cron.hourly/*

/etc/cron.daily/*

/etc/cron.weekly/*

/etc/cron.monthly/*

  • 启动项排查

chkconfig    查看开机启动项目

cat /etc/init.d/rc.loacal  查看init.d文件夹下的rc.local文件内容

cat /etc/rc.local    查看rc.local文件内容

ls -alt /etc/init.d  查看init.d文件夹下所有文件的详细信息

不同的linux发行版查看开机启动项的文件不大相同,Debian系linux一般查看/etc/init.d目录最近有无修改和异常的开机启动项;Redhat系一般查看/etc/rc.d/init.d或者/etc/syetemd/syetem等目录。

  • 可疑账号排查

查找可登录账号:  cat /etc/passwd | grep -E "/bin/bash$" | awk -F: '{print $1}'

查找超级用户:  awk -F: '$3==0 {print $1}' /etc/passwd

查找公钥文件

  cat /root/.ssh/*.pub

  cat /root/.ssh/authorized_keys

  • 日志排查

登录成功  more /var/log/secure* | grep "Accepted password"

登录失败 more /var/log/secure* | grep "Failed password"

空口令登录  more /var/log/secure* | grep "Accepted none"

新增用户  more /var/log/secure* | grep "new user"

历史命令   history        cat /root/./bash_history

系统日志排查无果的话,可以排查其他服务的日志,如web 中间件等

  • Linux的库文件劫持

  排查时命令如果无法正常显示效果,可能是文件被劫持或做了替换,这种情况可以使用busybox来查看

linux挖矿处置的更多相关文章

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

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

  2. Linux挖矿程序kworkerds分析

    0×00 背景概述 近日,同伴的一台Linux服务器中了kworkerds挖矿程序,随即对挖矿程序进行了处理与分析. 0×01服务器现状 进入服务器之后通过top命令,没有发现有占用CPU资源过高的进 ...

  3. Linux.挖矿.cpuminer方法记录

    挖矿一般都要用高端显卡做矿机, 不是一般人玩得起 这里讲的是一种用CPU来挖矿的方法, 纯玩玩, 不要指望能致富喔 本方法在CentOS和树莓派原生系统上测试通过 先从git下载cpuminer gi ...

  4. Linux挖矿病毒 khugepageds详细解决步骤

    一.背景 最近公司一台虚拟机被攻击,其中一种挖矿病毒.会伪CPU数.即如果用top命令只能看到一个cpu.并且负载不高.实际上整个负载300%以上,及时定时任务关掉也不起作用. 二.言归正传开始干掉这 ...

  5. 解决linux挖矿病毒(kdevtmpfsi,sysupdate, networkservice)

    突然发现公司测试服务器CPU过高,是这两个sysupdate, networkservice进程,很明显是被挖矿了,记录下来以供参考. 病毒会把一些文件给加i锁或a锁,导致无法修改数据,所以某些操作需 ...

  6. 莱特币ltc在linux下的多种挖矿方案详解

    莱特币ltc在linux下的多种挖矿方案详解 4.0.1 Nvidia显卡Linux驱动Nvidia全部驱动:http://www.nvidia.cn/Download/index.aspx?lang ...

  7. [转帖]御界预警:3700余台SQL服务器被入侵挖矿 或导致严重信息泄露事件

    御界预警:3700余台SQL服务器被入侵挖矿 或导致严重信息泄露事件 https://zhuanlan.kanxue.com/article-8292.htm sqlserver的弱密码破解和提权攻击 ...

  8. linux 与 windows 挖门罗币总结

    比特币之前一直很火,初次了解的时候才2000RMB一枚..看不懂哇,错失良机...当然了,看得懂也不买不起..当时还是穷学生. 最近又一直看到黑客利用linux漏洞挖门罗币获利的新闻,决定好生研究一下 ...

  9. SSH 暴力破解趋势——植入的恶意文件属 DDoS 类型的恶意文件最多,接近70%,包括 Ganiw、 Dofloo、Mirai、 Xarcen、 PNScan、 LuaBot、 Ddostf等家族。此外挂机、比特币等挖矿程序占5.21%

    SSH 暴力破解趋势:从云平台向物联网设备迁移 | 云鼎实验室出品 from: http://www.freebuf.com/articles/paper/177473.html 导语:近日,腾讯云发 ...

  10. Linux系统应急响应

    目录 排查用户相关的信息 排查进程端口相关的信息 查找恶意程序并杀掉 斩草除根 判断入侵方式,修复漏洞 当我们被告知一台Linux服务器被黑客入侵,黑客利用该服务器进行挖矿,并且在该服务器上放置了木马 ...

随机推荐

  1. 7.httpie

    可以使用curl或httpie测试我们的服务器.Httpie是用Python编写的用户友好的http客户端   安装:pip3 install httpie #get请求示例 输入命令:http ht ...

  2. Kafka 架构和原理机制 (图文全面详解)

    目录 一:Kafka 简介 二:Kafka 基本架构 三:Kafka 基本原理 四:Zookeeper 在 kafka 的作用 五:Kafka 的特性 六:Kafka 的应用场景 一:Kafka 简介 ...

  3. maven的下载、安装、配置,idea中配置Maven

    下载 下载链接: 点击下载地址 : 找到:对应版本的包下载 安装 下载后的压缩包解压出来,然后将解压后的包放到日常安装软件的位置即安装成功,当然取决于个人意愿,也可以不移动. 打开安装包后的目录结构简 ...

  4. Jupyter基本使用

    https://www.cnblogs.com/zhrb/p/12174167.html 用来取代Jupyter Notebook的一个基于Web的用户交互式用户界面.相当于增强版的Jupyter N ...

  5. WSL下的Ubuntu 18.04LTS配置软件源和系统更新

    WSL下的Ubuntu 18.04LTS配置软件源和系统更新 设置系统语言为中文 # 安装中文支持 sudo apt-get install -y language-pack-zh-hans # 设置 ...

  6. 【云原生 · Kubernetes】Kubernetes 编排部署GPMall(一)

    1.规划节点 IP 主机名 节点 10.24.2.156 master Kubernetes master 节点 10.24.2.157 node Kubernetes worker 节点 2.基础准 ...

  7. 聊聊Go里面的闭包

    以前写 Java 的时候,听到前端同学谈论闭包,觉得甚是新奇,后面自己写了一小段时间 JS,虽只学到皮毛,也大概了解到闭包的概念,现在工作常用语言是 Go,很多优雅的代码中总是有闭包的身影,看来不了解 ...

  8. FluentFTP能连接却报未将对象引用设置到对象的实例。

    本来项目中用的好好的FTP下载传输,不知道从什么时候开始读取不到了,也上传不了.实际读取的是本地缓存的.因为同事上传不了文件和图片才发现.上源码! #region 下载文件 static byte[] ...

  9. i春秋象棋

    这是一道非常有意思的一道题,打开后就是一个pve的象棋游戏,我觉得下赢了就应该会出现flag,可惜多次尝试后失败了(果真有点厉害,我一时兴起就玩了好几把,有空试试拿更厉害的电脑跟他对下,如果赢了会怎么 ...

  10. apt-mirror 制作麒麟桌面版内网源

    apt-mirror 制作麒麟桌面版内网源 一.修改apt软件安装源 1.修改source.list安装源 vi /etc/apt/sources.list 添加: deb http://archiv ...