AIDEFEND in Action AIA-0037 實際事件 發布於 AIA: 2026年7月6日

JADEPUFFER:AI 工作流程伺服器遭入侵後,資料庫勒索如何展開

Sysdig 描述的 JADEPUFFER 是一套由 LLM 協助操作的資料庫勒索流程。攻擊者先利用 Langflow(用來建立 LLM/AI 工作流的視覺化框架)CVE-2025-3248,把 Base64 編碼的 Python 惡意程式碼送到 Langflow 主機執行;接著蒐集主機環境、憑證與可連線服務資訊,往 Nacos/MySQL 基礎設施移動,最後加密或刪除設定與資料庫資料表。這篇的防禦重點很實際:AI 工作流伺服器不能只當成測試工具管理,而要有受限的程式碼執行邊界、身分驗證、網路分段、對外連線管制、憑證撤銷與輪替、破壞性操作監控,以及實際驗證過的資料復原能力。

Remote Code ExecutionData LossRuntime IsolationOperational SecurityAI Infrastructure
8 項對應的 AIDEFEND 防禦手法

威脅分析

  • 入口是 AI 工作流伺服器上的遠端程式碼執行漏洞。 JADEPUFFER 鎖定受 CVE-2025-3248 影響的 Langflow。攻擊者先用 Base64 包裝 Python 惡意程式碼,再送到未驗證的 code-validation 端點,讓 Langflow 主機解碼並執行。
  • 第一階段會把 AI 主機變成憑證與服務地圖。 惡意程式會枚舉主機、程序、網路與環境變數,讀取 Langflow 背後資料,嘗試用預設憑證探測 MinIO,擷取 credentials.json、.env 這類檔案,並在 cron 裡建立會定期連回攻擊者伺服器的 beacon。
  • 真正目標是另一組 Nacos/MySQL 正式環境。 Sysdig 觀察到 agent 用 root 憑證連進暴露在外的 MySQL;這組憑證來源沒有被觀察到。接著它嘗試 Nacos 的身分驗證繞過與 default-token 路徑,並把後門管理員寫進 Nacos 背後的資料庫。
  • 惡意程式破壞的是資料完整性與可復原性。 它把 1,342 筆 Nacos 設定加密到備份資料表,刪除原始設定與歷史資料表,建立 README_RANSOM,再用會重試的邏輯刪除整個資料庫 schema(資料庫內的一組資料結構)。
  • agentic 自動化會壓縮防守時間。 Nacos 管理員建立失敗後,agent 在 31 秒內改寫下一段惡意程式碼並重新建立帳號;它也會依照回應格式或登入失敗原因調整下一次嘗試。防守方不能只靠慢速人工排查,必須讓隔離、偵測、撤銷憑證與復原流程能快速啟動。

適用的 8 項 AIDEFEND 防禦手法

