文章目录

  • 场景
  • 一、问题
  • 二、原因
  • 三、解决方案
    • 1、控制台处理
    • 2、 [清除与防护](https://blog.csdn.net/ladymorgana/article/details/148921668?spm=1001.2014.3001.5501)
      • 1. 紧急处理:停止挖矿进程
      • 2. 清理被感染的容器
      • 3. 防护措施:防止再次被入侵
      • 4. 排查入侵来源
  • 四、实战
    • Step 1:<font color="green">检查服务器是否被植入挖矿程序
    • Step 2:<font color="green">删除被感染的文件
    • Step 3:<font color="green">关闭docker api端口
    • Step 4:<font color="green">改造容器:防止再次被入侵
    • Step 5:<font color="green">删除感染容器和镜像后,重新创建容器

场景

  • 服务器:阿里云
  • 容器化平台:docker (docker-compose)
  • 容器:spring boot 项目

一、问题

  • 部署的业务卡顿,服务器CPU异常占用接近100%
    在这里插入图片描述

二、原因

  • 服务器被而且运行挖矿程序
    在这里插入图片描述

三、解决方案

1、控制台处理

阿里云–控制台–云安全中心–检测响应–安全警告—找到恶意挖矿告警–处理–立即处理(不处理5天后服务器回关停
在这里插入图片描述

2、 清除与防护

1. 紧急处理:停止挖矿进程

  1. 查找并终止 xmrig 进程
  2. 删除恶意文件

2. 清理被感染的容器

  1. 停止并删除容器
  2. 检查镜像是否被污染

3. 防护措施:防止再次被入侵

  1. 使用最小化镜像
  2. 限制容器资源
  3. 禁止容器内运行可疑进程
  4. 监控容器行为
  5. 避免暴露 Docker API

4. 排查入侵来源

  1. 检查 Docker 日志
  2. 检查宿主机是否被入侵
  3. 检查 Dockerfile 是否被篡改

四、实战

Step 1:检查服务器是否被植入挖矿程序

ps aux | grep -E "xmrig|minerd|cpuminer|c3pool"

多行返回记录表示系统被感染,下图表示系统未被感染

在这里插入图片描述

Step 2:删除被感染的文件

find / -name "*xmrig*" -exec rm -rf {} \;
find / -name "*c3pool*" -exec rm -rf {} \;

Step 3:关闭docker api端口

  • 这里作者只关闭了安全组里的2375和2376,有兴趣的小伙伴可以参考

【攻防篇】阿里云服务器中 如何关闭docker api端口

Step 4:改造容器:防止再次被入侵

  • docker-copmose.yaml 中加入如下代码
    cap_drop:- ALL           # 移除所有 Linux Capabilitiesread_only: true   # 只读文件系统tmpfs:  # 仅允许临时目录写入- /tmpdeploy:resources:limits:cpus: '1'  # 限制最多使用 1 个 CPU 核心memory: 10G  # 限制内存为 10G

在这里插入图片描述

Step 5:删除感染容器和镜像后,重新创建容器

docker-compose --compatibility up -d --build

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/87179.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/87179.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/87179.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

飞算智造JavaAI:智能编程革命——AI重构Java开发新范式

文章目录 引言&#xff1a;当传统Java开发遇上AI一、技术架构解析1.1 核心架构图1.2 关键技术栈 二、实战演示&#xff1a;从需求到代码的全AI辅助2.1 场景&#xff1a;电商优惠券系统开发2.2 代码生成实例2.3 智能调试演示 三、与传统开发模式对比测试3.1 基准测试数据3.2 典型…

[特殊字符] 分享裂变新姿势:用 UniApp + Vue3 玩转小程序页面分享跳转!

在如今流量成本日益攀升的移动互联网时代&#xff0c;"用户分享拉新" 成为了增长的重要策略。而微信小程序作为天然具备社交传播力的平台&#xff0c;提供了较完善的分享机制支持。本文将从实战角度出发&#xff0c;手把手教你如何使用 uni-app Vue3 构建一个支持「…

[创业之路-458]:企业经营层 - 蓝海战略 - 重构价值曲线、整合产业要素、创造新需求

“重构价值曲线、整合产业要素、创造新需求”是蓝海战略中实现价值创新的核心路径&#xff0c;它们构成了一个从内部优化到外部协同&#xff0c;再到市场颠覆的完整逻辑链条。以下从理论框架、实践方法和企业案例三个维度展开分析&#xff1a; 一、重构价值曲线&#xff1a;打…

慢查询引发对mysql索引的探索

目录 一、索引分类 1.1 聚簇索引结构 1.2 非聚簇索引(二级索引) 1.3 主键索引 1.4 唯一索引 1.5 普通索引 1.6 前缀索引 1.7 联合索引 1.8 索引下推 1.9 索引区分度 二、优化索引的方法 2.1 索引的特点 2.2 适合创建索引的情况 2.3 不适合创建索引的情况 2.4 优…

启用不安全的HTTP方法

背景&#xff1a; 今天被安全检测出一个这样的问题&#xff1a;启用不安全的HTTP方法。DELETE方法是用来调试web服务器连接的http方式&#xff0c;支持该方式的服务器文件可能被非法删除&#xff1b;PUT方法用来向服务器提交文件&#xff1b;TRACE方法本用于客户端测试到服务器…

fvcom 水深文件dep制作

fvcom 水深文件dep制作 fvcom 水深文件dep制作20250630 本次案例网格和水深展示 vv image Figure 1 Model domain 本次制作其它驱动文件的输入文件为yellowsea.2dm 格式2dm; 文件内容格式详细介绍参考&#xff1a; https://www.xmswiki.com/wiki/SMS:2D_Mesh_Files_*.2dm …

ViewModel是EventFlow-State映射

ViewModel负责组装界面状态State。引发State变换的原因有很多&#xff0c;比如用户点击某个按钮&#xff0c;一次网络请求受到应答&#xff0c;一次本地数据库查询返回结果等等。因此ViewModel是根据各种事件生成State的对象&#xff0c;换句话说&#xff0c;是一个从多个事件流…

javaweb Day2

PreparedStatement作用: 预编译SQL语句并执行: 预防SQL注入问题 SQL注入:SQL注入是通过操作输入来修改事先定义好的SQL语句&#xff0c;用以达到执行代码对服务器进行攻击的方法。

Java项目:基于SSM框架实现的中学教学管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本景海中学教学管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据…

JVM调优实战 Day 15:云原生环境下的JVM配置

【JVM调优实战 Day 15】云原生环境下的JVM配置 文章标签 jvm调优, 云原生, Java性能优化, JVM参数配置, 容器化部署, Kubernetes, Docker, JVM在云原生中的应用 文章简述 随着云原生技术的普及&#xff0c;Java 应用越来越多地运行在容器&#xff08;如 Docker&#xff09;和…

数据结构day7——文件IO

一、标准 IO 的起源与概念 标准 IO&#xff08;Standard Input/Output&#xff09;是由 Dennis Ritchie 在 1975 年设计的一套 IO 库&#xff0c;后来成为 C 语言的标准组成部分&#xff0c;并被 ANSI C 所采纳。它是对底层文件 IO 的封装&#xff0c;提供了更便捷、可移植的文…

6.Docker部署ES+kibana

部署ES&#xff08;Elasticsearch&#xff09;kibana 1.ES暴露的端口很多 2.ES十分消耗内存 3.ES的数据一般需要挂载出去&#xff0c;放在安全目录&#xff08;挂载) elastic 前往官方手册 1.下载运行elasticsearch的 docker run -d --name elasticsearch --net somenet…

使用mysqldump对mysql数据库进行备份

目录 1软件说明 2语法格式 3备份流程 3.1只备份指定数据库中表和数据 3.1.1准备目录 3.1.2备份db1数据库里面的所有表信息 3.1.3还原备份 3.2备份数据库结构 3.2.1备份db1数据库的结构和数据 3.2.2还原数据库 3.3备份所有数据库 3.3.1备份数据库 3.3.2还原数据库 1…

vue3路由跳转打开新页面

Vue3 路由跳转打开新页面的方法 在 Vue3 中&#xff0c;有几种方法可以实现路由跳转时打开新页面&#xff1a; 1. 使用 router.resolve 方法 import { useRouter } from vue-routerconst router useRouter()const openNewPage (path) > {const resolved router.resolv…

SeaTunnel 社区 2 项目中选“开源之夏 2025”,探索高阶数据集成能力!

Apache SeaTunnel 社区在“开源之夏 2025”中再传捷报&#xff0c;共有两个项目成功入选&#xff0c;聚焦于 Flink CDC schema 支持与元数据管理的生态扩展方向&#xff0c;体现出 SeaTunnel 在实时数据集成和平台化能力构建上的深入布局。 中选项目与学生如下&#xff1a; 《…

Neo4j无法建立到 localhost:7474 服务器的连接出现404错误

一、确认中文路径问题&#xff08;核心原因&#xff09; 安装路径包含中文&#xff0c;可能导致 Windows 命令行或 Neo4j 解析路径时出错。 解决方法&#xff1a; 重新安装 Neo4j 到英文路径&#xff08;推荐&#xff09;&#xff1a; 将 Neo4j 解压或安装到不含中文的目录&a…

锂离子电池均衡拓扑综述

锂离子电池均衡拓扑综述 一、引言 锂离子电池因其高能量密度、长循环寿命等优点&#xff0c;在电动汽车、储能系统等领域得到了广泛应用。然而&#xff0c;电池组在使用过程中&#xff0c;由于电池个体差异、充放电管理等因素&#xff0c;会出现荷电状态&#xff08;SOC&…

[面试] 手写题-浅拷贝,深拷贝

浅拷贝 // 浅拷贝 function shallow(obj) {const newObj {}for (const key in obj) {// 保证 key 不是原型的属性if (obj.hasOwnProperty(key)) {newObj[key] obj[key]}}return newObj }深拷贝 递归 O(n^2) // 深拷贝 function deepClone(obj {}) {// 如果传入的是 null&am…

BehaviorTree.ROS2安装记录

坑比库&#xff0c; 首先 git clone https://github.com/BehaviorTree/BehaviorTree.ROS2.git 依赖 git clone https://github.com/PickNikRobotics/cpp_polyfills.git git clone https://github.com/PickNikRobotics/RSL.git git clone https://github.com/PickNikRobotics/…

Vue基础(19)_Vue内置指令

我们学过的vue内置指令&#xff1a; v-bind&#xff1a;单向绑定解析表达式&#xff0c;可简写为&#xff1a;:xxx v-model&#xff1a;双向数据绑定 v-for&#xff1a;遍历数组/对象/字符串 v-on&#xff1a;绑定事件监听&#xff0c;可简写为 v-if&#xff1a;条件渲染(动态控…