KeyFrame內部研究專用

HackTheBox - Fries

IppSec·7月25日週六·87 min英文

三句話摘要

利用 Git 洩露、PostgreSQL RCE、NFS 配置缺陷與 ADCS 證書漏洞攻破跨平臺滲透測試靶機。 這個演練展示瞭如何透過版本控制洩露、資料庫漏洞、NFS 配置缺陷與 ADCS 設計缺陷的鏈式利用,從低許可權逐步升級到域控完全許可權,強調了防禦深度的重要性與每個層次配置錯誤的累積風險。 第一,Git 倉庫歷史是高價值情報源。講者強調 git ignore 的提交記錄常含已刪除但未從歷史清除的敏感檔案,包括資料庫憑證、加密金鑰與內部主機名。這使得對公開倉庫的版本控制歷史進行深度挖掘成為滲透測試的關鍵早期步驟。

重點整理

重點
  • 1

    第一,Git 倉庫歷史是高價值情報源。講者強調 git ignore 的提交記錄常含已刪除但未從歷史清除的敏感檔案,包括資料庫憑證、加密金鑰與內部主機名。這使得對公開倉庫的版本控制歷史進行深度挖掘成為滲透測試的關鍵早期步驟。

  • 2

    第二,PostgreSQL 透過 COPY FROM PROGRAM 命令支援程式碼執行,結合臨時表可以捕獲命令輸出。講者演示了透過 PgAdmin 的 SQL 查詢工具利用此功能的全過程,包括處理網路限制與多連線的埠複用問題。

  • 3

    第三,NFS 配置中 no_root_squash 與 no_sec 的缺失允許客戶端透過偽造 UID/GID 繞過許可權控制。講者透過修改本地使用者 ID 與組 ID,使用 setpriv 命令偽裝成目標使用者身份訪問 NFS 共享上的系統檔案與證書。

  • 4

    第四,Active Directory Certificate Services 的多個配置錯誤(ESC6、ESC7、ESC16)形成鏈式漏洞。低許可權使用者可請求具有高許可權 UPN 的證書。講者利用 Certify 工具啟用脆弱模板、禁用安全擴充套件檢查,最終獲得 Administrator 身份的有效證書。

實用技巧與重點

乾貨
  • 掃描結果
  • 開放埠:22 (SSH)、53 (DNS)、80 (HTTP)、443 (HTTPS)、389 (LDAP)、5985 (WinRM)、8080 (HTTP 替代)
  • TTL 分析:SSH 的 TTL=62 表示 Linux,DNS 的 TTL=127 表示巢狀 Windows 系統
  • 服務與應用
  • fries.htb:Flask 應用(餐廳網站)
  • pwm.fries.htb:密碼自助重置服務(HTTPS)
  • git.fries.htb:Gitea 例項
  • pgadmin05.fries.htb:PgAdmin 4 版本 9.1
  • dco1.fries.htb:域控制器與 ADCS 證書服務
  • 資料庫資訊
  • PostgreSQL 資料庫連線字串(從 Git 歷史提取)
  • PgAdmin 預設使用者與密碼(環境變數中洩露)
  • LDAP URL:ldap://10.129.33.43:389
  • NFS 配置
  • 匯出路徑:/srv/web.fries.htb.HTB
  • 選項:no_root_squash, no_sec(允許 UID 偽造)
  • 掛載點:/srv/web.fries.htb.htb
  • Docker 與證書
  • Docker TLS 認證檔案位置:/etc/docker/certs.d/
  • 檔案列表:ca.pem、client-cert.pem、client-key.pem、server.pem、server-key.pem
  • 使用者與憑證
  • svc:初始 SSH 使用者
  • svc_infra:LDAP 使用者(透過 Responder 捕獲密碼)
  • GMSA_CA_prod:組管理服務賬戶(ADCS 管理員)
  • Administrator:最終目標
  • 工具與命令
  • nmap -sC -sV(網路掃描)
  • hydra(SSH 暴力破解)
  • net exec / nxc(AD 列舉)
  • Responder(LDAP 中間人)
  • BloodHound(許可權分析)
  • Certify.exe(ADCS 漏洞利用)
  • evil-winrm(WinRM 訪問)
  • openssl(證書生成)

