KeyFrame內部研究專用

DEF CON 33 Recon Village - Building Local Knowledge Graphs for OSINT - Donald Pellegrino

DEFCONConference·12月31日週三·41 min英文

三句話摘要

在 Defcon Recon Village 上,Dr. Pellegrino 示範如何以本地知識圖譜(RDF)結合本地 LLM,建立可繞過 API 速率限制、同時維護 OPSEC 的離線 OSINT 調查框架。 透過 RDF 本地知識圖譜,將批量採集、SPARQL 查詢與本地 LLM 三者整合,OSINT 調查者既能繞過速率限制,又能在不洩露調查意圖的前提下,讓 AI 成為可重複、科學驗證的全流程分析夥伴。 速率限制本質上是 OPSEC 問題:每次向外部 API(含 LLM)發送查詢,等同於向服務商揭露你的調查興趣。解法是先批量收集遠大於目標範圍的資料存到本地,再於本地分析,讓外部服務無從推斷具體目標。

重點整理

重點
  • 1

    速率限制本質上是 OPSEC 問題:每次向外部 API(含 LLM)發送查詢,等同於向服務商揭露你的調查興趣。解法是先批量收集遠大於目標範圍的資料存到本地,再於本地分析,讓外部服務無從推斷具體目標。

  • 2

    RDF 是多分析師協作的通用語言:不同來源、不同語言、不同格式的資料,透過資源描述框架(RDF)可統一表達為三元組(主詞-謂詞-受詞),讓多位分析師的成果直接可互操作,無需額外資料清洗工程。

  • 3

    Graph RAG 優於傳統 RAG:傳統檢索增強生成(RAG)以文字相似度搜尋文件,而圖譜 RAG(Graph RAG)以知識圖譜管理上下文窗口,能系統性地將大型資料集的關係結構導入 LLM,分析品質更可控。

  • 4

    本體論(Ontology)讓 LLM 輸出立即可用:使用 FOAF(Friend of a Friend)等既有本體,提示 LLM 將提取結果直接輸出為 RDF 格式並對齊標準資料模型,原本需數週微調的工作,可在一次提示中完成。

實用技巧與重點

乾貨
  • 工具與技術
  • Rust 自訂爬蟲(專案稱 RD Client):比 wget/curl 取得更多資料,支援 JavaScript 動態內容
  • Playwright + Chromium:處理需滾動或點擊才載入的 JavaScript 頁面
  • RDF / Triple Store:W3C 標準,以三元組表達圖資料
  • SPARQL(縮寫諧音 "Sparkle"):RDF 專用查詢語言
  • FOAF 本體(Friend of a Friend Ontology):社交網路關係的標準資料模型
  • Wikidata API:Wikipedia 的 RDF 形式重新發布端點,可直接取得結構化 RDF 資料
  • Maltego:鏈路分析圖(Link Analysis)互動式介面工具
  • LM Studio / Llama CPP / VLM:本地 LLM 執行框架
  • Qwen 3(30B 參數模型):本次 VLM 測試使用,需 GPU
  • Claude Code:本次投影片以 LaTeX 撰寫並存入同一 GitHub 專案,由 Claude 交叉比對程式碼與投影片內容
  • 方法步驟
  • 批量爬取(遠大於目標範圍的資料集)→ 隱藏調查意圖
  • 本地 LLM 提取 HTML 中的實體(演講者、機構、角色)
  • 輸出對齊 FOAF 本體的 RDF 三元組
  • 匯入 Triple Store,以 SPARQL 跨資料集查詢
  • Wikidata 補充公司資訊(成立年份、產業),以 RDF JOIN 連接
  • 封裝為可攜帶的資料包,供其他分析師重用
  • 案例數據
  • 人工分析 Recon Village 網站演講者名單:遺漏 4 位演講者(因未滾動至 Schedule 標籤頁、未發現聯合演講者)
  • LLM 在 2 秒內找到所有人工遺漏的演講者
  • Wikidata 發現演講者來自:Tyson Foods(90 年歷史)、Microsoft、Fortinet、Palo Alto 等不同年齡公司
  • OPSEC 風險提示
  • Claude 拒絕「識別影響目標人物」的提示措辭,ChatGPT 回答中混入不屬於本次會議的來源
  • 外部 LLM 供應商對可查詢內容有定性控制權,不僅是速率問題
  • Chromium 爬取仍可能洩漏瀏覽器指紋(本講未深入探討)

結論

結論

透過 RDF 本地知識圖譜,將批量採集、SPARQL 查詢與本地 LLM 三者整合,OSINT 調查者既能繞過速率限制,又能在不洩露調查意圖的前提下,讓 AI 成為可重複、科學驗證的全流程分析夥伴。

完整解析

詳細

現代 OSINT 調查者面臨雙重困境:一方面,Google、Wikipedia、各類 API 及 LLM 服務都有速率限制,大量查詢會被封鎖;另一方面,每一次查詢本身就是一種信息洩露——搜尋引擎和 LLM 供應商都能記錄你的興趣所在,而「向誰查詢什麼」本身即是調查意圖的暴露。Dr. Pellegrino 的核心主張是:繞過速率限制的真正解法,同時也是維護操作安全的正確路徑,就是建立本地知識圖譜。

