Grok Build 洩漏 3.5 萬個 App:亂數網址為何擋不住

Claroc 在 2026 年 11 月 10 日公布:grok.me 下 43,601 個 App 位址中,37,571 個仍上線、35,578 個(94.7%)免登入就能開,包含 SpaceXSI 自家 24 個內部 App。根因不是密碼被破解,而是把隨機字串放在子網域:每次開啟都送進 DNS,被動 DNS 資料庫一查就是整份清單。本文整理規模、技術成因、受害資料類型、官方回應與開發者可立即做的六件事。

  • Dennis
  • 7 分鐘閱讀
Grok Build 洩漏 3.5 萬個 App:亂數網址為何擋不住

一句話:Grok Build 的分享連結沒有被破解,是被「查」出來的——隨機 App 名稱放在子網域,等於自動登記到公開的被動 DNS 資料庫,任何人用萬用字元查一次就拿到整份清單。43,601 個位址裡,35,578 個(94.7%)免登入就能開啟,其中 24 個是 SpaceXSI 自己員工做的內部 App。

規模:不是幾十個設定失誤,是預設值

資安研究公司 Claroc 在 2026 年 11 月 10 日公開《GhostShares 2: Grok Apps Exposed》。研究團隊在 11 月 8 日從公開網際網路、未登入任何帳號的狀態,逐一開啟每個 App 的首頁(等同無痕視窗的訪客),結果如下:

項目數字
掃描的 grok.me 位址43,601(Claroc 部落格另記一輪 43,551,兩者都是「四萬多」的量級)
測試期間仍上線37,571
免登入即可開啟35,578(94.7%)
需要登入(回 HTTP 401)1,993
由 SpaceXSI 與 X 員工自建24
可辨識的受害組織30 家(26 家員工超過 1,000 人、6 家 Fortune 500)
判定含私人或內部資料650–800 個(約每 10 個有 1 個敏感,約 2% 達高或重大等級)

絕大多數公開 App 是遊戲、落地頁、計算機這類無害內容,這是可以理解的:Grok Build 的定位就是「用一句話生出小工具」。問題在於那 10%——一旦有人把真實的員工名冊、病患檢驗、報價單丟進去,一個「Anyone with the link」預設值就等於把它貼在牆上。

時間軸也值得記下來:

日期事件
2026-08Grok Build 擴大開放,三個月內累積數萬個上線 App
11-08Claroc 開始掃描,當天依 security.txt 通報首批(含一份到職計畫與廣告提案),並附上四項修法建議
11-09補通報其餘 22 個內部員工 App 的細節
11-10公開報告;Ars Technica 詢問 SpaceXSI 後數小時,24 個員工 App 全部下架,其餘三萬多個使用者 App 未處理

技術根因:把秘密放在網域左邊,DNS 就替你公開

Grok Build 幫每個發佈的 App 配一個獨立主機名稱,格式是四個隨機單詞加網域,例如 cinder-crane-sand-frost.grok.me。設計用意不難懂:四個隨機詞不好猜,只有拿到連結的人進得去。這是所謂 capability-based access control——「持有網址」本身就當授權。

問題是連線的第一步一定得查 DNS。使用者打開 App,瀏覽器先向遞迴解析器問「這個主機的 IP 是多少」;被動 DNS(passive DNS)感測器就架在遞迴解析器與權威伺服器之間,把每一次快取未命中的查詢記錄成「網域 → IP、首次看到、最後看到、次數」的歷史資料。商業情資庫再把這些記錄索引起來,支援 *.grok.me 這種萬用字元查詢。

於是隨機性完全失效:攻擊者不需要猜,資料庫已經幫他列好。Claroc 就是這樣拿到四萬多個位址的。

關鍵的對照是「隨機字串放在哪一層」:

做法範例形式DNS 查詢看得到隨機碼嗎
子網域(Grok Build)cinder-crane-sand-frost.grok.me看得到,整串進入 pDNS 歷史紀錄
路徑(Google Docs)docs.google.com/document/d/1BxiMVs0…看不到,隨機碼藏在 HTTPS 路徑內
路徑(Claude Artifacts)claude.ai/public/artifacts/…看不到
路徑(ChatGPT 分享)chatgpt.com/share/…看不到

差別在於:DNS 只處理主機名稱,路徑要在 TLS 連線建立之後才會送出,而那段是密文。同一個「長亂碼 + 只有拿到連結的人知道」的設計,放在路徑上仍然成立;放在子網域上則等於向全世界登記。這不是 Grok 獨有的失誤——Claroc 指出 Lovable、Bolt、Replit 也為每個 App 配獨立主機名稱,同樣的列舉手法可以套用;Meta 的 Muse 在 2026 年 10 月就以同樣方式被掃出 6,800 多個分享(Claroc 稱之為 GhostShares 1),事後 Meta 暫停了分享功能。

到底開了什麼:從病患檢驗到明文密碼

Claroc 沒有公布主機名稱與連結,只描述類別與數字,並自行通知受害組織。已知的案例包括:

