摘要

這份報告提供了 Cyberspike Villager(一個先進的 AI 原生滲透測試框架)的詳細技術分析。Villager是一個新興的 AI 驅動滲透測試框架,它將 Kali Linux 工具與 DeepSeek AI 模型整合,以實現網路攻擊工作流程的自動化。自 2025 年 7 月發佈以來,該工具已被下載約 10,000 次,顯示出資安專業人員與潛在 Threat actor 對其的高度關注。報告深入探討了其架構元件、運作機制,以及人工智慧在自動化複雜網路安全任務中的創新應用。此分析著重於框架的技術複雜性,從其分散式架構、AI 增強決策程序,以及基於任務的命令與控制系統中汲取見解。

AI 如何自動化滲透測試?Cyberspike Villager 技術架構與攻擊手法深度剖析 | 資訊安全新聞

1. Cyberspike Villager 簡介

Cyberspike Villager 代表著滲透測試框架的重大演進,從傳統的腳本手冊轉向 AI 原生方法。它整合了精密的 AI 模型和分散式服務元件,以自主執行安全評估與利用。此框架的設計旨在透過運用 AI 進行動態任務規劃、執行和適應,從而簡化和提升滲透測試作業的效率 [1]。

2. 分散式架構與核心元件

Villager 框架建立在一個分散式架構之上,由數個相互連接的服務元件組成,這些元件使其具備進階功能。這種模組化設計允許在滲透測試的不同層面實現擴充性、韌性與專業功能。主要元件包括 MCP Client Service、RAG Enhanced Decision Making、On-Demand Container Creation、Enhanced AI Orchestration with Pydantic,以及 Forensic Evasion mechanisms [1]。

2.1. MCP Client Service

訊息傳遞與協調(Message Passing and Coordination, MCP)Client Service 作為 Villager 框架內元件間通訊與任務協調的中央樞紐。它確保各個模組能有效交換資訊並同步其攻擊,這對於協調複雜的攻擊序列至關重要。此服務通常在指定通訊埠(例如 25989)上監聽,以管理資料與命令在分散式系統中的流動 [1]。

2.2. RAG Enhanced Decision Making

Villager 的一項核心創新是其擷取增強生成(Retrieval-Augmented Generation, RAG)決策能力。此元件運用一個龐大的 AI 系統提示資料庫(據報導有 4,201 個)來生成攻擊與在滲透測試期間做出即時策略性決策。透過將相關資訊的擷取與生成式 AI 相結合,此框架能夠適應動態環境並自主形成有效的攻擊策略 [1]。

2.3. On-Demand Container Creation

為了提供隔離且動態的環境以執行網路安全工具,Villager 整合了一個 on-demand container creation 機制。此功能根據需要自動供應 Kali Linux 容器,以執行諸如網路掃描、漏洞評估和攻擊等任務。容器的使用確保工具在受控的環境中執行,將衝突最小化並為每個操作提供一個乾淨的環境 [1]。

2.4. Enhanced AI Orchestration with Pydantic

此框架利用 Pydantic AI 來對其 AI 模型產生的輸出強制執行嚴格的格式規則。這確保了可靠且可預測的回應,這對於自動化任務管理和決策程序至關重要。Pydantic 的資料驗證和解析能力有助於在 AI 驅動的工作流程中維持資料完整性與一致性,防止因格式不正確或模糊的 AI 輸出而產生的錯誤 [1]。

2.5. Forensic Evasion

Villager 整合了精密的 forensic evasion 技術,以在作業期間將其 footprint 最小化。容器被設定為 24 小時後自我銷毀,旨在清除攻擊紀錄和其他鑑識證據。這些容器的短暫性,結合隨機化的 SSH 通訊埠,顯著增加了偵測和鑑識分析的複雜性,使得 AI 驅動攻擊的歸因更具挑戰性 [1]。

3. Villager 的協調概述

Villager 框架的整體協調可以被視為其核心元件之間由 AI 驅動的精密互動。下圖表展示了這些元件如何互動以實現自動化滲透測試的高階視圖:

graph TD A[Operator] --> B{Natural
Language
Commands} B --> C[Villager MCP
Client Service] C --> D[RAG Enhanced
Decision Making] D --> E{Task Decomposition
& Planning} E --> F[On-Demand
Kali Containers] F --> G[Cybersecurity Tools] C --> H[Browser Automation] C --> I[Direct Code
Execution] G --> J[Target System] H --> J I --> J J --> K{Results &
Feedback} K --> D E --> L[Intelligent Task
Management] L --> C F --> M[Forensic Evasion] M --> F

