KeyFrame內部研究專用

Black Hat USA 2025 | Leveraging Jamf for Red Teaming in Enterprise Environments

Black Hat·4月7日週二·35 min英文

三句話摘要

紅隊研究員揭露如何利用 Jamf Pro 的 API 與權限模型,在企業 Mac OS 環境中提升權限、橫向移動並執行任意程式碼。 Jamf Pro 的 API 憑證一旦洩漏,攻擊者可在不觸發 EDR 警報的情況下提升至租戶管理員並在全企業 Mac 設備上執行任意程式碼,而大多數企業至今對此毫無監控。 Jamf Pro 是企業 Mac OS 的核心攻擊面:財富 500 強普遍部署 Jamf Pro 管理 Mac 設備,但設定後幾乎無後續監控,使攻擊者一旦取得 API 憑證,可在不被 EDR 偵測的情況下長期潛伏,因為 Jamf 正常管理操作本身就會產生大量腳本噪音。

重點整理

重點
  • 1

    Jamf Pro 是企業 Mac OS 的核心攻擊面:財富 500 強普遍部署 Jamf Pro 管理 Mac 設備,但設定後幾乎無後續監控,使攻擊者一旦取得 API 憑證,可在不被 EDR 偵測的情況下長期潛伏,因為 Jamf 正常管理操作本身就會產生大量腳本噪音。

  • 2

    兩條權限提升路徑:若持有「Create/Update Account」權限,可直接建立或重設本地 Jamf 帳號密碼以冒用高權限;若僅有 API 客戶端權限,則透過建立自訂 API Role 並綁定全權限 Client,再以新 Bearer Token 操作,同樣達到租戶管理員等級。

  • 3

    三種程式碼執行原語各有所需權限:腳本+策略(需 Script + Policy 權限)、策略內嵌 Run Command 標籤(僅需 Policy 權限)、電腦擴充屬性(需 Extension Attribute 權限),每種路徑所需權限不同,單一防守面無法全部封堵。

  • 4

    開源工具 Eve 與 JHound 同步公開:Eve 為 Python 進攻框架,可載入被盜憑證自動化執行攻擊;JHound 產出 BloodHound 相容格式,讓防守方可視化攻擊路徑圖,與 BloodHound Open Graph 整合同步發布。

實用技巧與重點

乾貨
  • Jamf Policy 預設每 15–20 分鐘觸發一次簽入(`jamf policy` 命令)
  • Extension Attribute 腳本透過 `jamf recon` 執行,預設每 24 小時在所有受管機器執行一次
  • 工具名稱:Eve(Python,進攻框架)、JHound(Python,審計/BloodHound 資料收集)
  • 整合平台:BloodHound Community Edition(免費,可視化攻擊路徑)
  • API 物件格式:JSON 或 XML,遵循標準 HTTP 方法(GET / PUT / POST / DELETE)
  • 攻擊原語所需最低權限:
  • 腳本執行:Create/Update Script + Create/Update Policy
  • Run Command 執行:僅需 Create/Update Policy
  • Extension Attribute 執行:Create/Update Extension Attribute
  • 憑證洩漏常見位置:shell history、git commit、S3 bucket、雲端托管區域
  • 防禦建議:API 憑證設短有效期、防火牆隔離 Jamf API 端點、建立堡壘主機、查看 JSS Access Log + Tomcat Access Log + Change Management Log
  • Jamf 雲端版可聯絡官方支援查閱日誌,提供付費 Log 轉送服務,亦可申請 API 端點白名單

結論

結論

Jamf Pro 的 API 憑證一旦洩漏,攻擊者可在不觸發 EDR 警報的情況下提升至租戶管理員並在全企業 Mac 設備上執行任意程式碼,而大多數企業至今對此毫無監控。

完整解析

詳細

現代大型企業中,Jamf Pro 幾乎是 Mac OS 設備管理的唯一選擇。在以技術為導向的組織裡,開發人員、雲端管理員等高權限用戶的 Mac 設備幾乎全都受 Jamf 管理。問題在於:Jamf 一旦部署完成,IT 管理員通常只會更新策略、注冊新設備,極少主動監控租戶的物件變更或 API 存取行為。這種「運行正常就不去動它」的心態,造成攻擊者一旦取得任何 Jamf 憑證,便可長時間潛伏而不被發現。

兩位講者以一個真實評估案例作為引子:在某客戶環境中,他們發現一位 Mac OS 使用者的命令列歷史中留有 Jamf API 的 curl 請求與憑證,透過這組憑證,他們成功橫向移動至整個集群,並在目前最主流的 EDR 系統之一上執行程式碼,且整個評估持續六、七週未被偵測。原因在於 Jamf 在正常管理流程中本就會執行大量腳本,EDR 必須過濾這些噪音以避免誤報,而攻擊者正是模仿這些管理員行為,輕易地混入合法流量。

