An unauthenticated remote attacker who can place a SOAP header lexically before wsse:Security can embed a ds:Signature of their choosing inside that header and cause the server to verify the attacker-supplied signature instead of the one carried in the security header.
Exploitation requires the endpoint be configured with an endorsing supporting token binding, and the attacker constructs a ds:Signature whose KeyInfo resolves through the receive-side token resolver to a key under the attacker’s control. Both are conditions outside the attacker’s direct control on a generic deployment.
Fixed in CoreWCF v1.8.1 and v1.9.1
Use a security token resolver that only accepts references to issuer-pinned X.509 chains (the default when expecting a static set of signing certificates).
{
"github_reviewed": true,
"github_reviewed_at": "2026-06-19T20:46:43Z",
"nvd_published_at": null,
"severity": "MODERATE",
"cwe_ids": [
"CWE-347"
]
}