前言:防禦再強,懶惰是最大漏洞
補丁全打、防火牆嚴、IDS 全開,仍被駭?多半是「該做的沒做」(如 BIND 漏洞未修補)。入侵後腳本小子植入 Rootkit、掃描器,佔用 CPU/記憶體/頻寬,必須徹底清理。
核心判斷:Rootkit 如何隱藏蹤跡
1. 替換系統指令(ps、ls、netstat、top)
檢查 /bin/ps 大小:正常 ~60 KB,被替換者僅 ~12 KB。
對策:從已知乾淨系統複製同版本指令對比 MD5/SHA256,或用 rpm -V/dpkg -V 驗證套件完整性。
2. 竄改 .bash_history 指向 /dev/null
lrwxrwxrwx 1 root root 9 Oct 10 19:40 /root/.bash_history -> /dev/null
發現此狀況 → 立即斷網、備份關鍵資料、重灌系統。此為徹底失控鐵證。
3. 植入隱藏帳號(UID 0)
grep :x:0: /etc/passwd
標準系統僅回傳 root:x:0:0:root:/root:/bin/bash。多行輸出 = 後門帳號。
分階段應急響應流程
階段 0:現場保護(發現瞬間)
- 物理/邏輯隔離網路(拔網線/關交換器埠/安全群組拒絕)
- 記憶體鏡像(
LiME/AVML)、磁碟鏡像(dd/dc3dd)、關鍵日誌封存
- 通報資安團隊/管理層/法務/主管機關(依法規)
階段 1:鑑識分析(離線環境)
- 掛載鏡像唯讀,
chkrootkit/rkhunter/RootkitRevealer 掃描
- 時間線分析:
log2timeline/Plaso 重建事件順序
- 入侵向量定位:Web 應用漏洞、弱口令、SSH 暴力破解、供應鏈投毒
- 橫向擴散範圍:同網段其他主機、跳板機、內網掃描痕跡
- 資料外洩評估:
tar/scp/ftp/DNS 隧道 大量外傳記錄
階段 2:根除與重建(唯一可信路徑)
- 不嘗試清理受感染系統,Rootkit 可能藏於核心模組、固件、MBR
- 全新安裝 OS(最新 ISO、驗證簽名)
- 套用所有安全更新、基準安全策略(CIS Benchmark)
- 從乾淨備份還原應用代碼、配置、資料(驗證備份時間點早於入侵)
- 修改所有憑證:Root、資料庫、應用、API Key、SSH Key、憑證
- 部署 HIDS(Wazuh/OSSEC)、檔案完整性監控(AIDE/Tripwire)
階段 3:驗證與復原
- 滲透測試驗證修補有效性
- 業務功能驗收測試(UAT)
- 上線前 48 小時強化監控:登入失敗、權限提升、異常流程、外連異常
階段 4:事後複盤
- 根因分析報告(5 Why)
- 改進措施追蹤清單(負責人、期限、驗收標準)
- 資安意識教育、應急演練更新
預防勝於治療:基線防護清單
- 最小安裝、移除無用服務
- SSH:禁用 Root 登入、金鑰認證、非標準埠、Fail2Ban
- 自動化修補:
yum-cron/unattended-upgrades、內核即時修補
- 最小權限:應用專用帳號、sudo 精細授權、SELinux Enforcing
- 審計:
auditd 記錄關鍵系統呼叫、檔案存取、權限變更
- 備份:3-2-1 原則(3 份、2 介質、1 異地)、定期還原演練