VDB
Sign up
MEDIUM5.9

GHSA-jc6x-rj79-w4mx

CoreWCF: WS-Security signature substitution via document-wide Signature lookup

Quick fix

GHSA-jc6x-rj79-w4mx — CoreWCF.Primitives: upgrade to the fixed version with the command below.

dotnet add package CoreWCF.Primitives --version 1.8.1

Details

### Impact 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.

#### Preconditions 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.

### Patches Fixed in CoreWCF v1.8.1 and v1.9.1

### Workarounds 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).

Are you affected?

Enter the version of the package you're using.

Affected packages

NuGet/CoreWCF.Primitives
Introduced in: 0Fixed in: 1.8.1
Fixdotnet add package CoreWCF.Primitives --version 1.8.1
NuGet/CoreWCF.Primitives
Introduced in: 1.9.0Fixed in: 1.9.1
Fixdotnet add package CoreWCF.Primitives --version 1.9.1

References