AID-H-025.002
Safe Interpreter Enforcement
極高
Langflow 的 code-validation 這類動態程式碼執行介面,不應讓任意 Python 程式取得檔案系統、網路、import 或 shell 權限。外部執行閘道應強制使用受限的 Python 解譯器,直接限制 JADEPUFFER 惡意程式在主機上能讀什麼、連去哪裡、呼叫哪些能力。
AID-M-001.005
Public AI Endpoint & Agent-Service Exposure Discovery
極高
這條攻擊鏈從公網上的 Langflow code-validation 端點開始。從企業網路外、不帶公司憑證地掃描 AI 暴露面,可找出這個服務並核對負責人、公開用途與驗證要求。這項控制只送出精確的未知或偏離政策路徑 finding;實際修補由 H-003.010 與暴露面控制負責。
AID-H-004.002
Service & API Authentication
高
在 Langflow API 或 gateway,先驗證呼叫端 workload、應用程式或外部整合的 machine identity,再把請求送進 code-validation 與內部服務路徑。這項 machine authentication 不能取代 CVE 修補、不能授權已驗證身分,也不負責 AID-H-004.001 所管的人類管理者存取。
AID-I-001.004
Sandbox Network Egress Restrictions
高
在被入侵的 Langflow 程序之外,強制執行預設拒絕的對外連線政策,並驗證實際工作負載的政策是否生效,可以封鎖未核准的遠端探測與原報告描述的 cron 回連。這項控制不會阻止讀取本機環境變數或檔案,也不會封鎖同一網路命名空間內的本機回環連線,或防止資料透過已允許的請求/回應通道回傳。
AID-H-003.010
Deployed AI Software Vulnerability Remediation Lifecycle
高
把每個已部署的 Langflow 執行個體與 CVE-2025-3248 逐一核對,重建修補後的軟體產物,先排空並更新少量測試節點(canary),再分階段部署;最後核對所有執行個體實際使用的套件/映像雜湊值(digest),確認受影響的軟體產物已全部換掉。這項控制負責修補最初的 RCE 路徑,以及修補版本的部署管理。
AID-E-001.001
Root & Long-Lived Credential Object Eviction
高
碰到這條攻擊鏈後,要撤銷或輪替確切的資料庫 root 密碼、Nacos 管理員密碼與簽章 secret、模型供應商 API key、cloud access key、MinIO access key,以及攻擊者新建的 root 或長效 credential object。若另有 account 或 principal record 要刪除,必須由身分控制面的 owner 處理。
AID-E-004
Incident Exploit-Path Closure Verification
高
Langflow、Nacos/MySQL、身分與網路修補全部部署完成後,在隔離的環境複本中獨立重複發送事件定義的 JADEPUFFER 入口與橫向移動路徑,並確認事件範圍內每個受影響系統的原始路徑都已關閉。這項控制只證明 closure,不負責 patch 或 hardening。
AID-I-002.001
Internal AI Network Segmentation
中
預設拒絕的網路分段,可以限制被入侵的 Langflow 工作負載連向未核准的遠端服務;前提是已驗證實際工作負載的政策綁定、CNI,以及正常與拒絕路徑。原報告也描述了 127.0.0.1:9000 的 MinIO:若它與執行環境共用同一個網路命名空間,一般 Kubernetes NetworkPolicy 無法隔離這條本機路徑,仍須另外分開部署或檢查存取授權。網路分段不能阻止讀取本機憑證,也不能單獨保護另一台對外開放的正式環境資料庫,避免攻擊者拿外洩憑證來存取。

身為資安防禦者,我們應該這麼做

  • 盤點 Langflow 與類似 AI 工作流伺服器,確認版本、對哪些來源開放、是否需要身分驗證、用哪個系統身分執行、掛載了哪些機敏憑證、允許連到哪些外部位址,以及能連到哪些內部服務。
  • 修補 CVE-2025-3248,封鎖未經驗證的 AI 工作流與 code-validation 路徑;如果正式環境不需要動態程式碼功能,就先停用。仍需保留時,放到受限 interpreter 與外部執行閘道後面。
  • 把 AI 工作流主機和 Nacos、MySQL、MinIO、機敏憑證管理服務、雲端 metadata、模型供應商金鑰分段。除非某個連線目標已被明確核准,不然對外連線應預設拒絕。
  • 新增偵測規則,涵蓋 Langflow 漏洞利用路徑、Base64 Python 執行、主機與環境變數中的憑證掃描、MinIO 預設憑證枚舉、cron beacon、Nacos 管理員帳號建立、MySQL file/UDF 探測、README_RANSOM,以及 DROP、TRUNCATE、大量 CREATE TABLE ... AES_ENCRYPT 這類破壞性 DDL。
  • 撤銷並輪替可能外洩的資料庫、Nacos、模型供應商、雲端與物件儲存憑證;移除攻擊者建立的帳號;接著在隔離環境還原受影響的設定資料庫與應用資料庫,確認 schema、資料完整性和服務行為正常後再結案。

1 個額外的防禦考量

下游資料的適用範圍

Sysdig 描述另一台 Nacos/MySQL 正式環境主機,但沒有證據顯示被破壞的資料屬於 AI 系統,或供 AI 系統使用。因此第 8、9 步不計入 AID-R-002。
建議做法: 依組織的事件復原程序還原並驗證 Nacos 與資料庫資料。只有第一手資產盤點證實這些資料確實供 AI 系統使用,並確認乾淨備份涵蓋哪些資料後,才重新評估 AID-R-002。

結論

JADEPUFFER 讓 AI 基礎設施風險變得很具體。只要 Langflow 持有機敏憑證、能連入內網或存取正式資料,就必須依正式環境的安全要求管理,不能把它當成只供測試的工具:快速修補、限制程式碼執行、嚴格隔離、拒絕不必要對外連線、撤銷並輪替憑證、監控破壞性動作,並在攻擊發生前確認資料真的能復原。

最後更新: