当前位置: 首页 > news >正文

Linux挖矿病毒(kswapd0进程使cpu爆满)

一、摘要

事情起因:有台测试服务器很久没用了,突然监控到CPU飙到了95以上,并且阿里云服务器厂商还发送了通知消息,【阿里云】尊敬的xxh: 经检测您的阿里云服务(ECS实例)i-xxx存在挖矿活动。因此很明确服务器中挖矿病毒。

二、排查病毒

1.检查服务器的CPU和内存使用率 top

也可以通过阿里云的监控平台查看进程的CPU和内存的占用率,并且还可以告知你进程目录。

发现进程(kauditd0)占用很高的CPU。并且test用户从来没创建过,而且直接通过kill 命令杀死进程之后不到一分钟又会启动。

2.检查系统登录日志

# 系统日志一般在 /var/log 目录
# 查看登录日志 可能是auth.log 或 securexx.log相关日志,都可以查看# 此命令是检查登录失败的信息
more /var/log/auth.log | grep "Failed password"
# 此命令是检查登录成功的信息
more /var/log/auth.log | grep "Accepted password"

 从上图可知,有人一直在尝试登录系统。

从此图可知,这个test用户已经破解并成功登录。

3.找病毒服务

(1)查找异常IP 命令:netstat -natp

再查询IP地址,果然不对劲。

(2)通过ps -ef|grep kauditd0 找到进程ID

(3)查看病毒如何启动服务

通过systemd 管理的服务或者进程状态,来看一下该病毒到底是如何被启动的。命令:

systemctl status 进程ID

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

4.找病毒文件目录

(1)查找病毒文件,从陌生的test用户入手

        1)切换到test 用户的家目录下,查找隐藏目录

# 切换到test用户家目录
cd /home/test
# 查看当前所有目录
ls -a

那么找病毒文件目录就依次查找test用户目录下的文件 最终在.configrc7 目录下。并且进程和阿里云监控平台进程一致,说明就是这个就是病毒文件目录。 

(2)直接通过病毒的进程号查找

到/proc/目录下查找对应的pid号,即/proc/进程ID。可以在这目录下找到kswapd0进程的详细信息。

ll /proc/进程ID
 (3)分析该目录下的执行文件

拿到执行文件的MD5值发现基本均为挖矿病毒文件。  通过MD5值可以检测病毒的工具:https://s.threatbook.com/

 可以确定感染了挖矿病毒。  

5.排查系统定时任务

通过命令 crontab -l 可以查看是否有其他的定时任务。

再查看某个用户的定时任务 命令:crontab -l -u test

存在定时任务,将定时任务清除。进入文件 crontab -e -u test 保存并退出。

OK,现在定时任务删除成功。

6.关闭病毒服务(可优先处理)

为了服务的安全考虑,先把病毒服务关闭,再来清理病毒服务文件。

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

杀死病毒进程,kill -9 进程ID 。观察 kauditd0 进程并且CPU也恢复正常了 。

 三、处置病毒

1.处理登录密钥

切换 test 账号,因为我们有root账号 切换test不需要输入密码。

# 切换test
su test
# 切换到家目录
cd ~
# 查看.ssh目录下的密钥文件
cat .ssh/authorized_keys

删除密钥 rm -rf  authorized_keys

2.删除病毒文件

在排查病毒的时候,我们已经找到了相关的病毒文件 在/home/test/.configrc7/a 目录。

通过命令直接删除 rm -rf ./* 表示删除当前目录下所有的文件。

在通过 find 命令查找是否还有其他的文件,找到之后直接删除。

再删除/home/test/目录下所有的文件(这个目录下存在定时执行的相关任务)。目录下都是隐藏文件

rm -rf /home/test/.*

3.处理test账号

下图可知目前test账号和用户组信息。

(1)删除 test 账号

# 删除test用户及其目录
userdel -r test

此图说明test账号还有个进程2162,将其杀死即可。

kill -9 2162

(2)验证

说明:test账号已经删除成功。

4.善后

可以修改Linux相关登录账号,限制服务器的访问的IP,修改ssh端口等。

参考:linux服务器挖矿病毒处理方案-CSDN博客

Linux挖矿应急响应处置_workminer-CSDN博客

相关文章:

Linux挖矿病毒(kswapd0进程使cpu爆满)

一、摘要 事情起因:有台测试服务器很久没用了,突然监控到CPU飙到了95以上,并且阿里云服务器厂商还发送了通知消息,【阿里云】尊敬的xxh: 经检测您的阿里云服务(ECS实例)i-xxx存在挖矿活动。因此很明确服务器中挖矿病毒…...

【java】ArrayList与LinkedList的区别

目录 1. 说明2. 内部实现2.1 ArrayList2.2 LinkedList 3. 性能特点3.1 插入和删除操作3.2 访问操作3.1 遍历操作 4. 使用场景5. 扩容机制6. 空间开销 1. 说明 1.Java中的ArrayList和LinkedList是两种常用的集合实现类,都属于Java集合框架的一部分,但它们…...

【LangChain系列6】【Agent模块详解】

目录 前言一、LangChain1-1、介绍1-2、LangChain抽象出来的核心模块1-3、特点1-4、langchain解决的一些行业痛点1-5、安装 二、Agent模块详解2-0、Agent核心思想——React介绍2-0-1、React的介绍以及由来2-0-2、伪代码介绍React的执行顺序 2-1、Agent介绍2-1、Self ask with se…...

JavaScript Cookie 与 服务器生成的 Cookie 的区别与应用

JavaScript Cookie 与 服务器生成的 Cookie 的区别与应用 Cookie是一种甜点,同时也是web前端开发中一种非常常见且重要的技术,它用于在客户端和服务器之间存储和传递信息。用户身份验证、会话管理,还是用户个性化设置,都离不开Coo…...

深入了解Git、GitHub、GitLab及其应用技巧

在现代软件开发中,掌握版本控制系统(VCS)是至关重要的,其中Git是最流行的分布式版本控制工具之一。本文将详细介绍Git的用途及其基本操作,并深入探讨GitLab、GitHub、和Git Desktop的使用方法,同时总结Git的…...

ctfshow(316,317,318)--XSS漏洞--反射性XSS

反射型XSS相关知识 Web316 进入界面: 审计 显示是关于反射性XSS的题目。 思路 首先想到利用XSS平台解题,看其他师傅的wp提示flag是在cookie中。 当前页面的cookie是flagyou%20are%20not%20admin%20no%20flag。 但是这里我使用XSS平台,…...

Visual Studio2022版本的下载与安装

1-首先打开微软的官网,下面就是链接 下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux免费下载 Visual Studio IDE 或 VS Code。 在 Windows、Mac 上试用 Visual Studio Professional 或企业版。https://visualstudio.microsoft.com/zh-hans/downloads/?…...

nodeJS程序如何引入依赖包

在 Node.js 运行时中引入依赖包通常通过以下步骤完成: 初始化项目: 首先,你需要初始化一个 Node.js 项目。如果你还没有 package.json 文件,可以使用 npm init 命令来创建它。运行以下命令并按提示输入相关信息: npm i…...

建网站怎么建?只需几个步骤

在这个网络飞速发展的时代,越来越多的人都渴望拥有自己的网站。然而,对于大多数新手来说,如何建立自己的网站可能充满了挑战。本文将为您详细介绍建网站的关键步骤,让您能够轻松搭建自己的网站。 选择适合的建站工具 虽然市面上有…...

机器学习课程总结(个人向)

前言 通过看课件PPT整理的笔记,没有截图 由于大部分内容已经耳熟能详了,故记录比较简略,只记录了一些概念和需要记忆的地方。 里面有较多的个人观点,未必正确。如有错误,还请各位大佬指正 正文 绪论 机器学习的定…...

数据分析-43-时间序列预测之深度学习方法GRU

文章目录 1 时间序列1.1 时间序列特点1.1.1 原始信号1.1.2 趋势1.1.3 季节性和周期性1.1.4 噪声1.2 时间序列预测方法1.2.1 统计方法1.2.2 机器学习方法1.2.3 深度学习方法2 GRU2.1 模拟数据2.2 数据归一化2.3 生成滞后特征2.4 切分训练集和测试集2.5 模型训练2.6 模型预测3 参…...

Pandas | 数据分析时将特定列转换为数字类型 float64 或 int64的方法

类型转换 传统方法astype使用value_counts统计通过apply替换并使用astype转换 pd.to_numericx对连续变量进行转化⭐参数:返回值:示例代码: isnull不会检查空字符串 数据准备 有一组数据信息如下,其中主要将TotalCharges、MonthlyC…...

Elasticsearch的自定义查询方法到底是啥?

Elasticsearch主要的目的就是查询,默认提供的查询方法是查询全部,不满足我们的需求,可以定义查询方法 自定义查询方法 单条件查询 我们查询的需求:从title中查询所有包含"鼠标"这个分词的商品数据 SELECT * FROM it…...

Jenkins找不到maven构建项目

有的可能没有出现maven这个选项 解决办法:需要安装Maven项目插件 输入​Maven Integration plugin​...

怎么更换IP地址 改变IP归属地的三种方法

要更换自己的IP地址,您可以按照以下步骤进行操作: 1. 了解IP地址类型:首先,您需要了解您当前使用的IP地址类型。IP地址分为静态IP和动态IP两种。静态IP地址是固定的,使用第三方软件比如S深度IP转换器;而使用…...

C#-异步查询示例

文章速览 CancellationTokenSource 概述代码示例 坚持记录实属不易,希望友善多金的码友能够随手点一个赞。 共同创建氛围更加良好的开发者社区! 谢谢~ CancellationTokenSource 概述 使用System.Threading下的CancellationTokenSource类,进…...

设计模式之适配器模式(从多个MQ消息体中,抽取指定字段值场景)

前言 工作到3年左右很大一部分程序员都想提升自己的技术栈,开始尝试去阅读一些源码,例如Spring、Mybaits、Dubbo等,但读着读着发现越来越难懂,一会从这过来一会跑到那去。甚至怀疑自己技术太差,慢慢也就不愿意再触碰这…...

vue+exceljs前端下载、导出xlsx文件

首先安装插件 npm install exceljs file-saver第一种 简单导出 //页面引入 import ExcelJS from exceljs; import {saveAs} from file-saver; export default {methods: { /** 导出操作 */async handleExportFun() {let that this// 获取当前年月日 用户下载xlsx的文件名称设…...

算法定制LiteAIServer摄像机实时接入分析平台烟火检测算法的主要功能

在现代社会,随着人工智能技术的飞速发展,智能监控系统在公共安全领域的应用日益广泛。其中,烟火检测作为预防火灾的重要手段,其准确性和实时性对于减少火灾损失、保障人民生命财产安全具有重要意义。而算法定制LiteAIServer烟火检…...

用 Python 从零开始创建神经网络(二)

用 Python 从零开始创建神经网络(二) 引言1. Tensors, Arrays and Vectors:2. Dot Product and Vector Additiona. Dot Product (点积)b. Vector Addition (向量加法) 3. A Single Neuron with …...

龙虎榜——20250610

上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

ESP32读取DHT11温湿度数据

芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

零基础设计模式——行为型模式 - 责任链模式

第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...

基于单片机的宠物屋智能系统设计与实现(论文+源码)

本设计基于单片机的宠物屋智能系统核心是实现对宠物生活环境及状态的智能管理。系统以单片机为中枢,连接红外测温传感器,可实时精准捕捉宠物体温变化,以便及时发现健康异常;水位检测传感器时刻监测饮用水余量,防止宠物…...