全部產品
Search
文件中心

Elastic Compute Service:挖礦病毒防護和處理指南

更新時間:Nov 20, 2025

雲環境中的挖礦病毒會引發業務中斷、資料泄露及風險擴散。通過Security Center或者手動響應處理及防護策略(如重設密碼或密鑰、IP封鎖),可快速止損並預防二次感染。

挖礦病毒警示

開啟免費安全強化的執行個體,在被挖礦程式入侵時,Security Center會發送警示簡訊或郵件,可前往安全警示, 查看是否存在挖礦程式警示。

挖礦警示

重要

如果伺服器是首次因為挖礦病毒被關停,可前往安全管控事件自行解除關停鎖定狀態。

解除鎖定後,請及時清理挖礦程式,否則後續如果被檢測到仍然存在挖礦,會被再次關停管控,且無法自主解鎖。

挖礦病毒應急響應與清除

隔離受感染的伺服器

通過修改安全性群組規則,可以限制ECS執行個體的公網和SSH訪問,從而達到隔離的效果。

  1. 登入ECS控制台-安全性群組 。

  2. 找到目標ECS執行個體所屬的安全性群組,單擊安全性群組ID進入安全性群組管理頁面。

  3. 在安全性群組規則頁面,找到所有允許公網訪問的入方向規則(如允許RDP、SSH等連接埠的規則),確保將其授權對象修改為僅允許特定IP訪問。

    說明

    修改安全性群組規則會影響所有綁定該安全性群組的ECS執行個體,請確保不會誤操作影響其他執行個體。

清除惡意程式

挖礦程式一般很難清理,建議在備份重要資料後,重新初始化雲端硬碟,可確保完全清理挖礦程式。

Security Center

前提條件

步驟一:快速止血

使用Security Center安全警示功能,可以終止惡意進程的運行,並隔離病毒檔案,快速阻斷挖礦程式運行。

  1. 登入Security Center控制台

  2. 在左側導覽列,選擇威脅分析與響應 > 安全警示 。在控制台左上方,選擇需防護資產所在的地區。

  3. 單擊挖礦警示操作列的詳情,查看該警示的詳細資料。

    根據云資訊安全中心控制台提供的警示基礎資訊、事件說明等,找到挖礦程式的位置,以及確認是否存在其他警示或可疑檔案。需要自行判斷導致挖礦警示的檔案是正常業務檔案,還是攻擊者啟動並執行檔案。挖礦程式如果關聯了其他警示事件,例如礦池通訊行為、訪問惡意網域名稱等,建議一併處理。

  4. 單擊警示處理。在警示處理對話方塊,處理方式選中病毒查殺,單擊立即處理

    如果需要批量處理相同規則或類型觸發的警示,可以選中同時處理相同警示

  5. 在安全警示列表,對挖礦事件產生的其他衍生警示(例如:礦池通訊行為),執行阻斷操作。

    Security Center通過產生對應的策略防止伺服器訪問礦池,確保有充足的時間對安全事件進行處理。也可手動將礦池IP加入安全性群組禁用。添加安全性群組的具體操作,請參見添加安全性群組規則

  6. 在安全警示列表,查看進程行為異常警示,確認是否存在異常的計劃任務,並處理對應警示。

步驟二:深度查殺

建議使用Security Center的病毒查殺功能掃描資產,病毒查殺功能可以掃描清理惡意檔案的一些持久化行為,例如:自啟動項、定時任務。

  1. 登入Security Center控制台

  2. 在左側導覽列,選擇防護配置 > 主機防護 > 病毒查殺。在控制台左上方,選擇需防護資產所在的地區。

  3. 在病毒查殺頁面,單擊立即掃描重新掃描。在掃描設定頁面,設定掃描模式和掃描範圍,然後單擊確定

    掃描模式選擇快速掃描掃描範圍選擇被挖礦程式攻擊的伺服器。

  4. 等掃描完成後,在病毒查殺頁面,單擊目標警示操作列的處理

  5. 警示處理面板,選擇深度查殺,單擊下一步

    系統開始處理警示。處理完成後,可以查看處理結果和警示狀態。

    image

安全檢測

使用Security Center無代理檢測功能,對Elastic Compute Service的系統硬碟和資料盤進行全面的安全檢測。該功能僅支援檢測,不支援修複;需要根據風險詳情頁的說明,自行處理風險項。需開通無代理檢測隨用隨付。具體操作,請參見無代理檢測

