重點摘要
- 一個 Oracle PeopleSoft PeopleTools 中的預先認證遠端程式碼執行 (RCE) 漏洞攻擊鏈,會在 PSIGW 閘道上利用伺服器端請求偽造 (SSRF) 手法來連上一個僅限內部存取的管理工具 (management servlet),接著再透過 Java XMLDecoder 反序列化來執行程式碼。Oracle 已將該漏洞列為 CVE-2026-35273 (CVSS 9.8) 並於 2026 年 6 月 10 日釋出一份非週期性修補更新。
- 此漏洞攻擊鏈影響了 PeopleTools 8.61 和 8.62 兩個版本 (包括所有在前述非週期性安全公告之前已完成修補的安裝環境在內),因為 Oracle 之前的序列化過濾器強化並未涵蓋到這個 XMLDecoder 程式碼路徑。
- 此漏洞攻擊鏈的行為會默默執行:其最後步驟是在 Web 層 (web-tier) 重新啟動時於 WebLogic JVM 內部執行,不會產生子處理程序,也不需要對外發送信標 (beacon)。在一般情況下,那些偵測「Java 產生指令列介面」或網路流量漏洞攻擊特徵的偵測邏輯,無法偵測到任何東西。
- TrendAI™ 的防護可從網路和端點層次解決這項威脅,包括 TrendAI™ Deep Discovery 規則、TrendAI™ TippingPoint、TrendAI Vision One™ Server and Workload Protection (SWP) 以及 TrendAI™ Deep Security 過濾條件。如需更多指引,請參閱本文最後的「建議」一節。
企業資源規劃 (ERP) 系統經常會經手一些企業最敏感的資料,而且還會與內部基礎架構深度連結。當全球最普遍採用的 ERP 平台出現預先認證遠端程式碼執行 (RCE) 攻擊鏈、而且網路上已經出現攻擊案例時,企業應密切注意。TrendAI™ Research 將藉由本文,從技術面詳細分析 Oracle PeopleSoft PeopleTools 當中一個活躍中的預先認證漏洞攻擊鏈。PeopleSoft PeopleTools 是一個用來開發和維護 PeopleSoft 應用程式的開發平台,根據 Oracle 的公告,此次漏洞影響的是 PeopleSoft PeopleTools 8.61 和 8.62 兩個版本。
2026 年 6 月 10 日,Oracle 發布了一份針對 CVE-2026-35273 漏洞的非週期性安全公告,這是存在於 PeopleSoft Enterprise PeopleTools Updates Environment Management (更新環境管理) 元件中一個重大的無認證遠端程式碼執行漏洞 (CVSS 9.8)。該漏洞是經由 TrendAI™ Zero Day Initiative™ (ZDI) 漏洞懸賞計畫通報給 Oracle。隔天,Mandiant 發布了一份報告將網路上出現的某個漏洞攻擊案例追溯至 SHADOW-AETHER-015 (ShinyHunters) 駭客集團,該報告描述了一起發生在 2026 年 5 月 27 日至 6 月 9 日之間的攻擊行動,也就是廠商公告發布的兩週前,共有 100 多家企業機構遭到攻擊,主要集中在高等教育機構。
企業應用程式出現預先認證 RCE 漏洞固然嚴重,但卻早已不是新聞。本次漏洞值得注意的地方不是它的衝擊,而是它幾乎無法觀察到。其最後的程式碼執行步驟是經由應用程式伺服器本身的 Java 虛擬機器 (JVM) 中的 Java XMLDecoder 來執行,並且在重新啟動時 (而非收到請求時) 執行,而且還不會產生子處理程序,更不需要對外發送信標就能成功。因此,那些監控一般徵兆的防禦系統,根本不會看到系統出現任何徵兆。
我們的研究人員在發現一些有關此漏洞的最新資訊時便一邊調查一邊負責任地揭露給 Oracle。本文將拆解此攻擊鏈的每一步驟,說明其躲避防禦的單一機制,並提供具體的防禦指引。此外,TrendAI™ 也發布了資安警報 KA-0023679 號來提供漏洞的大致說明與初步的偵測指引。
PSIGW 和 PSEMHUB 到底是什麼
Oracle PeopleSoft 專門讓大型企業、政府機關及大專院校用來執行一些人力資源、財務及校園管理工作,本次事件牽涉到的 PeopleSoft 元件有兩個:
- Integration Broker (整合代理):這是 PeopleSoft 的訊息傳遞層,也就是讓 PeopleSoft 和其他系統交換資料的單元。它對外提供了一個通訊閘道:PeopleSoft Integration Gateway (整合閘道,簡稱 PSIGW),此閘道會對外提供一個無須認證的監聽連接器:/PSIGW/HttpListeningConnector。這個連接器的工作是接收需要內送的整合訊息。
- PeopleSoft Environment Management Hub (環境管理中心,簡稱 PSEMHUB):這是一個獨立、僅供內部存取的 servlet (伺服器小程式),用來管理 PeopleSoft 環境。理論上它不應該收到來自非信任網路的連線,要存取它必須先通過一個名為「validateClient 」的允許名單 IP 檢查,唯有受信任的主機才能與這個管理中心通訊。
本次的漏洞就出現在這兩個元件之間:一個是對外公開的閘道 (負責老老實實地轉發網路請求),另一個是內部 servlet (只信任來自本機主機的請求)。然而,只要有辦法跨越兩者之間的鴻溝,外部的駭客就能立即跟企業內部的管理端點溝通。
方法
此攻擊鏈大致可拆成六個步驟,以下說明 TrendAI ZDI 經由重現漏洞攻擊手法、並執行資安事故分析之後所得到的技術細節。
步驟 1 - 閘道上的預先認證伺服器端請求偽造 (SSRF)
駭客會發送無認證的 POST 請求到 Integration Broker 的監聽連接器:
POST /PSIGW/HttpListeningConnector
該請求的內文 (body) 是一個 PeopleSoft IBRequest XML 訊息,其 ConnectorParam 含有一個指向伺服器本身的網址,例如:http(s)://localhost/PSEMHUB/hub。
步驟 2 - 避開 validateClient 用戶端驗證
由於請求是由閘道「自己」所發送,因此這個發到 /PSEMHUB/hub 的對內呼叫看起來就好像來自本機主機 (localhost)。這樣就能通過 validateClient 用來限制只有受信任主機能連上管理中心的 IP 允許名單檢查。這是一個教科書等級的伺服器端請求偽造 (SSRF) 案例:駭客借用了伺服器本身的身分來連上他們無法直接觸及的端點,如此一來就能跟 PSEMHUB 管理中心 servlet 進行預先認證的通訊。
步驟 3 - 暫存於磁碟上
駭客透過管理中心將駭客想要的內容寫入交易暫存目錄「envmetadata/transactions/」。
步驟 4 - 植入一個 XML 物件來常駐
一個特製的 XML 惡意檔案會被寫入「envmetadata/data/environment/」目錄底下,此時還沒有執行任何程式碼,惡意檔案只是蟄伏在磁碟上等待時機。
步驟 5 - 經由反序列化執行程式碼
當下次 Web 層重新啟動時,PSEMHUB 的 XMLDecoder 就會將被植入的 XML 物件反序列化,然後將駭客選擇的物件實例化 (instantiate)。如此便可產生遠端程式碼執行漏洞 Web 層服務帳號:在 Windows 上是「SYSTEM」帳號,在類 Unix 主機上則是「psadm2」帳號。這就是先前的修補更新沒有涵蓋到的步驟:Oracle 先前做的序列化過濾器強化並未涵蓋到 XMLDecoder 這條執行路徑,這就是為何就算已經套用了 Oracle 之前的所有修補更新,還是會受到這次的漏洞影響,所以還是要再套用這次的修補更新。
步驟 6 - 漏洞攻擊後續選項
當程式碼開始執行之後,駭客就能決定接下來的步驟,我們在分析過程中看到有兩種選擇:
- 網站指令列介面 (webshell):將一個 JSP webshell 植入 PSEMHUB.war docroot 當中來提供持續的存取。
- 強迫竊取登入憑證:強迫伺服器發起 SMB/445 對外連線來擷取或轉發機器帳號的 NetNTLM 登入憑證。
使攻擊鏈不容易被看到的背後機制
對資安人員來說,最重要的細節在步驟 5 當中:也就是透過重新啟動來觸發執行,而且是在處理程序內部執行。
駭客故意在常駐 (步驟 3–4) 與執行 (步驟 5) 兩個步驟之間製造時間差。所以程式碼最終執行的動作是發生在 WebLogic JVM 內部。XMLDecoder 反序列化與 JSP webshell 在執行時,並不會產生子處理程序相關的監測資料,除非 webshell 另外執行某個作業系統指令。因此,最終在 JVM 內執行程式碼的漏洞攻擊手法,不會產生任何行為偵測機制可發現的「父/子處理程序」異常狀況,而且伺服器端請求偽造 (SSRF) 的目標位址是本機主機 (localhost),因此完全不會經過網路感應器。
這套機制打從一開始就不會留下太多痕跡,JVM 內的反序列化與啟動 webshell 不會產生可偵測的檔案或處理程序 (除非執行作業系統指令),而回送 (loopback) 的 SSRF 也不會在網路上製造任何流量。傳統的偵測機制通常是監視網路上是否出現漏洞攻擊的流量特徵或「Java 產生指令列介面」這類異常狀況,因此在一般情況下完全不會被觸發,這就是為何我們必須改追蹤常駐路徑以及重新啟動的動作。
有兩種無害的流量模式表面上看起來很像攻擊鏈,因此必須先排出之後才能判斷是否遭遇到「漏洞攻擊」:
- Integration Broker 的橫向流量被標記為某個不相干的流量特徵:PeopleSoft 自己內部的 Integration Broker SOAP/XML 流量可能觸發針對其他產品所撰寫的網路流量特徵,例如 Django 漏洞攻擊特徵就可能因為 PSIGW 的正常流量而觸發。因此,在向上呈報任何 PSIGW 偵測事件之前,請先確認流量確實來自外部,Integration Broker 對內的通訊正常來說都是橫向流量,而非漏洞攻擊。
- 正常的「envmetadata/」寫入動作。PeopleSoft Change Assistant 和 Veritas NetBackup 都會在正常運作時寫入該路徑。任何偵測常駐動作的規則,如果未將這些情況加入允許名單,就有可能被誤判所淹沒。
MITRE ATT&CK 技巧
| 手法 | 技巧 | 編號 | 本案例出現的情況 |
| 突破防線 | 經由漏洞攻擊企業對外的應用程式 | T1190 | 無認證的伺服器端請求偽造 (SSRF):POST /PSIGW/HttpListeningConnector,接著進入 PSEMHUB 管理中心內部,並經由 XMLDecoder 執行程式碼。 |
| 常駐 | 伺服器軟體元件:webshell | T1505.003 | 選擇性的 JSP webshell 被植入 PSEMHUB.war docroot。 |
| 存取登入憑證 | 強迫認證 | T1187 | 選擇性強迫發起 SMB/445 對外連線來擷取或轉發 NetNTLM 登入憑證。 |
建議
Oracle 已在 2026 年 6 月 10 日釋出了一個非週期性修補更新,請立即套用到所有的 PeopleTools 8.61 和 8.62 安裝環境。有鑑於目前觀察到的漏洞攻擊案例最早出現在 2026 年 5 月 27 日,因此即使在套用修補更新之後,您還是應該調查一下自己是否有遭到入侵的跡象。除了修補之外,還可藉由以下措施來降低曝險並提高偵測能力,實現縱深防禦:
- 移除非信任網路上的監聽連接器。確保 /PSIGW/HttpListeningConnector 無法從網際網路連線,並且將 Integration Broker 閘道放在網路控管措施後面,以限制誰可以連線。
- 破壞 SSRF 跳板。將閘道與環境管理 servlet 隔離,讓閘道發出來的回送請求 (loopback request) 無法連上 PSEMHUB 管理中心,並且確認自行產生的流量無法通過 validateClient 的驗證要求。
- 監控常駐路徑。監控「envmetadata/transactions/」和「envmetadata/data/environment/」目錄是否有非預期的寫入,並將 PeopleSoft Change Assistant 和 Veritas NetBackup 列入允許名單,以免正常的作業掩蓋了異常的訊號。
- 將 Web 層重新啟動視為資安相關事件。使用代理程式 (agent) 來觀察 JVM 類別的載入時機,並且在 XMLDecoder 於 PSEMHUB 情境中實例化 (instantiate) 時發出警報,因為重新啟動的當下就是蟄伏的常駐程式碼被喚醒來執行的時機。
- 尋找選擇性的檔案。看看 PSEMHUB.war docroot 當中是否有新的 JSP 檔案,並且禁止從 Web 層主機發起 SMB/445 對外連線,藉此破壞選擇性的登入憑證強迫竊取步驟。
針對不同的角色的指引:
- 針對資安人員:假使您的行為與網路感測器無法在 JVM 內部的攻擊得逞時發出警報,您可轉而監控常駐路徑,並追蹤前述的重新啟動行為,千萬不要因為 SIEM 靜悄悄的就以為您並未受到影響。
- 針對決策者:將這次的修補更新視為高優先次序的緊急修補,即使在套用修補更新之後,您還是應該調查一下先前是否有遭到入侵的跡象。另外再問一個曝險相關的問題:「我們的 PSIGW 閘道是否可以從非信任的網路存取?」 優先檢查是否有任何暴露在網際網路上的 PeopleSoft 系統。
- 針對事故應變人員:在第一時間保存「envmetadata/」的內容與 Web 層重新啟動記錄檔。由於其常駐與執行之間的時間差,這意味著被植入的 XML 物件會一直處於蟄伏狀態,直到重新啟動將它喚醒,因此磁碟和重新啟動時機會比處理程序樹更有證據價值。
結論
此漏洞及其攻擊鏈都已被完整公開,並呈現出一種發人深省的攻擊模式:一個重大的預先認證遠端程式碼執行 (RCE) 漏洞攻擊鏈可以在幾乎不產生監測資料的情況下從頭到尾執行完畢,因為其最後的步驟是在應用程式自己的 JVM 內執行,而且是在重新啟動而非收到請求時執行。系統靜悄悄地不代表它就安全,可預期地,能在處理程序內執行、並且在重新啟動時才觸發的攻擊鏈,肯定是靜悄悄的。
可觀察性缺口,是我們必須謹記在心的一課。雖然此漏洞目前已經修補,然而像這樣利用對外連網閘道將請求轉發至內部 servlet、並且延遲到 JVM 內部重新啟動時再執行的模式,未來還會出現在其他企業應用程式上。資安人員若能針對常駐路徑和重新啟動行為來加以偵測,而非等待處理程序樹發生異常或網路流量出現漏洞攻擊特徵,那將更有機會在第一時間攔截。
TrendAI™ 解決方案
TrendAI Vision One™ 客戶可以藉由網路與端點防護來防範這項威脅。以下規則與過濾條件可解決此攻擊鏈:
TrendAI™ Deep Discovery™
- Rule 5855, "PeopleSoft PeopleTools Environment Management Hub (PSEMHUB) SSRF Exploit — HTTP (Request)."
- Rule 5863, "Oracle PeopleSoft HubMBeanPersistance Deserialization of Untrusted Data RCE Exploit — HTTP (Request)."
TrendAI™ TippingPoint™
- Filter 47502, "CVE-2026-35273: HTTP: Oracle PeopleSoft Server-Side Request Forgery Vulnerability."
- Filter 47529, "ZDI-CAN-31817: Zero Day Initiative Vulnerability (Oracle PeopleSoft)."
- Filter 47545, "ZDI-CAN-31818: Zero Day Initiative Vulnerability (Oracle PeopleSoft)."
TrendAI™ Deep Security™、TrendAI Vision One™ Server and Workload Protection (SWP) 以及 TrendAI Vision One™ Endpoint Security IPS
- Filter 1012580, "Oracle PeopleSoft PeopleTools SSRF Vulnerability (CVE-2026-35273)."
- Filter 1012585, "Oracle PeopleSoft Untrusted Data Deserialization Vulnerability (ZDI-CAN-31817)."
TrendAI Vision One™ Threat Intelligence Hub
TrendAI Vision One™ Threat Intelligence Hub 威脅情報中心提供了有關新興威脅與駭客集團的最新洞見、TrendAI™ Research 的獨家策略性報告,以及 TrendAI Vision One™ 平台的 TrendAI Vision One™ Threat Intelligence Feed 威脅情報來源。
新興威脅:CVE-2026-35273:PeopleSoft PeopleTools (PSEMHUB) 中的預先認證遠端程式碼執行漏洞
駭客集團:SHADOW-AETHER-015
TrendAI Vision One™ Intelligence Reports (IoC 掃描)
CVE-2026-35273:PeopleSoft PeopleTools (PSEMHUB) 中的預先認證遠端程式碼執行漏洞
TrendAI Vision One™ 客戶可利用 TrendAI Vision One™ XDR Data Explorer 應用程式來搜尋此攻擊鏈的足跡。由於 SSRF 的內文 (IBRequest ConnectorParam 網址) 會在網路感測器層次受到檢查,因此最好使用專門的網路特徵來執行深度的請求內文比對。Search 應用程式可追蹤其相關的 metadata:請求路徑、磁碟上的檔案,以及對外的 SMB 連線。以下查詢可作為您搜尋的起點,不同的資料來源和感測器可用的欄位會有所不同,因此在執行查詢之前,請先核對欄位名稱是否符合您的資料架構。
內送的 SSRF 流量與直接存取管理中心的情況 (網路活動資料):
request:"/PSIGW/HttpListeningConnector" AND (request:"PSEMHUB/hub" OR request:"localhost" OR request:"127.0.0.1")
request:"/PSEMHUB/hub"
磁碟暫存與 XMLDecoder 常駐 (端點活動資料),並且要排除兩個已知良性的寫入來源:
(objectFilePath:"envmetadata/transactions" OR objectFilePath:"envmetadata/data/environment")
AND NOT (processFilePath:"ChangeAssistant" OR processFilePath:"NetBackup" OR processFilePath:"bpbkar" OR processName:"psae")
選擇性的 JSP webshell 出現在 PSEMHUB 網站應用程式 (端點活動資料):
objectFilePath:"PSEMHUB.war" AND objectFilePath:".jsp"
搜尋特徵 (用於偵測 — 非駭客擁有的指標)
| 特徵 | 位置 | 備註 |
| POST /PSIGW/HttpListeningConnector | 網站/代理器記錄檔、IPS | SSRF 入侵點。 |
| IBRequest ConnectorParam URL=http(s)://localhost/PSEMHUB/hub | 請求內文 (body) | 利用回送 (loopback) 流量來繞過 validateClient 用戶端驗證。 |
| 寫入「envmetadata/transactions/」目錄 | 檔案系統/EDR | 暫存 — 將 Change Assistant 和 Veritas NetBackup 列入允許名單。 |
| 在「envmetadata/data/environment/」目錄下寫入 XML 檔案 | 檔案系統/EDR | XMLDecoder 常駐 — 同樣的允許名單。 |
| 在 PSEMHUB.war docroot 下產生新的 JSP 檔案 | 檔案系統/EDR | 選擇性的 webshell。 |
| 從 Web 層主機發起 SMB/445 對外連線至某個外部 IP | 網路 | 選擇性強迫擷取 NetNTLM 登入憑證。 |