此圖表突顯了 MCP Client Service 在協調行動中的核心作用,以及由 RAG 增強決策所引導的整體策略。任務被動態分解並使用容器化環境和專業工具來執行,同時整合了 forensic evasion 技術。

4. 工具整合與運作機制

Villager MCP 客戶端根據任務要求動態介接各種工具,實現多功能且適應性強的滲透測試方法。這些工具包括 Kali Driver、Browser Automation 和 Direct Code Execution 能力 [1]。

4.1. Kali Driver

Kali Driver 元件負責提供 on-demand 容器化的 Kali Linux 環境。這些環境對於執行各種網路操作和網路安全工具至關重要。這篇文章提供了一個 Python 程式碼片段,展示了 Kali 容器是如何被創建和管理的:

  1. class KaliContainer:
  2. def __init__(self, uuid, owner, host):
  3. self._uuid = uuid
  4. self._owner = owner
  5. self._host = host
  6. self._container = owner._docker_client.containers.create(
  7. image="gitlab.cyberspike.top:5050/aszl/diamond-shovel/al-1s/kali-image:main",
  8. command="/usr/sbin/sshd -D",
  9. ports={"22/tcp": None},
  10. detach=True
  11. )
  12. self._ssh_connection = None

這個來自 kali_driver-0.0.0/al1s/drivers/kali/driver.py 的程式碼片段展示了 KaliContainer 物件的實體化。它使用 Docker 客戶端從指定的映像檔創建一個容器,執行 SSH daemon,映射通訊埠,並分離容器。此機制讓 Villager 能夠迅速部署和管理其作業的隔離環境 [1]。

4.2. Browser Automation

對於基於網路的互動和客戶端測試,Villager 採用了 browser automation 能力。這使得框架能夠模擬使用者互動、探測網路應用程式中的漏洞,並執行需要網頁瀏覽器環境的動作。這對於測試高度依賴客戶端腳本和動態內容的現代網路應用程式特別有用 [1]。

4.3. Direct Code Execution

此框架也支援 direct code execution,利用 pyeval() os_execute_cmd() 等函數進行系統層級的操作。此能力為 Villager 提供了在目標系統上執行任意程式碼和命令的彈性,實現更進階和客製化的攻擊技術 [1]。

4.4. API Integration and Testing

此框架包含了精密的 API 測試能力,這可由 API 測試腳本設定中得到證明:

  1. API_URL = "http://gpus.dev.cyberspike.top:8000/v1/chat/completions"
  2. MODEL_NAME = "al-1s-20250421/"
  3. TEST_ROUNDS = 100
  4. MAX_WORKERS = 10
  5. enc = tiktoken.encoding_for_model("gpt-3.5-turbo")

這個來自 villager-0.1.dev52/test/unitest/api_test.py 的設定展示了框架透過與 OpenAI 相容的 API 端點,整合客製化 AI 模型。使用 tiktoken 進行分詞和客製化模型 "al-1s-20250421" 表明在滲透測試工作流程中整合了精密的自然語言處理能力 [1]。

5. Task-Based Command and Control (C2) 架構

Villager 實施了一個精密的 task-based Command and Control (C2) 系統,主要透過 FastAPI 介面公開,通常在通訊埠 37695 上。這個 C2 架構允許操作員使用自然語言命令提交高階目標和任務,然後框架將其轉換為可執行的攻擊序列 [1]。

以下是透過 FastAPI 介面提交任務的一個範例:

  1. POST /task
  2. {
  3. "abstract": "Test example.com for vulnerabilities",
  4. "description": "Perform comprehensive security assessment",
  5. "verification": "Provide list of exploitable vulnerabilities"
  6. }

5.1. Intelligent Task Management

框架的 TaskRelationManager 對其 C2 作業至關重要,處理數個關鍵功能。Task Decomposition 自動將複雜的目標分解為更小、可管理的子任務。Dependency Tracking 確保子任務以正確的順序執行,尊重相互依賴性。Failure Recovery 在任務失敗時觸發透過 AI 模型進行重新規劃,允許系統適應並克服問題。Parallel Execution 讓獨立的子任務能夠同時運行,優化作業效率 [1]。