結論

結論

這個演練展示瞭如何透過版本控制洩露、資料庫漏洞、NFS 配置缺陷與 ADCS 設計缺陷的鏈式利用,從低許可權逐步升級到域控完全許可權,強調了防禦深度的重要性與每個層次配置錯誤的累積風險。

完整解析

詳細

這場滲透測試從全面的網路掃描開始。講者使用 nmap 發現約 16 個開放埠,透過 TTL 值與服務橫幅推斷出這是一個 Windows 主機中執行的 Linux 虛擬機器環境。初始階段,講者列舉了三個關鍵虛擬主機:fries.htb 是一個簡單的 Flask 餐廳應用、pwm.fries.htb 執行密碼管理服務、git.fries.htb 暴露了一個 Gitea 例項。

透過審查 Gitea 倉庫的提交歷史,講者發現了關鍵的憑證洩露。Git 歷史中包含資料庫連線字串、PostgreSQL 密碼、金鑰與內部主機名。這些資訊成為後續攻擊的跳板。講者訪問了 pgadmin05.fries.htb 的 PgAdmin 4,使用從 Git 中提取的憑證進行認證。

在 PgAdmin 的 SQL 查詢工具中,講者測試了 PostgreSQL 的程式碼執行能力。透過 COPY FROM PROGRAM 命令,講者執行了系統命令如 sleep 與 ping,確認了 RCE 漏洞。最初的 shell 連線嘗試失敗,講者發現容器網路存在限制。透過更換監聽埠(從 9001 改為 9002),講者成功獲得了 postgres 容器的 bash shell。雖然容器 shell 用處有限,但環境變數中存在 PgAdmin 密碼洩露。

透過 Responder 工具設定 LDAP 中間人攻擊,講者截獲了 svc_infra 使用者嘗試與 LDAP 伺服器通訊時傳送的明文密碼。獲得這個憑證後,講者可以透過 SSH 登入主機。在系統偵察中,講者發現了 NFS 匯出配置中的嚴重漏洞:/srv/web.fries.htb.htb 匯出配置中缺少 root_squash 與 sec 選項,意味著可以偽造任意 UID/GID。

講者利用 setpriv 命令修改本地程序的 UID/GID,偽裝成不同使用者從 NFS 共享訪問系統檔案。透過這種方法,講者複製了 root 使用者的 SSH 金鑰,最終以 root 身份透過 SSH 登入主機。作為 root,講者提取了 Docker 的 TLS 客戶端證書。這些證書允許講者直接與 Docker 守護程序通訊。講者啟動了一個掛載了整個根檔案系統的容器,從而獲得了 Windows 主機根目錄的訪問許可權。

許可權提升的最後階段涉及 Active Directory。講者使用 BloodHound 分析了許可權關係,發現 svc_infra 使用者屬於 Cert Admins 組,可以管理證書服務。講者執行了 certutil 工具發現系統容易受到 ESC7 攻擊。透過上傳 Certify.exe,講者啟用了 ESC6 選項,允許偽造使用者主體名稱(UPN)。之後,講者請求了以 Administrator 身份認證的證書。

初次嘗試失敗是因為證書中的安全擴充套件與域要求不匹配。講者透過啟用 ESC16 選項禁用了安全擴充套件檢查,重新請求證書。最終獲得了有效的管理員證書,用於偽造 Kerberos 認證令牌。講者使用這個證書透過 PsExec 連線到域控制器,最終以管理員身份獲得了 Windows 系統的完全控制權。

關鍵時刻

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 錯誤報告,進而收集目標系統配置情報。