預計閱讀 1 分鐘原文來源
事件概述
近期,安全研究機構 Rapid7 Labs 發現兩家位於韓國的企業(分別屬於汽車與媒體領域)之 HAProxy 負載平衡器被植入惡意 Linux 工具組。該工具組直接編譯進被竊改的 HAProxy 二進位檔,能在不觸發後端伺服器的情況下攔截網頁請求,並對特定訪客回傳被改寫的頁面。攻擊者在二進位的除錯字串中留下「ted」作為植入件名稱,並非利用 HAProxy 本身漏洞,而是先取得主機執行權限後替換原有執行檔。
攻擊手法與技術細節
- 指令與控制(C2)通道:當請求特定圖片路徑時,植入件會切換至 C2 模式,先將 HAProxy 的即時連線計數器遞減,使該連線不會出現在負載平衡器的統計資料中,隨後把指令內容寫入 /tmp 目錄下的命名管道,並將請求通道清空,使指令在負載平衡器端即告終止。
- 偽裝流量:回應以標準 HTTP/1.0 200 OK 標頭送出,外觀與普通網頁流量無異。透過此管道,攻擊者可 beacon(偵測回報)、上傳/下載檔案、執行 Shell 命令,甚至更換植入件的設定檔。
- 目標篩選:只有同時符合四項檢查的請求會收到改寫頁面。條件包括必須帶有 User-Agent、URL 與 Referer 必須符合特定正則表達式,且客戶端 IP 必須在白名單(精確 IP 或 /24 子網)內,或在 Accept-Language 標頭中提供特定操作金鑰,以完全繞過 IP 濾檢。
- 回應偽裝:植入件會改寫回傳的 Content-Type 與 Content-Length,強制回應狀態為 200,並刪除 Accept-Ranges 標頭,防止客戶端透過分段請求發現內容長度異常。
- 持久化與清痕:攻擊者僅在已執行 HAProxy 或 cron 的主機上部署,先驗證 root 權限,再覆寫正統的 crond 執行檔,並偽造其建立時間與 /usr/bin/ssh 相同。隨後刪除 root Bash 歷史與六個系統日誌(含 auth.log、audit/audit.log)中的關鍵字 tmp、wget、cron、crond。同一工具組還包含一個被竊改的 sshd,會加密捕獲的明文密碼並寫入固定路徑。
影響與風險評估
- 隱蔽性極高:C2 流量不會出現在後端伺服器或 HAProxy 的統計中,傳統的流量監控與日誌分析難以偵測。
- 資料外洩與系統控制:攻擊者可遠端執行任意指令、竊取或修改檔案,對企業營運與機密資訊構成重大威脅。
- 供應鏈擴散風險:若受感染的 HAProxy 被用於多個服務,惡意流量可能波及廣大客戶端。
- 來源判斷:Rapid7 以「中等信心」將此行動歸因於 北韓國家支援的黑客組織,推測入侵點可能是暴露的 Groupware(企業協作平台)入口,該推測參考了 ENKI 報告中 Kimsuky 透過郵件伺服器漏洞入侵群組軟體供應商的案例。
未來展望與防禦建議
-
加強主機防護:確保 HAProxy、cron 與 sshd 等關鍵服務僅在受信任的帳號下執行,並使用完整性檢查(如 Tripwire)驗證二進位檔的雜湊值。
-
嚴格存取控制:對 Groupware 入口實施多因素驗證與最小權限原則,減少未授權的遠端登入機會。
-
提升偵測能力:部署能捕捉 named pipe(命名管道)與 /tmp 目錄異常寫入的行為監控,並針對 HTTP/1.0 200 OK 之異常流量進行行為分析。
-
日誌完整性:使用集中式日誌平台與防篡改機制,避免攻擊者刪除關鍵字痕跡。
-
供應鏈安全審計:對使用 HAProxy 的所有服務進行定期安全掃描,確保第三方套件未被植入惡意程式。
面對此類高度隱蔽的供應鏈攻擊,企業必須從「預防」與「偵測」雙管齊下,才能在早期阻斷威脅,降低被竊取或破壞的風險。
分享