Pydantic AI 在此扮演關鍵角色,透過標準化輸出,確保任務管理和多步驟決策的一致回應,這對於 AI 驅動的滲透測試工作流程至關重要。系統提示強調了任務鏈連續性的重要性,確保一個任務的結果可以直接被下一個任務使用 [1]。

5.2. 即時監控

操作員可以透過各種 API 端點即時監控任務進度。 /get/task/status 端點提供了所有運作中任務的概覽。 /task/{id}/tree 端點提供了任務關係的視覺化圖表,展示了分解和依賴性。 /task/{id}/context 端點為特定任務提供了詳細的執行紀錄,有助於除錯和理解運作流程 [1]。

graph LR A[Natural Language Task] --> B[Task Decomposition] B --> C[Subtask 1: Enumeration] B --> D[Subtask 2: Technology ID] B --> E[Subtask 3: Vulnerability Testing] B --> F[Subtask 4: Exploitation] C --> G[Results Aggregation] D --> G E --> G F --> G G --> H[Final Report]

6. 攻擊情境分析

框架的 task-based 架構促進了各種情境下精密的攻擊自動化 [1]。

6.1. Adaptive Web Application Testing

在一個威脅者提交 "Find and exploit vulnerabilities in example.com" 之類任務的情境中,Villager 展示了其精密的協調能力。此框架動態地將其分解為子任務,例如列舉子網域、識別網路技術、測試常見漏洞和利用已發現的問題。GenAI 根據發現的結果調整其方法;舉例來說,偵測到 WordPress 會在 Kali 容器內觸發 WPScan,而一個 API 端點則將重點轉向 browser automation 進行認證探測。任務驗證系統確保每個步驟成功後再繼續 [1]。

6.2. Multi-Tool Attack Chains

Villager 的 MCP 架構使得建立複雜的 multi-tool attack chains 成為可能。一個例子包括 browser automation 發現客戶端原型污染漏洞,接著 direct code execution 製作專門的 payloads。然後一個 Kali 容器監控網路流量以確認成功攻擊,一旦成功,則透過 os_execute_cmd() 部署 persistence mechanisms。這種協調、有機的方法是由 GenAI 的任務規劃驅動,而非僵化的程式設計 [1]。

7. 技術實作分析

Villager 的技術實作展示了數種先進的軟體工程和 AI 整合模式。使用 Docker 容器進行工具隔離展示了雲端原生方法來進行安全測試,其中每個工具的執行都發生在一個原始的環境中。多個程式語言和框架的整合,包括用於核心邏輯的 Python、用於網路服務的 FastAPI,以及用於容器化的 Docker,創建了一個強大且可擴充的架構。

此框架對與 OpenAI 相容的 API 依賴進行 AI 整合,允許在模型選擇和部署上具有彈性。客製化模型 "al-1s-20250421" 暗示了針對網路安全任務的專門訓練,可能包含了領域特定知識和攻擊模式。使用 tiktoken 進行分詞確保了與標準 NLP 管道的相容性,同時保留了處理安全特定術語和命令的能力。

在容器中實施的自我銷毀機制代表了運作安全的一種精密方法。透過在 24 小時後自動清除證據,框架減少了測試活動的鑑識 footprint。此功能結合隨機化的 SSH 通訊埠,展示了對防禦反制措施的理解,以及滲透測試作業中隱匿性的重要性。

8. 結論

Cyberspike Villager 框架代表著滲透測試的典範轉移,朝向高度自主、AI 驅動的作業。其分散式架構,加上先進的 AI 協調和任務管理,允許動態適應和精密的攻擊鏈執行。整合 on-demand 容器化和 forensic evasion 技術進一步增強了其能力,使其成為自動化安全評估和攻擊的強大工具。

技術分析揭示了一個設計精良的系統,該系統利用現代軟體開發實踐,包括容器化、微服務架構和 API 驅動設計。透過標準化介面整合 AI 模型展示了具備前瞻性的設計,能夠適應不斷發展的 AI 技術。此框架將自然語言命令轉換為複雜技術操作的能力代表了滲透測試可存取性和自動化方面的重大進展。

隨著 AI 技術持續發展,像 Villager 這樣的框架突顯了網路安全領域中 AI 原生工具日益增長的複雜性,為防禦策略帶來了新的挑戰和機遇。此框架中展示的技術創新可能會影響攻擊性與防禦性網路安全工具的發展,從而推動整個安全測試生態系統的演進。