Linux服务器挖矿病毒处理

文章目录

  • Linux服务器挖矿病毒处理
    • 1.中毒表现
    • 2.解决办法
      • 2.1 断网并修改root密码
      • 2.2 找出隐藏的挖矿进程
      • 2.3 关闭病毒启动服务
      • 2.4 杀掉挖矿进程
    • 3. 防止黑客再次入侵
      • 3.1 查找异常IP
      • 3.2 封禁异常IP
      • 3.3 查看是否有陌生公钥
    • 补充知识
    • 参考

Linux服务器挖矿病毒处理

情况说明:挖矿进程被隐藏(CPU占用50%,htop/top却看不到异常进程),结束挖矿进程后马上又会运行起来(crontab -l查看发现没有定时任务)。

注:由于此博客是在处理完之后所写,因此相应的图片没有截取,但是如果上述情况一致的话,按照下述流程操作应该会对你有所帮助。

1.中毒表现

服务器是24核的,前12核的CPU占用一直处于100%,即使重启服务器,马上就会占用12核的CPU,并且系统内存占用也很大。中毒表现有如下几点:

  • 在没有使用软件的情况下,CPU使用率很高(使用top或者htop查看系统内存占用情况)。
  • 通过netstat -natp发现有异常IP地址。
  • 发热极其严重,风扇狂转。
  • 服务器莫名其妙突然卡顿。

2.解决办法

2.1 断网并修改root密码

在发现中了挖矿病毒后,一定要首先断网并修改root密码!!!

2.2 找出隐藏的挖矿进程

这里利用两个工具【sysdig】和【unhide】来搜寻被隐藏的进程。

# 安装 sysdig
sudo apt install sysdig
# 安装 unhide
sudo apt install unhide
# 输出cpu占用的排行,可以显示出隐藏的进程
sudo sysdig -c topprocs_cpu
# 搜索隐藏进程,proc目录下保存的是所有正在运行程序的进程ID,即PID
sudo unhide proc

这时就找到了挖矿病毒的PID,但是直接kill -9 PID杀死进程后就会发现不到1分钟的时间,就会有一个新的挖矿进程出现,因此这个挖矿进程肯定是被什么服务所启动的,接下来我们便需要找到这个服务并将其关闭。

2.3 关闭病毒启动服务

通过上面unhide proc发现的隐藏进程,利用systemctl status PID来检查 systemd 管理的服务或者进程状态,来看一下该病毒到底是如何被启动的。

systemctl status 3084  # 3084为病毒的PID

查看输出的CGroup段信息,可以看到一个后缀为.service的服务,该服务就是病毒的启动服务。

# 终止病毒启动服务
systemctl stop xxxxX.service
# 终止挖矿服务的开机自启
systemctl disable xxxxX.service 

2.4 杀掉挖矿进程

在关闭了挖矿病毒的启动服务之后,现在就可以将挖矿进程kill了。kill之后,CPU恢复正常,并且也没有了隐藏进程。

kill -9 PID

image-20240619121429944

3. 防止黑客再次入侵

3.1 查找异常IP

# 通过 netstat -natp 显示网络相关信息,查看是否存在异常IP
netstat -natp

将查到的异常IP直接在百度中输入就可以看到该IP的一些信息。

Alt

3.2 封禁异常IP

利用防火墙 iptables 对异常IP进行封禁。

# 对异常IP封禁
sudo iptables -I INPUT -s IP -j DROP
# 检查是否已经成功添加
iptables -L INPUT -v -n

默认情况下,通过 iptables 添加的规则在系统重启后会丢失。如果希望规则在重启后依然有效,需要将规则保存到配置文件中。可以使用 iptables-persistent 工具来实现。

# 安装iptables-persistent
sudo apt-get install iptables-persistent
# 将规则保存到配置文件
sudo netfilter-persistent save
# 设置为开机自启
systemctl enable iptables
# 打开服务
systemctl start iptables

3.3 查看是否有陌生公钥

cat ~/.ssh/authorized_keys

如果有陌生公钥立即删掉。

补充知识