在技術層面,他們梳理了 Jamf Pro 的權限模型:JSS 物件的 CRUD 權限、JSS 操作(如刷新策略日誌、重設密碼)、以及 JSS 設定的讀寫。取得部分權限後,有兩條提升路徑:一是若擁有「建立/更新帳號」權限,可直接在整個租戶範圍內建立具完整管理員權限的本地帳號,或重設他人密碼以冒用身份;二是透過建立自訂 API Role(包含所有所需權限),再綁定至新建的 API Client,取得新 Bearer Token,同樣獲得租戶管理員等級的存取能力。值得注意的是,這些帳號與角色的權限均為全局範圍,不受站點(Site)限制。

取得管理員權限後,Jamf 提供多種程式碼執行原語。最常見的是建立 Script 物件後,透過 Policy 引用並推送至目標設備,腳本以 root 身份執行,同時可傳入該設備關聯的使用者名稱作為參數,方便以該用戶身份執行命令。若沒有 Script 的建立權限,Policy 物件本身含有 `<run_command>` 標籤,可直接內嵌單行 shell 命令。第三個較少人知道的原語是「電腦擴充屬性」,設計目的是讓 Jamf 收集設備自訂資訊,但其內嵌腳本每 24 小時透過 `jamf recon` 在所有受管設備上執行,若攻擊者建立惡意擴充屬性,等同在全企業範圍部署一次性大規模執行。

防禦建議方面,講者強調以下重點:設定 API 憑證的短效有效期(避免洩漏後仍可長期使用)、透過防火牆隔離 Jamf API 端點並建立堡壘主機、定期審查 JSS Access Log 與 Change Management Log 中的物件異動(後者為非結構化文字,需特別處理)。雲端版 Jamf 用戶可直接聯絡原廠支援團隊協助查閱日誌或設定 API 白名單。Jamf 官方在此次演講宣布前已主動聯繫研究團隊,雙方合作制定了這些防禦建議。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「Web2 安全」的內容

Risky Bulletin: Russia starts blocking DoH and DoT
編輯精選
8 min
Web2 安全英文PODCAST8月26日

Risky Bulletin: Russia starts blocking DoH and DoT

Risky Business

  • 國家級網路管制層級提升:俄羅斯主動封鎖加密 DNS 協定對抗審查工具,中國加速淘汰 Windows 系統並遷移自主 Linux 發行版,各國正透過技術與法律手段強化網路主權與信息控制能力。
  • 詐騙犯罪走向精密化與自動化:從冒充警察的聲音詐騙(竊取 7.2 百萬美元)、AI 語音代理自動化破解 iPhone 啟用鎖、到跨越數百網站的投資詐騙(詐騙 7400 萬美元),犯罪組織正利用自動化工具與 AI 技術大幅降低成本並擴大規模。
  • AI 惡意軟體威脅實際上被嚴重誇大:405 個整合 AI 的惡意軟體樣本中僅 12 個於真實感染被偵測,其餘來自測試環境,證明當前 AI 惡意軟體仍停留於實驗階段,尚未構成主流威脅。
SANS Stormcast Wednesday, August 26th, 2026: Obfuscating SSRF; Paint and Photos AI Watermarks; FTP Banner C2;
5 min
Web2 安全英文PODCAST8月26日

SANS Stormcast Wednesday, August 26th, 2026: Obfuscating SSRF; Paint and Photos AI Watermarks; FTP Banner C2;

SANS Stormcast

  • SSRF 攻擊者已進化出高級繞過手段,不直接使用元數據服務 IP(169.254.169.254),而改用專門域名服務將請求轉址,支援點或破折號分隔 IP,甚至可自部署 DNS 伺服器進行 DNS 重綁定攻擊,使傳統簡易過濾機制失效。
  • 本地 AI 模型並非完全隱私:微軟 Paint 雖在本地執行生成邏輯,但安全檢查需上傳提示文字至遠程伺服器,返回時圖像內嵌不易移除的伺服器 GUID 隱形浮水印,可見浮水印(Copilot 圖標)則易被移除。
  • 傳統 FTP 協議被新型惡意軟體重新利用為命令控制通道,透過 FTP banner 傳遞指令於連接埠 21,防守者應視任何出站 FTP 流量為異常信號。
SANS Stormcast Tuesday, August 25th, 2026: DOUBLECUP PNG; WebAudio Fingerprinting; Expired Domains; Android; Car
7 min
Web2 安全英文PODCAST8月25日

SANS Stormcast Tuesday, August 25th, 2026: DOUBLECUP PNG; WebAudio Fingerprinting; Expired Domains; Android; Car

SANS Stormcast

  • PNG 容器攻擊的簡易性設計:Double Cup 不依賴複雜的 Exif 或隱寫技術,只用 PNG 副檔名和檔頭來偽裝,核心是利用 findstr 指令的常見可用性讓執行變得無需額外工具。
  • Web Audio API 的隱密指紋識別:音訊於增益零的無聲狀態下播放,使用者完全無感,但錄製波形足以建立裝置特徵,在瀏覽器原生功能層面難以區分是反詐欺還是過度追蹤。
  • 域名過期引發的串聯漏洞:DMARC 報告端點使用過期域名是常見疏漏,允許攻擊者透過簡單的域名註冊取得他人的 SPF/DKIM 錯誤報告,進而收集目標系統配置情報。