【攻防篇】解決:阿里云docker 容器中自動啟動xmrig挖礦-- 實戰

文章目錄

  • 場景
  • 一、問題
  • 二、原因
  • 三、解決方案
    • 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;條件渲染(動態控…