根據資安平台 Reco 本週發布的研究,自一年多前以來,單一基礎設施一直在跨越多個產業,從 Salesforce 和 ServiceNow 客戶入口網站提取記錄。
Reco 將此活動命名為「City Forum」攻擊活動,其名稱源自與攻擊者 IP 位址相關聯的網域,可追溯至單一伺服器:158.220.87.79,由德國供應商 Contabo 透過通用 VPS 主機託管。該伺服器發出的所有請求都帶有相同的指紋,即 Go 的 net/http 函式庫的預設使用者代理(user agent),這讓研究人員得知其背後工具是一個編譯好的、專門建置的程式,而非透過瀏覽器運行。被動 DNS 顯示,相同的網域最早可追溯至 2025 年 3 月指向該 IP,且伺服器自此未曾移動。迄今為止已識別的目標涵蓋電信、銀行及其他金融服務公司、包括資安和數據隱私公司在內的企業軟體供應商,以及公部門入口網站,儘管 Reco 並未點名個別組織。
此攻擊活動與先前對 Salesforce 訪客存取(guest access)的濫用行為(包括 ShinyHunters 所為的廣泛報導)不同之處在於其觸及的層面廣泛。此領域大多數已知攻擊者依賴 Salesforce 較舊的 Aura 框架,發送大量訪客請求來枚舉物件和瀏覽記錄。該攻擊者也這麼做,且 Aura 仍佔 Reco 觀察到的流量的大部分,其中一個目標記錄了來自同一 IP 的超過 560,000 個事件。但該工具也透過 UI-API 觸及 Salesforce 較新的 Lightning Web Runtime 網站,這是一個沒有公開說明或已知掃描工具相關聯的數據層,依序瀏覽了 v56.0 至 v66.0 的 API 版本。除此之外,同一伺服器還會攻擊原生的 ServiceNow Service Portal 搜尋端點 POST /api/now/sp/search,該端點幾乎沒有自身的公開文件。
根據 Reco 的報告,每種技術的共同點是相同的根本問題:訪客身份(guest identity)被授予了比網站實際服務公眾所需的更多存取權限。Salesforce Experience Cloud 網站和 ServiceNow 入口網站都維護著一個持續存在的訪客使用者,未驗證的訪客以此身份執行,而該使用者無法被刪除,只能被限制。如果訪客設定檔可以讀取記錄,那麼該記錄實際上就是公開的,無論網站是否需要登入才能在瀏覽器中查看。
該研究為兩個平台上的資安和 IT 團隊提供了具體的偵測步驟。在 Salesforce 上,擁有 Event Monitoring 或 Shield 的防禦者可以提取 AuraRequest 和 Sites 日誌事件,尋找 Go-http-client 使用者代理、特定 IP,以及包含 /webruntime/api/services/data 的請求路徑,同時監控 /SiteRegister 和 /CommunitiesSelfReg 的自我註冊嘗試激增情況。在 ServiceNow 上,交易日誌表 syslog_transaction 可以按來源 IP 和以 /api/now/sp/search 開頭的 URL 進行篩選,將訪客建立的記錄和異常的輸出長度標記為活動掃描的最明顯信號。
根據研究,補救措施集中於收緊訪客設定檔,而非端點本身,因為 UI-API 和 ServiceNow 搜尋端點都在按設計工作。在 Salesforce 上,這意味著審查訪客共用規則,從訪客設定檔中移除不必要的物件和欄位級存取權限,在不需要時禁用自我註冊,並關閉允許訪客使用者存取公開 API 的 Experience Builder 設定。在 ServiceNow 上,解決方案是映射哪些搜尋來源暴露給面向公眾的入口網站,並審核決定匿名搜尋實際返回內容的知識庫(Knowledge Base)讀取標準。
Reco 表示,該攻擊活動背後的基礎設施仍然活躍,且攻擊量正在攀升,該公司尚未將此活動歸因於特定已命名的群組。
Reco 的 City Forum 攻擊活動報告中,提供了完整的技術細節,包括請求簽名、範例查詢,以及對 Service Portal 搜尋端點如何決定向匿名呼叫者返回內容的更深入分析。