KeyFrame內部研究專用

Make Your Own JAILBROKEN DeepSeek That Hacks ANYTHING

DeadOverflow·6月14日週日·8 min中文

三句話摘要

利用 JavaScript 型別混淆漏洞繞過 XSS 過濾,並以 DeepSeek AI 輔助挖掘 Bug Bounty 漏洞。 後端只驗證格式、不驗證型別,是導致 `.includes()` 被陣列繞過的根本原因——永遠先確認輸入是預期的型別,再做內容檢查。 DeepSeek 無內容過濾的實用優勢:講者直接將伺服器源碼貼給 DeepSeek 詢問漏洞,DeepSeek 不需要任何提示詞包裝或藉口,直接回應分析結果,這讓滲透測試工作流程更為直接。

重點整理

重點
  • 1

    DeepSeek 無內容過濾的實用優勢:講者直接將伺服器源碼貼給 DeepSeek 詢問漏洞,DeepSeek 不需要任何提示詞包裝或藉口,直接回應分析結果,這讓滲透測試工作流程更為直接。

  • 2

    `.includes()` 的型別混淆是核心漏洞:JavaScript 的 `.includes()` 方法同時適用於字串與陣列,但行為不同——對字串是子字串比對,對陣列是嚴格元素比對。當 payload 以陣列形式傳入時,`includes('javascript')` 因找不到完全相符的元素而回傳 `false`,成功繞過過濾。

  • 3

    型別信任錯誤是後端驗證的常見盲點:後端假設輸入一定是字串,卻沒有驗證資料型別,導致攻擊者可透過修改 JSON 請求體,將字串換成陣列,使驗證邏輯失效。

  • 4

    DeepSeek 的局限性同樣存在:DeepSeek 初步發現了 `https` 缺少強制驗證及大小寫繞過問題,但在深入分析型別混淆漏洞時出現理解困難,需要講者手動引導才能完成,顯示 AI 工具仍是輔助角色。

實用技巧與重點

乾貨
  • 漏洞類型:型別混淆(Type Confusion)導致的 XSS(跨站腳本攻擊)
  • 目標平台:Node.js 本地聊天網站
  • 使用工具:DeepSeek(源碼漏洞分析)、Burp Suite(HTTP 攔截與修改請求)、FoxyProxy(瀏覽器代理切換)
  • 過濾邏輯(有問題的)
  • 檢查連結是否包含 `https`(`url.includes('https')`)
  • 檢查連結是否包含 `javascript`(`url.includes('javascript')`)
  • Payload 結構:`["javascript:alert(1)//", "https"]`
  • 陣列轉字串後為 `javascript:alert(1)//,https`
  • `includes('https')` → `false`(陣列元素比對,找不到單獨的 `https` 子字串)
  • `includes('javascript')` → `false`(同理,陣列中沒有純 `javascript` 元素)
  • DeepSeek 額外發現:可用 `http` 替代 `https` 繞過;可用大小寫變體 `HTTPS` 繞過
  • Bug Bounty 獎金:$500 美元
  • 挖掘耗時:約 1 小時

結論

結論

後端只驗證格式、不驗證型別,是導致 `.includes()` 被陣列繞過的根本原因——永遠先確認輸入是預期的型別,再做內容檢查。

完整解析

詳細

這支影片的背景是講者對一個真實本地聊天網站的滲透測試。該網站以 Node.js 建置,允許使用者發送可點擊的 HTTP 連結。為了防止 XSS 攻擊,開發者在後端加入了連結驗證邏輯:用 `.includes()` 確認連結包含 `https`,並同時確認連結不包含 `javascript:` 字首。乍看之下這個機制合理,但問題藏在 JavaScript 語言本身的設計細節裡。

講者取得源碼後,將完整伺服器程式碼貼給 DeepSeek 並直接詢問是否有安全漏洞。DeepSeek 迅速回應了幾個問題,包括缺少強制 `https` 驗證(攻擊者可改用 `http`)以及大小寫繞過問題。這些都是有效的發現,甚至連講者自己也承認其中一點是他沒有發現的盲點。不過當講者要求 DeepSeek 深入解釋型別混淆漏洞時,AI 開始出現理解混亂,需要講者主動引導,顯示 DeepSeek 在此類深層邏輯推理上仍有侷限。

核心漏洞在於:JavaScript 的 `.includes()` 方法在字串上執行子字串搜尋,但在陣列上執行的是嚴格的元素相等比對。開發者預設傳入的 `url` 是字串,但透過 Burp Suite 攔截請求並修改 JSON body,可以把字串替換成陣列 `["javascript:alert(1)//", "https"]`。此時 `url.includes('javascript')` 找不到一個完全等於 `'javascript'` 的陣列元素,回傳 `false`,過濾被繞過;`url.includes('https')` 同樣因為陣列元素是完整字串 `"https"` 而非作為子字串的 `https`,也回傳 `false`,第一道檢查反而失敗。當陣列最終被轉成字串送到前端渲染時,結果為 `javascript:alert(1)//,https`,瀏覽器解析為合法的 `javascript:` 連結,點擊後即觸發 XSS。

講者在瀏覽器開發者工具的 Console 中實際示範了 `.includes()` 在字串與陣列上的差異,清楚證明了漏洞的成因,並用 Burp Suite 現場觸發 `alert(1)`。最終此漏洞被提交並獲得 $500 美元的 Bug Bounty 獎金。整個過程不到一小時,充分說明了即使是「簡單」的型別混淆錯誤,也能造成真實的安全風險。

關鍵時刻

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