在刚开始查看了网上很多的资料,试着用了这个命令ps -ef | grep kdevtmpfsi,来看自己服务器是不是中了 kdevtmpfsi 病毒,然后发现每次只显示一个有关 kdevtmpfsi 的进程,而且每次都会变化。我竟然认为是病毒太强了,每次都会变化进程ID,真被自己蠢哭了😭😭😭。后来知道每次的那一行输出是grep kdevtmpfsi命令本身的进程,由于grep正在查找字符串 kdevtmpfsi,它自身的进程也匹配这个查找条件,所以它出现在输出中。

ps -ef | grep kdevtmpfsi命令解释:列出所有正在运行的进程,并在这些进程中查找名称或命令行中包含 kdevtmpfsi 的进程,显示这些进程的信息。

  • ps 是一个显示当前运行进程的命令。
  • -e 选项显示所有进程。
  • -f 选项显示完整格式的输出,包括进程的 PID、父进程的 PID、启动时间、TTY、累计 CPU 时间、命令等。
  • 管道符号 | 用于将前一个命令的输出作为下一个命令的输入。
  • grep 是一个搜索工具,用于在输入中查找符合特定模式的行。
  • kdevtmpfsigrep 要查找的模式。在这种情况下,它是在所有进程输出中查找包含 kdevtmpfsi 的行。

参考

  • 记录一次服务器被挖矿经历…
  • 【linux】服务器CPU占用50%,top/htop/ps却看不到异常进程?本文带你彻底杀毒!
  • Linux 病毒扫描工具:ClamAV 配置使用教程

😃😃😃

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/726338.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

echarts dataZoom用按钮代替鼠标滚轮实现同样效果

2024.06.19今天我学习了echarts dataZoom如何用按钮来控制放大缩小的功能, 效果如下: 通过控制按钮来实现图表放大缩小数据的效果。 步骤如下: 一、写缩放按钮,以及图表数据。 二、设置初始位置的变量,我这边是七个…

InPixio Photo Cutter v10 解锁版安装教程 (懒人抠图工具)

前言 InPixio Photo Cutter是一款懒人抠图工具,采用了增强的算法切割技术,可以在不影响图像质量的情况下,允许用户从照片中删除任何物体或人物,并且保持其完整的质量。你只需点击几下鼠标,便可从照片中剪下任何细节、…

上位机图像处理和嵌入式模块部署(h750 mcu中的pwm控制)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 所谓的pwm,其实就是方波。我们都知道,对于一个电机来说,如果插上正负极的话,那么电机就会全速运转。…

C#.Net筑基-集合知识全解

01、集合基础知识 .Net 中提供了一系列的管理对象集合的类型,数组、可变列表、字典等。从类型安全上集合分为两类,泛型集合 和 非泛型集合,传统的非泛型集合存储为Object,需要类型转。而泛型集合提供了更好的性能、编译时类型安全…

spring cloud Alibaba 整合 seata AT模式

准备工作: 1、MySQL正常安装并启动 2、nacos正常部署并启动 3、下载 Seata-1.4.2 源码包和 seata-server-1.4.2 服务端源码包(版本根据自己的需要选择,我这里选择1.4.2) 下载地址: Seata:https://gite…

PFA托盘400*300*42mm耐酸碱透明聚四氟乙烯方盘方槽耐高温厂家供

PFA方盘又称托盘:耐高温、耐腐蚀。 进口透明可溶性聚四氟乙烯方盘。可应用于成膜实验,样品液体脱漏等。能放在电热板上直接加热使用,也可以用于烘箱烘干,实验室腐蚀性样品的转移和搬运,防止腐蚀性液体洒落。 产品特性…

计算机网络 —— 应用层(FTP)