無代理檢測

  1. 登入Security Center控制台

  2. 在左側導覽列,選擇防護配置 > 主機防護 > 無代理檢測。在控制台左上方,選擇需防護資產所在的地區。

  3. 無代理檢測頁面主機安全檢測面板,單擊立即檢測

  4. 立即檢測面板,參考如下說明完成配置後,單擊確定

    • 掃描範圍:建議勾選選中資料盤,資料來源越完整,漏洞、警示等檢測效果越好。

    • 鏡像儲存時間

      • 取值範圍為1~365,單位:天。

      • 建立鏡像會收取相關費用,鏡像儲存天數越多收費越高。

        重要

        勾選僅保留存在風險的鏡像後,系統將在掃描結束後自動刪除無風險鏡像。

  5. 等待檢測任務完成後,查看檢測出的漏洞風險、基準檢查、安全警示和敏感檔案結果。

    建議根據風險詳情頁的說明及時處理對應風險項。

    image

自助手動清理

在進行任何清理操作前,建議先為伺服器建立快照進行備份,以防資料丟失或操作失誤。

Linux

  1. 阻斷惡意網路通訊。

    在發現主機存在挖礦行為後,由於完整地處理整個挖礦事件的周期比較長,所以為了及時控制挖礦影響,需要首先阻斷挖礦木馬的網路通訊行為。

    1. 執行以下命令,查看當前系統網路連接狀態。

      netstat -antp

      image

    2. 將以下命令中c2地址替換為正常業務不會使用的可疑遠程地址(Foreign Address),然後執行下述命令添加防火牆規則,阻斷伺服器與該可疑地址之間的所有網路連接。

      iptables -A INPUT -s c2地址 -j DROP
      iptables -A OUTPUT -d c2地址 -j DROP
  2. 刪除挖礦程式及其相關檔案

    挖礦程式一般很難清理,建議在備份重要資料後,重新初始化雲端硬碟,可確保完全清理挖礦程式。

    • 清除計劃任務

      挖礦木馬常通過計劃任務實現定期下載(更新)並啟動挖礦木馬,如果僅清理挖礦進程、挖礦木馬檔案,並不能根治挖礦程式,且會出現挖礦反覆的情況。

      排查以下計劃任務檔案,刪除計劃任務中的挖礦木馬下載和啟動任務。

      1. 查看目前使用者或指定使用者(username)的計劃任務。

        crontab -l
        crontab -u username -l
      2. 主機所有計劃任務檔案。

        /etc/crontab
        /var/spool/cron/
        /etc/anacrontab
        /etc/cron.d/
        /etc/cron.hourly/
        /etc/cron.daily/
        /etc/cron.weekly/
        /etc/cron.monthly/
    • 清除自啟動服務項

      1. 執行以下命令,排查系統所有自啟動服務。

        systemctl list-unit-files | grep enabled
      2. 找到對應可疑服務的單元檔案,排查服務詳細資料。

        將命令中*替換為服務名稱,<service_unit_name>替換為服務的單元檔案名稱。

        ls -al /etc/systemd/system/*.service
        ls -al /usr/lib/systemd/system/*.service
        
        # 查看服務詳細資料(服務啟動的進程檔案)
        cat /etc/systemd/system/<service_unit_name>.service
      3. 如果發現惡意的自啟動服務項,使用以下命令禁用服務,刪除對應單元檔案。

        將命令中<service name>替換為服務名稱,<service_unit_name>替換為服務的單元檔案名稱。

        systemctl disable <service name>
        rm /etc/systemd/system/<service_unit_name>.service
        rm /usr/lib/systemd/system/<service_unit_name>.service
      4. 排查以下服務路徑是否有自啟動服務,然後參考以上步驟進行清理。

        /etc/rc.local
        /etc/inittab
        /etc/rc.d/
        /etc/init.d/
    • 清除SSH公開金鑰

      挖礦木馬通常會將駭客SSH公開金鑰寫入~/.ssh/authorized_keys檔案中,以便駭客可以通過SSH免密登入受害主機,重新植入惡意檔案。需要排查~/.ssh/authorized_keys檔案,如果發現可疑公開金鑰,立即刪除。

    • 清除.so劫持

      通過/etc/ld.so.preload檔案設定預先載入的.so檔案,可以劫持常見的系統命令,例如top/ps/netstat等,達到隱藏挖礦進程的目的。

      1. 執行以下命令,排查預先載入的.so檔案。

        cat /etc/ld.so.preload
      2. 執行以下命令,刪除預先載入劫持。

        echo > /etc/ld.so.preload
    • 清除惡意帳號

      部分挖礦木馬家族會建立新的後門帳號,以達到長期控制受害主機的目的。執行以下命令,查看惡意帳號,然後手動刪除相關帳號資訊。

      1. 通過日誌查看近期是否有建立帳號行為。

        cat /var/log/audit/audit.log | grep useradd
        # 或者
        cat /var/log/secure | grep 'new user'
      2. 通過/etc/passwd檔案查看是否有可疑帳號。

        cut -d: -f1 /etc/passwd
      3. 通過賬戶的home目錄查看可疑賬戶的建立或最近活躍時間,需特別關注近期建立的home目錄。

        stat /home/guest/
    • 清除挖礦木馬進程

      挖礦進程通常佔用較高的CPU,通過以下命令可以排查可疑的挖礦進程。

      1. 排查佔用主機大量CPU的進程。

        top -c

        image

        ps -eo pid,ppid,cmd,%cpu --sort=-%cpu | more

        image

      2. 排查異常網路連接行為。

        netstat -antp

        image

      3. 擷取可疑進程的檔案路徑。

        ls -al /proc/$PID/exe
      4. 計算對應進程檔案的MD5資訊,在阿里雲威脅情報平台查詢對應檔案資訊。

        md5sum /proc/$PID/exe

        image

      5. 執行以下命令,終止挖礦進程,並清理挖礦檔案。

        kill -9 $PID
        # 刪除 ls -al /proc/$PID/exe 擷取的進程路徑
        rm /path/to/executable

Windows

  1. 在PowerShell中執行以下命令,通過CPU佔用情況排查可疑的挖礦進程。

     ps | sort -des cpu
     While(1) {ps | sort -des cpu | select -f 15 | ft -a; sleep 1; cls}
  2. 執行以下命令,查看挖礦進程的磁碟檔案、進程啟動命令的參數。

    wmic process where processid=xxx get processid,executablepath,commandline,name     //xxx表示進程pid
  3. 結束挖礦進程,清除挖礦檔案。

  4. 執行以下命令,檢查主機串連的可疑網路連接埠。

    netstat -ano | findstr xxx            // xxx表示可疑的網路連接埠
  5. 執行以下命令,檢查伺服器中hosts檔案是否存在挖礦程式的礦池地址。

    type  C:\Windows\System32\drivers\etc\hosts
  6. 執行以下命令,排查是否存在挖礦程式設定的計劃任務。

    schtasks /query

防護建議

清理完成後,建議參考以下建議,以防再次被入侵:

  • 重設密碼和密鑰:執行個體的密碼或密鑰可能已經泄露,建議及時更換所有使用者密碼和SSH密鑰,防止再次入侵。如果你使用密碼作為登入憑證,請避免使用弱口令。

  • 修複漏洞:修複已知漏洞,定期為作業系統和應用軟體(如 Redis、Jenkins 等)更新安全補丁。

  • 資料備份:對重要資料和系統配置進行定期快照備份,以便在發生意外時能夠快速恢複 。

相關文檔

防禦挖礦程式最佳實務:阿里雲防火牆IPS模組通過漏洞情報和虛擬補丁方式可以跟蹤和防禦大部分挖礦蠕蟲的網路漏洞利用行為,阻斷病毒傳播。

常見問題

刪除檔案時提示“Operation not permitted”,無法刪除怎麼辦?

部分挖礦病毒在寫入計劃任務、自啟動等持久化檔案後,為防止對應檔案被刪除,會為對應檔案設定一個不可更改immutable)的屬性。

image

如上圖,對該檔案執行 chattr -i [檔案名稱] 命令解除該屬性,然後再進行刪除。

為什麼刪除了挖礦程式,但它很快又出現了?

這通常是因為只刪除了病毒主程式,而沒有清除其設定的持久化後門(如計劃任務或自啟動服務)。病毒會通過這些後門重新下載並運行,導致反覆出現。請務必按照清除惡意程式步驟,徹底排查所有持久化方式。