linux挖矿处置
挖矿的类型
- 主动挖矿:用户在个人电脑或服务器使用挖矿程序进行CPU,GPU计算,获取虚拟货币。
- 被动挖矿:挖矿病毒通过系统漏洞,恶意程序,弱口令等方式入侵服务器,设备感染挖矿病毒后会开始挖掘虚拟货币。
- 前端挖矿:JS挖矿,挖矿病毒嵌入到王爷的javascript中,用户访问网页时浏览器执行挖矿命令,现在比较少。不稳定,用户关闭浏览器挖矿程序可能就停止运行了。
常见挖矿事件的行为
- 访问恶意域名
- CPU GPU占用率高
- 端口扫描行为
挖矿的排查思路
总体思路就是:隔离被感染主机 进程确认和系统排查 清除挖矿木马 加固与防范
一:初步判断:是否遭受挖矿攻击,攻击时间,传播范围,网络环境等。
二:异常进程与文件:隔离被感染的主机后,就要确定挖矿的恶意进程及其关联的恶意样本,以便后续进行清楚工作。
三:系统排查:挖矿木马会创建恶意的进程连接矿池,利用计算机CPU,GPU资源来挖矿。同时会利用系统的功能来实现持久化,例如创建用户,计划任务,启动项,注册表等。
四:日志排查:登录日志,服务器日志,安全设备日志,做一下根因分析,避免加固后再次出现同类问题。
具体的排查操作
- 异常进程与文件
- 使用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挖矿处置的更多相关文章
- Windows Azure Virtual Machine (39) 清除Linux挖矿病毒
<Windows Azure Platform 系列文章目录> 1.之前客户遇到了Azure Linux CPU 100%,症状如下: 2.SSH登录到Linux,查看crontab,有从 ...
- Linux挖矿程序kworkerds分析
0×00 背景概述 近日,同伴的一台Linux服务器中了kworkerds挖矿程序,随即对挖矿程序进行了处理与分析. 0×01服务器现状 进入服务器之后通过top命令,没有发现有占用CPU资源过高的进 ...
- Linux.挖矿.cpuminer方法记录
挖矿一般都要用高端显卡做矿机, 不是一般人玩得起 这里讲的是一种用CPU来挖矿的方法, 纯玩玩, 不要指望能致富喔 本方法在CentOS和树莓派原生系统上测试通过 先从git下载cpuminer gi ...
- Linux挖矿病毒 khugepageds详细解决步骤
一.背景 最近公司一台虚拟机被攻击,其中一种挖矿病毒.会伪CPU数.即如果用top命令只能看到一个cpu.并且负载不高.实际上整个负载300%以上,及时定时任务关掉也不起作用. 二.言归正传开始干掉这 ...
- 解决linux挖矿病毒(kdevtmpfsi,sysupdate, networkservice)
突然发现公司测试服务器CPU过高,是这两个sysupdate, networkservice进程,很明显是被挖矿了,记录下来以供参考. 病毒会把一些文件给加i锁或a锁,导致无法修改数据,所以某些操作需 ...
- 莱特币ltc在linux下的多种挖矿方案详解
莱特币ltc在linux下的多种挖矿方案详解 4.0.1 Nvidia显卡Linux驱动Nvidia全部驱动:http://www.nvidia.cn/Download/index.aspx?lang ...
- [转帖]御界预警:3700余台SQL服务器被入侵挖矿 或导致严重信息泄露事件
御界预警:3700余台SQL服务器被入侵挖矿 或导致严重信息泄露事件 https://zhuanlan.kanxue.com/article-8292.htm sqlserver的弱密码破解和提权攻击 ...
- linux 与 windows 挖门罗币总结
比特币之前一直很火,初次了解的时候才2000RMB一枚..看不懂哇,错失良机...当然了,看得懂也不买不起..当时还是穷学生. 最近又一直看到黑客利用linux漏洞挖门罗币获利的新闻,决定好生研究一下 ...
- SSH 暴力破解趋势——植入的恶意文件属 DDoS 类型的恶意文件最多,接近70%,包括 Ganiw、 Dofloo、Mirai、 Xarcen、 PNScan、 LuaBot、 Ddostf等家族。此外挂机、比特币等挖矿程序占5.21%
SSH 暴力破解趋势:从云平台向物联网设备迁移 | 云鼎实验室出品 from: http://www.freebuf.com/articles/paper/177473.html 导语:近日,腾讯云发 ...
- Linux系统应急响应
目录 排查用户相关的信息 排查进程端口相关的信息 查找恶意程序并杀掉 斩草除根 判断入侵方式,修复漏洞 当我们被告知一台Linux服务器被黑客入侵,黑客利用该服务器进行挖矿,并且在该服务器上放置了木马 ...
随机推荐
- PAT (Basic Level) Practice 1006 换个格式输出整数 分数 15
让我们用字母 B 来表示"百".字母 S 表示"十",用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数. ...
- 关于aws上ec2机型的种类总结汇总
在aws上ec2的机型是非常多的,但主要的种类为如下几种 General Purpose (通用型) ...
- Python模拟客户端
本机客户端 import socket # 获取到socket sk = socket.socket() # 获取到地址 ip 和 端口号 server端的 address = ('127.0.0.1 ...
- NVIDIA Isaac Gym安装与使用
NVIDIA做的Isaac Gym,个人理解就是一个类似于openai的Gym,不过把环境的模拟这个部分扔到了GPU上进行,这样可以提升RL训练的速度. 官网:https://developer.nv ...
- __g is not defined
新手小白学习小程序开发遇到的问题以及解决方法 文章目录 1.出现的问题 2.解决的方法 1.出现的问题 2.解决的方法 删除app.json中的 "lazyCodeLoading" ...
- 知识图谱-生物信息学-医学顶刊论文(Bioinformatics-2021)-SumGNN:通过有效的KG聚集进行多类型DDI预测
3.(2021.3.26)Bioinformatics-SumGNN:通过有效的KG聚集进行多类型DDI预测 论文标题: SumGNN: multi-typed drug interaction pr ...
- Redis数据结构(一)-Redis的数据存储及String类型的实现
1 引言 Redis作为基于内存的非关系型的K-V数据库.因读写响应快速.原子操作.提供了多种数据类型String.List.Hash.Set.Sorted Set.在项目中有着广泛的使用,今天我们来 ...
- 使用VsCode调试UE5的PuerTs
使用VsCode调试UE5的PuerTs 1.下载测试的Demo项目 配置PuerTs的步骤这里不赘述. 2.准备工作 2.1 打开项目 正常来说,直接打开项目可以看到如下画面 如果直接点击运行,可以 ...
- AdsStream的使用
本例子是测试ads通信的. 1.首先添加TwinCAT.Ads引用 using System; using System.Collections.Generic; using System.Compo ...
- pytest文档82 - 用例收集钩子 pytest_collect_file 的使用
前言 pytest 提供了一个收集用例的钩子,在用例收集阶段,默认会查找test_*.py 文件或者 *_test.py文件. 如果我们想运行一个非python的文件,比如用yaml 文件写用例,那么 ...