受害類型內容規模數字
SpaceXSI 自家企業銷售到職計畫(標註機密,含內部系統位址、19 個內部頻道)、594 個策略客戶的業務區域地圖、8 份 X 廣告提案(一份給美國聯邦機構)、4 個廣告主即時看板24 個 App,僅 1 個設了密碼
醫療秘魯建設公司的職業健康儀表板3,784 份員工健檢紀錄
醫療醫院集團員工名冊約 3,500+ 人姓名與員工編號
醫療加護病房簡報1 名病患的檢驗值、影像、呼吸器狀態
員工資料Tesla 服務中心計分卡(含獎金狀態)22 名技師
員工資料美國海軍物流包商的合約人力名單108 人
員工資料豪華郵輪廚房檢查表、消防局值班板姓名、員工編號、警徽號碼
憑證外包商工時表 App:瀏覽器下載的程式碼內含明文密碼18 組帳號,含管理員
商業汽車運輸報價台約 4,000 筆訂單與利潤率
商業建商銷售拜訪表、國防集團炸藥廠裝載調度板583 名潛在客戶、載重程序

那份工時表是最能說明風險的一筆:資料不是存在伺服器後端,而是寫在前端程式碼裡,任何訪客的瀏覽器都會下載到——包含管理員的明碼密碼。這種「AI 幫你寫的內部小工具」特別容易產出前端直連資料庫、沒有登入層的架構。

第二個問題:AI 寫的登入邏輯,順序是反的

Claroc 另外做了兩個受控測試 App,第二個測試暴露更嚴重的問題。那份「四人業務團隊客戶名單」App,Grok 主動加上了 Google 與 X 登入按鈕,看起來很正確,但程式碼的順序是:

  1. 訪客完成 Google 登入
  2. 先把登入者加入團隊成員
  3. 才檢查「這個人是不是團隊成員」

第 3 步的檢查因此永遠通過。任何一個拿得到連結、有 Google 帳號的陌生人,都能讀取、修改、刪除整份客戶資料。Claroc 表示只在自家測試 App 上做過寫入與刪除測試。

這是「AI 生成的授權邏輯」比「AI 生成的排版」危險一整個量級的例證:畫面看起來對、按鈕也在,但檢查點的順序決定了它是不是後門。

官方怎麼說,研究方怎麼回

SpaceXSI 對記者的說法是:App 在建立者選擇分享前都是私密的,發佈需要多個步驟並附法律聲明,員工帳號預設為「Only you」。被 SpaceXSI 收購的 Cursor 代表也向 Ars Technica 表示「App 預設私密,除非建立者選擇分享,否則不會公開」,但未回覆後續追問。

Claroc 的反駁建立在實測上:在它使用的付費帳號中,按下發佈後跳出的存取面板,預設已勾選「Anyone with the link」,另兩個選項是「Invited users」與「Only you」。若需要「多步驟」才發佈,那麼這三萬多個公開 App 的建立者全都走過同樣的步驟——多點幾下滑鼠不會改變最後一格被預設成什麼。至於「員工帳號預設 Only you」,自家 24 個內部 App 就是反證。

另一個對照:ChatGPT 新建 App 分享時預設是「Only me」,位址同樣會進 DNS,但點進去只有本人能開。同一個技術條件,預設值不同,後果就不同。

開發者與企業現在該做的事

這起事件與其說是 Grok 的問題,不如說是一個可以套用到所有「一句話生 App」平台的操作清單:

  1. 清查影子 IT:問一輪團隊用過哪些 AI App 產生器(Grok Build、Lovable、Bolt、Replit 等),這些工具不需要 IT 核准就能上線。
  2. 用外部帳號實測存取:開無痕視窗、不登入,直接開連結。開得起來就是公開。
  3. 把「private」當成部分修補:切到 invited users 只解決人的部分,主機名稱早已在 pDNS 歷史裡;真要下線就得 unpublish(Grok 的下架在數秒內生效)。
  4. 搜前端原始碼找機密:AI 生成的小工具常把 API key、資料庫字串、帳密寫進前端程式碼,搜 password、secret、apikey 一分鐘就有答案。
  5. 上傳前先分類資料:員工名冊、病患資料、未公開財報、客戶 PII 一律不進這類工具,測試用合成資料。
  6. 憑證視同外洩:只要曾在這類 App 裡出現過的密碼與金鑰,直接輪換,不要評估「應該沒人看到」。
  7. 平台端的三個修法(Claroc 給 SpaceXSI 的建議,也適用自建同類服務):把 App 放到單一主機下的長路徑、預設改為「Only you」並在發佈前明示誰能開、偵測到「有資料庫但沒有登入」時主動警告。

對企業資安團隊還有一招:把 grok.me、lovable.app 這類網域加進 egress 日誌與被動 DNS 情資的監控清單,定期查自家公司名稱是否出現在公開 App 的標題或內容裡。

這不是 Grok 第一次

同一家公司在 2025 年 8 月被找到 37 萬則分享出去的 Grok 對話出現在 Google 搜尋結果;2026 年 7 月,Grok Build 的命令列工具被發現會把使用者的整個專案(含 Git 歷史與已提交的密鑰)上傳到公司雲端。加上這次,模式已經很清楚:功能跑得比存取控制快。

真正該記住的不是「Grok 又出事」,而是那個 94.7%。當一個平台的預設值讓「公開」變成不作為的結果,使用者要做的不是更小心地按下一步,而是假設自己按下的每一格都是公開的。

站內延伸閱讀

(本文含聯盟連結揭露:無。文中提及之研究與官方說法均依 2026-11-10 至 11-11 的公開資料整理,數字以 Claroc 報告與 Ars Technica 報導為準。)

📬 訂閱 most.tw 電子報

每週精選 AI 工具教學與技術乾貨,直接送到你的信箱。免費、隨時可退訂。

訂閱即表示同意收到 most.tw 電子報,隨時可一鍵退訂。

💬 有問題想討論?加 LINE 聯絡我

歡迎透過 LINE 官方帳號直接留言,我會盡快回覆你的問題。

加入 LINE 好友