整個方法論圍繞四個步驟展開。第一步是批量收集。爬取時不只針對目標,而是下載遠大於調查範圍的資料集——例如不是只查詢感興趣的五家公司,而是把 Wikidata 上全部科技公司的 RDF 資料拉下來——目標就埋藏在更大的集合中,外部服務無法從查詢模式推斷出你真正想查誰。爬取工具選擇了自行開發的 Rust 爬蟲搭配 Playwright + Chromium,而非傳統 wget/curl,因為後者完全忽略 JavaScript 動態生成的內容,在現代網站上會大量遺漏資料。案例研究正好印證了這一點:Recon Village 網站的演講者名單分散在動態標籤頁與滾動加載的區塊中,人工蒐集直接遺漏了 4 位演講者。

第二步是以 RDF 提取並統一表達資訊。資源描述框架(RDF)是 W3C 標準,以「主詞-謂詞-受詞」三元組表達任何資料關係,可視為一種不受具體格式束縛的圖資料庫模式。其最大優勢在於互操作性:不同格式、不同語言、不同分析師的成果,只要對齊同一本體(如社交網路的 FOAF 本體),就能直接連接與查詢,無需額外的格式轉換工程。Dr. Pellegrino 特別展示了一個令他驚訝的結果:只需提示 30B 參數的 LLM,請它將提取到的演講者名單輸出為對齊 FOAF 本體的 RDF 格式,模型直接給出正確結果,省去了他原本預期需要數週的資料模型調整工作。

第三步是在 Triple Store 中以 SPARQL 查詢。將多個來源的 RDF 資料匯入後,調查者可跨資料集進行關聯分析:例如把 Recon Village 演講者所屬機構與 Wikidata 的公司成立年份做 JOIN,立即得出「這位演講者來自一家 90 年歷史的食品公司」的洞察,而這是單一資料來源無法提供的。Wikidata 的優勢在於它本身就是以 RDF 形式發布,幾乎是零成本的「速勝」整合。

第四步是以 Graph RAG 讓本地 LLM 系統性參與分析。傳統 RAG 以文字相似度搜尋片段送入 LLM,難以處理複雜關係;圖譜 RAG 則以知識圖譜的結構管理 LLM 的上下文窗口,讓分析師能明確控制「哪些子圖進入哪個提示」,使 LLM 成為圖譜上可重複執行的分析參與者,而非每次都要重新餵入原始文件的黑盒工具。整個工作流程最終打包成可攜帶的 RDF 資料包,其他分析師可以直接接手前人成果繼續深化,形成良性循環。

關鍵時刻

Pipeline v2

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

事實查核

Pipeline v2

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

更多「Web2 安全」的內容

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 錯誤報告,進而收集目標系統配置情報。
Risky Bulletin: Expired credit cards can be used for malicious transactions
5 min
Web2 安全英文PODCAST8月24日

Risky Bulletin: Expired credit cards can be used for malicious transactions

Risky Business

  • 支付安全的非對稱風險:Visa卡利用未加密的卡片資料與NFC通訊,攻擊者可藉由中間人技術竄改過期日期進行交易,但MasterCard、美運卡與Discover的防護更完善,顯示不同發卡機構的安全架構存在明顯差異。
  • 國家級駭客活動的連鎖延伸:北韓Lazarus集團在2月單一事件已累積100名受害者,涵蓋大學、警察部門、媒體與醫療機構,伊朗駭客則針對基礎建設如電力系統發動破壞性攻擊,反映地緣政治在網路戰爭中的升溫。
  • AI加速漏洞生態的雙面刃:AI工具催生近2萬份漏洞概念驗證代碼發布,但同時也導致大量失效漏洞代碼氾濫,增加資安團隊甄別真實威脅的難度;Mayer Protocol遭攻擊事件中,駭客用AI鏈接六個無關的小漏洞完成盜竊170萬美元的攻擊。
SANS Stormcast Monday, August 24th, 2026: More Entra Powershell; Entra Vulnerability; GitLab Vuln (and PoC); GTA 6 Leak Malware
5 min
Web2 安全英文PODCAST8月24日

SANS Stormcast Monday, August 24th, 2026: More Entra Powershell; Entra Vulnerability; GitLab Vuln (and PoC); GTA 6 Leak Malware

SANS Stormcast

  • Microsoft EntraID 的遠端代碼執行漏洞已由微軟修補,初期報告顯示已遭利用但後來更正為未遭利用。這反映 Microsoft 在雲端軟體安全上的透明度提升,對漏洞採用與內部軟體相同的 CVE 編號和公告流程。
  • PowerShell 指令碼可用於驗證 MFA 部署完整性,特別是找出未啟用 MFA 的遺漏帳號。同時可以分析 EntraID 登入日誌中的異常行為,如風險係數評估和地理位置檢測,幫助組織快速識別可疑登入。
  • GitLab 的 GraphQL 代碼注入漏洞允許未認證攻擊者刪除或修改儲存庫,潛在導致供應鏈攻擊。已有公開概念驗證 (PoC) 存在,使用內部部署 GitLab 的組織必須立即修補。