计算机网络 —— 应用层(FTP) FTP核心特性:运作流程: FTP工作原理主动模式被动模式 我门今天来看应用层的FTP(文件传输协议) FTP FTP(File Transfer Protocol,文件传输协议&#x…

sprintboot依赖管理和自动配置

springboot依赖管理和自动配置 依赖管理和自动配置依赖管理什么是依赖管理修改自动仲裁/默认版本号 starter场景启动器starter场景启动器基本介绍官方提供的starter第三方starter 自动配置自动配置基本介绍SpringBoot自动配置了哪些?如何修改默认配置如何修改默认扫描包结构re…

基于SSM的足球联赛管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式 🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 &…

南开大学漏洞报送证书【文尾有福利】

证书介绍 获取来源:edusrc(教育漏洞报告平台) url:教育漏洞报告平台(EDUSRC) 兑换价格:30金币​ 获取条件:南开大学任意中危或以上级别漏洞 证书规格:证书做了木框装裱,显得很高…

查看电脑支持的CUDA安装版本与显卡驱动更新

说明: torch版本依赖于CUDA版本与Python版本 Start Locally | PyTorchCUDA版本依赖于显卡驱动版本 1. CUDA 12.5 Release Notes — Release Notes 12.5 documentation 显卡驱动版本依赖于显卡型号与电脑系统 当前电脑3060显卡,安装了CUDA V11.6与torc…

python-画正方形

[题目描述] 输入一个正整数n,要求输出一个n行n列的正方形图案(参考样例输入输出)。图案由大写字母组成。 其中,第1行以大写字母A开头,第2行以大写字母B开头,以此类推;在每行中,第2列…

使用ASM动态创建接口实现类

使用ASM动态生成一个接口的实现类,接口如下: public interface ISayHello {public void MethodA();public void MethodB();public void Abs(); } 具体实现如下: public class InterfaceHandler extends ClassLoader implements Opcodes {pu…

DV、OV通配符SSL证书有什么区别

通配符SSL证书是经常提及的一种SSL证书类型,也被称为泛域名SSL证书。通配符证书在SSL证书当中是比较特殊的,它具有保护主域名及其下一级所有子域名的功能,非常适合子域名多的域名网站,能够有效的节省成本,并降低证书管…

iis下asp.netcore后台定时任务会取消

问题 使用BackgroundService或者IHostedService做后台定时任务的时候部署到iis会出现不定时定时任务取消的问题&#xff0c;原因是iis会定时的关闭网站 解决 应用程序池修改为AlwaysRunning 修改web.config <?xml version"1.0" encoding"utf-8"?…

研究Redis源码的一些前期准备

一 背景 Redis数据结构讲完后&#xff0c;觉得还是有点不过瘾&#xff0c;想研究一下Redis的底层实现。找了一些相关资料&#xff0c;准备借鉴和学习其他各位大佬钻研Redis底层的方法和经验&#xff0c;掌握Redis实现的基本原理。 二 源码归类 网上有大佬已经总结了…

内网穿透方法有哪些?路由器端口映射外网和软件方案步骤

公网IP和私有IP不能互相通讯。我们通常在局域网内部署服务器和应用&#xff0c;当需要将本地服务提供到互联网外网连接访问时&#xff0c;由于本地服务器本身并无公网IP&#xff0c;就无法实现。这时候就需要内网穿透技术&#xff0c;即内网映射&#xff0c;内网IP端口映射到外…

视频服务网关的特点

一、视频服务网关的介绍 视频服务网关采用Linux操作系统&#xff0c;可支持国内外不同品牌、不同协议、不同设备类型监控产品的统一接入管理&#xff0c;同时提供标准的H5播放接口供其他应用平台快速对接&#xff0c;让您快速拥有视频集成能力。不受开发环境、跨系统跨平台等条…

全新量子计算技术!在硅中可以生成大规模量子比特

内容来源&#xff1a;量子前哨&#xff08;ID&#xff1a;Qforepost&#xff09; 文丨沛贤/浪味仙 排版丨沛贤 深度好文&#xff1a;1600字丨6分钟阅读 摘要&#xff1a;研究人员利用气体环境在硅中形成被称为“色心”的可编程缺陷&#xff0c;首次利用飞秒激光&#xff0c;…

无线麦克风推荐哪些品牌,热门领夹无线麦克风哪个好,看本期文章

​在信息爆炸的今天&#xff0c;高品质的无线领夹麦克风能让声音更清晰响亮。技术发展带来多样化选择同时也带来选择困难。根据多年使用经验和行业反馈&#xff0c;我推荐一系列可靠、易用且性价比高的无线领夹麦克风&#xff0c;助你作出明智选择。还要不知道该怎么选无线领夹…