Rami McCarthy - Zeal of the Convert: Taming Shai-Hulud with AI | [un]prompted 2026
三句話摘要
安全研究員如何利用 AI(主要是 Claude)分析供應鏈攻擊泄露數據,通過反饋循環和確定性規則來追蹤受害者。 AI 不是魔法盒子——只有透過規劃、確定性規則編碼、反饋循環和人工驗證相結合,才能在大規模安全數據分析中發揮真正的威力。 AI 代碼生成的局限——直接問 AI 「寫一個抓取工具」會得到可運行程式,但遺漏非功能需求(快取、速率限制、並行化、退避)。應採用 RPI 循環(研究→規劃→實施),而不是直接跳到編碼,讓 AI 先規劃再執行。
重點整理
重點- 1
AI 代碼生成的局限——直接問 AI 「寫一個抓取工具」會得到可運行程式,但遺漏非功能需求(快取、速率限制、並行化、退避)。應採用 RPI 循環(研究→規劃→實施),而不是直接跳到編碼,讓 AI 先規劃再執行。
- 2
數據形狀是開發者的責任——AI 會盲目接受你給的抽象(如平面檔案),不會質疑該用資料庫索引或 SQL。需要人工冷靜規劃,而非依賴 AI 自動優化。
- 3
信號提取 vs. 輕信問題——AI 擅長模式匹配(識別 CI/CD 平台、解碼 JWT),但容易過度解釋(看到「Nucleus」就亂歸屬、假設所有 Azure DevOps 都是微軟員工)。必須注入懷疑精神,透過人工驗證確保準確性。
- 4
反饋循環是關鍵——不要讓 AI 重複分析全部 30GB(成本高、結果不一致),而是:採集樣本→提取規則→執行確定性腳本→測試結果→迭代優化,逐步擴大覆蓋範圍。
實用技巧與重點
乾貨- 數據規模:30GB、25 萬個平面檔案、30,000 個泄露倉庫
- 識別結果:13,000 台獨特機器(占 CI/CD 運行者 77%)
- 受害者數量:手動工作 2 週找 200 家 → AI 系統 2 天內發現 2,400+ 家
- 財富 100 強受影響:37 家(已手動確認)
- 成本:約 80 美元代幣消耗
- 工具與規則:Truffle Hog(800 個檢測器)、Claude、Gemini、移植秘密檢測規則(30 分鐘內新增 58 條規則)
- 歸因方法數:69 種由 AI 構建的多維度策略
- 新發現:Azure DevOps slug → 租戶 ID → 實際域名(透過文檔不完善 API,AI 無法直接發現但交給 LM 後生成 6 級濃縮系統)
結論
結論“AI 不是魔法盒子——只有透過規劃、確定性規則編碼、反饋循環和人工驗證相結合,才能在大規模安全數據分析中發揮真正的威力。”
完整解析
詳細去年被稱為「蟲年」,經歷了針對 npm 和 GitHub 的一系列供應鏈攻擊。這不只是技術問題,而是時間戰。泄露的代碼會被 GitHub 清理、受害者會刪除檔案,所以數據稍縱即逝——需要快速收集、分析並通知受害者。看似簡單的信息處理任務,實際上考驗著如何正確使用 AI 工具。
收集階段的陷阱:研究員直接問 Claude 如何用 GitHub CLI 取得所有泄露倉庫,確實得到了可運行代碼。但生產環境需要處理快取、API 速率限制、創意抓取策略、並行化、指數退避等細節,AI 不會自動想到。正確做法是先用 RPI 循環:讓 AI 研究相關文檔、規劃架構、才實施代碼。Claude 的 Plan Mode 正是這一原則的具體實踐——強制停下來規劃,不急著編碼。
數據形狀的決策權在人:收集到 30GB 檔案、25 萬個平面檔案後,線性掃描會撞上 I/O 瓶頸。重要洞察是——當你把平面檔案交給 AI 時,它會盲目接受這個抽象。它不會問「我們該建索引嗎?該用 SQL 還是 Parquet 格式?」AI 的角色受你的提示框架限制。這時需要人的判斷。
指紋識別的威力:30,000 個泄露倉庫看似代表 30,000 個受害者,但實際含有大量冗餘(CI/CD 日誌反覆出現)。透過 Claude 生成指紋,識別出僅 13,000 台獨立機器——而且 77% 是 CI/CD 運行者。這一步驟大幅改變了問題規模,從「三萬個案例」降到「一萬三千個」。
歸因難題與推理模型:真正的挑戰是 13,000 個倉庫到底屬於誰。推理模型(如 Gemini)價值重大——把所有倉庫名字放進去,問「找出前 10 家主要公司」,就能在高信噪比下採樣。AI 蘊含豐富知識:知道哪些域名與政府相關、熟悉財富 100 強、能識別 VC 投資清單、能解碼 JWT 中的信息。這種多角度模式匹配是 AI 的核心優勢。
輕信性的危險:但這把雙刃劍。看到字符串「Nucleus」就連結到特定公司(Nucleus 其實很常見平台名),看到 Azure DevOps 就假設微軟員工,看到消費者微軟服務 JWT 就直接歸屬——這在安全應用中極其危險。解法是「注入懷疑精神」:在 AI 分析後停下來,人工驗證結果,甚至塑造多個相互制衡的懷疑角色。
覆蓋範圍的陷阱與 Ralph 循環:AI 傾向走捷徑。若你要求「分析所有數據、寫出每條規則、覆蓋所有公司」,它會說「我為你挑了前 10 個,太有幫助了!」真正的完整性需要 Ralph 循環——保持自動化程序持續重複,直到達到退出條件(例如連續兩輪無新發現)。
反饋循環的關鍵:最有效做法是:AI 採集樣本分析 → 提取新信號 → 編碼成確定性規則 → 執行這些規則 → 評估覆蓋範圍是否擴大 → 迭代。不要讓 AI 重複分析全部 30GB 數據(成本高、結果變異大),而是逐次精煉。例如,某次發現了新的環境變數特徵代表自託管 Git,編碼後發現一家俄羅斯電商、葡萄牙公司、泰國金融科技、美國財富 500 強——一個信號就這麼多收獲。
秘密檢測的規則可互換性:傳統工具 Truffle Hog 有 800 個檢測器,但容易被指紋識別、假陰性率高、速度慢。Claude 卻能在 30 分鐘內從簡單規則提取 58 個新規則,移植到不同引擎。這說明在現代 AI 時代,規則已變得可互換——真正重要的是選擇合適的引擎(要快速?要低假陽性?要低漏報?)。
一次性工具的價值:AI 也有盲點。某些模式、縮寫詞 AI 識別不了。這時一次性工具很有價值——快速構建檢視工具、手工識別有潛力的屬性、再給 LM 處理迭代。例如 Azure DevOps slug 本身 AI 不知道能透過文檔不完善 API 轉為租戶 ID、再轉域名,但一旦人工發現,給 AI 這個信息,它就能生成六級濃縮系統,成為 69 種歸因方法中的一種。
最終成果:Rami 手動確認財富 100 強至少 37 家受影響;AI 系統在構建後兩天發現 2,400+ 家公司受影響(相比之前兩週手動工作僅找到 200 家)。這驚人的倍增比例說明了投資與產出的比例。演講最後分享了兩個可重複的技能:歸因技能(從大型數據目錄推斷所有者)和安全聯繫技能(查漏洞賞金計劃、security 郵箱、報告流程),這些都是他人可直接複製運用的工具。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。


