City Forum 是自 2025 年 3 月起持續進行的資料竊取行動,攻擊者利用 Salesforce Experience Cloud 和 ServiceNow 服務入口網站的預設訪客(Guest)存取權限,無需任何軟體漏洞或憑證即可擷取資料。 攻擊者使用自製的 Go 語言工具,首次在實際攻擊中同時鎖定 Salesforce 的 Aura 與 LWR 框架,並濫用 ServiceNow 一個幾乎無文件記錄的搜尋端點(/api/now/sp/search)。
研究答案

Create a landscape editorial hero image for this Studio Global article: What was the "City-Forum" campaign reported by Reco, how did it exploit default guest access in Salesforce and ServiceNow portals over at le. Article summary: Let me read Reco's original blog post and the detailed reporting for complete answersNow let me get the remaining details from a couple more sources to fill in the remediation and audit log gapsNow I have comprehensive i. Topic tags: general, general web. Style: premium digital editorial illustration, source-backed research mood, clean composition, high detail, modern web publication hero. Use reference image context only for broad subject, composition, and topical grounding; do not copy the exact image. Avoid: logos, brand marks, copyrighted characters, real person likenesses, fake screenshots, UI text, readable text, watermarks, charts with fake numbers, clic
安全研究機構 Reco 揭露了一起名為 City-Forum 的持續性資料竊取行動。一個身份不明的攻擊者,至少從 2025 年 3 月起,便利用 Salesforce Experience Cloud 網站與 ServiceNow 服務入口網站中「訪客用戶(Guest User)」的預設權限,在不利用任何軟體漏洞、不竊取憑證、也不繞過身份驗證的情況下,從全球多個組織的系統中靜默提取資料。
這起行動以其攻擊基礎設施所使用的網域 city-forum.com 命名。該攻擊者僅透過一臺位於德國託管商 Contabo 的虛擬私有伺服器(VPS),便系統性地從電信業者、銀行、金融服務公司、企業軟體供應商以及政府入口網站中大量擷取資料。
Salesforce 和 ServiceNow 都內建了無法刪除的「訪客用戶(Guest User)」帳號,專門提供給未經身份驗證的訪客使用。這些訪客用戶的權限由各組織設定。在 Reco 的調查中,所有來自攻擊來源 IP 的請求都是以訪客身份發出的。
針對 Salesforce (Aura 框架):
/aura 或 /s/sfsites/aura 端點發送 POST 請求。HostConfigController.getConfigData 列舉訪客可存取的物件(如 Account、Contact、Case、Lead、User、ContentDocument 等)。SelectableListDataProviderController.getItems 分頁讀取每個可存取物件的所有記錄。針對 Salesforce (LWR 框架 — Lightning Web Runtime):
POST /webruntime/api/services/data/{version}/graphql?asGuest=trueEntityDefinition 列舉 Schema,再使用基於游標的分頁技術讀取記錄。針對 ServiceNow:
/api/now/sp/search 端點。這是一個原生的服務入口網站搜尋 API,幾乎沒有公開的文件,也幾乎沒有開源工具提及它。自我註冊探測 (Salesforce):
/SiteRegister 和 /CommunitiesSelfReg,以測試是否啟用了自我註冊功能。一旦啟用,訪客就能升級為已驗證的外部用戶,從而取得更多資料。158.220.87.79,託管於德國 Contabo 的 VPS,並解析至網域 city-forum.com(該網域註冊於 2002 年,曾遭棄用後被重新利用)。Go-http-client User-Agent 字串,使得在日誌中易於識別。針對 ServiceNow: 該平台的交易日誌 (syslog_transaction) 不會記錄 /api/now/sp/search 請求的 POST 主體。防禦者只能看到發生了自動化搜尋以及回傳了多少資料(透過輸出長度欄位),但無法得知確切的搜尋詞彙或具體哪些記錄被檢索。
針對 Salesforce: 訪客列舉流量是符合協議規範的合法 API 呼叫,看起來與正常的網站流量無異。雖然事件監控可以顯示來自訪客用戶的 AuraRequest 和 Sites 事件數量,但日誌僅顯示資料被請求,卻無法顯示 GraphQL 或 Aura 回應中的特定內容。
簡而言之,你可以看到攻擊者曾經存在並了解其大約的資料提取量,但無法重建他們實際提取了哪些記錄或欄位。
sp_portal、m2m_sp_portal_search_source 和 sp_search_source 資料表。移除公開入口網站不必要的搜尋來源。is_scripted_source、data_fetch_script,以及它使用的是 GlideRecordSecure(執行 ACL)還是普通的 GlideRecord(不執行 ACL)。kb_uc_can_read_mtom 連結,而不是盲目地編輯共享規則。USER_TYPE = 'Guest'getItems 和 getConfigData 事件、對 /webruntime/.../vNN.0/graphql 的版本掃描,以及對 /SiteRegister 和 /CommunitiesSelfReg 的存取。syslog_transaction: 尋找以訪客身份發出的 /api/now/sp/search 請求。可以依輸出長度排序——那些回傳資料量遠大於空結果基準值的請求行,便代表搜尋到內容。Studio Global AI
這個頁面包含附來源佐證的答案,你可以在 Studio Global 內繼續追問。
City Forum 是自 2025 年 3 月起持續進行的資料竊取行動,攻擊者利用 Salesforce Experience Cloud 和 ServiceNow 服務入口網站的預設訪客(Guest)存取權限,無需任何軟體漏洞或憑證即可擷取資料。
City Forum 是自 2025 年 3 月起持續進行的資料竊取行動,攻擊者利用 Salesforce Experience Cloud 和 ServiceNow 服務入口網站的預設訪客(Guest)存取權限,無需任何軟體漏洞或憑證即可擷取資料。 攻擊者使用自製的 Go 語言工具,首次在實際攻擊中同時鎖定 Salesforce 的 Aura 與 LWR 框架,並濫用 ServiceNow 一個幾乎無文件記錄的搜尋端點(/api/now/sp/search)。
攻擊來源 IP 為 158.220.87.79,託管於德國 Contabo 的虛擬私有伺服器(VPS),並與網域 city forum.com 關聯。