挖矿的类型

  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. 企业使用erp系统的好处及解决了什么问题?

    不是所有的企业使用ERP都能带来好处的,尤其是对于一些小微企业,带来的可能是灾难,而实施不适用的系统同样也会带来意想不到的后果,所以在ERP的使用方面得根据自己企业实际做决定.不同规模的企业选用不同的 ...

  2. Java连接MySQL数据库。编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计。

    题目2:编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计.之后,可根据显示的内容进行某条记录的删除(以id为条 ...

  3. vue3中pinia的使用总结

    pinia的简介和优势: Pinia是Vue生态里Vuex的代替者,一个全新Vue的状态管理库.在Vue3成为正式版以后,尤雨溪强势推荐的项目就是Pinia.那先来看看Pinia比Vuex好的地方,也 ...

  4. 关于Jenkins-Item-Office 365 Connector-下的多选框的参数定义

    在Jenkins的Item中Office 365 Connector下,我们有时会使用到,多选框(复选框),目的是可选择多个多个条目赋值给指定的变量 然后在Build Triggers中可以进行引用, ...

  5. 在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)

    1.maven教程官网 https://m.runoob.com/maven/ 2.理解Maven的构建生命周期(clean.Package) 3.在项目中使用maven进行打包 4.运行打包好的ja ...

  6. 齐博x1会员中心菜单权限显示

    会员中心的菜单可以通过后台设置用户组权限进行显示或者是隐藏.比如商城里的菜单如下: 菜单文件是:\application\shop\member_menu.php return array( 'cms ...

  7. js 获取开始时间和结束时间相隔小时及分钟(时间戳操作)

    js 获取开始时间和结束时间相隔小时及分钟(时间戳操作) 场景描述:获取开始时间和结束时间相隔小时及分钟 实例: TimeOnConfirm(curDate) { if(this.pickernum ...

  8. 使用 StringUtils.split 的坑

    点赞再看,动力无限. 微信搜「程序猿阿朗 」. 本文 Github.com/niumoo/JavaNotes 和 未读代码博客 已经收录,有很多知识点和系列文章. 在日常的 Java 开发中,由于 J ...

  9. 学习Rust第一天 Rust语言特点

    学习Rust之前,我觉得应该首先了解Rust语言的设计目的是什么?为什么会诞生这门语言?这门语言和其他的语言有什么不同. Rust语言的设计特点 高性能:rust拥有和C++相近的性能表现,所以在嵌入 ...

  10. gorm

    特性 全功能 ORM 关联 (Has One,Has Many,Belongs To,Many To Many,多态,单表继承) Create,Save,Update,Delete,Find 中钩子方 ...