{"id":"CVE-2026-54773","aliases":["EUVD-2026-42464","GHSA-jc6x-rj79-w4mx"],"status":"published","title":"CoreWCF: WS-Security signature substitution via document-wide Signature lookup","description":"CoreWCF is a port of the service side of Windows Communication Foundation (WCF) to .NET Core. Prior to 1.8.1 and 1.9.1, CoreWCF WS-Security signature verification performs a document-wide ds:Signature lookup, allowing an unauthenticated remote attacker to place a SOAP header before wsse:Security and cause WSSecurityOneDotZeroReceiveSecurityHeader to verify an attacker-supplied signature instead of the security header signature. This issue is fixed in versions 1.8.1 and 1.9.1.","severity":{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.0037,"percentile":0.3126,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-347"],"published":"2026-06-19T20:46:43Z","modified":"2026-10-28T02:30:51Z","fixes":[{"ecosystem":"NuGet","package":"CoreWCF.Primitives","fixed_in":["1.8.1","1.9.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"NuGet","package":"CoreWCF.Primitives","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.8.1"}]}]},{"source":"ghsa","ecosystem":"NuGet","package":"CoreWCF.Primitives","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.9.0"},{"fixed":"1.9.1"}]}]},{"source":"osv","ecosystem":"NuGet","package":"CoreWCF.Primitives","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.8.1"}]}],"versions":["0.1.0","0.1.0-preview","0.1.0-preview-2","0.2.0","0.2.1","0.3.0","0.3.1","0.3.2","0.4.0","1.0.0","1.0.0-preview1","1.0.0-preview2","1.0.1","1.0.2","1.1.0","1.1.1","1.2.0","1.2.1","1.3.0","1.3.1","1.3.2","1.4.0","1.4.0-preview1","1.4.1","1.4.2","1.5.0","1.5.0-preview1","1.5.1","1.5.2","1.6.0","1.7.0","1.8.0"]},{"source":"osv","ecosystem":"NuGet","package":"CoreWCF.Primitives","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.9.0"},{"fixed":"1.9.1"}]}],"versions":["1.9.0"]}],"products":[{"vendor":"corewcf","product":"corewcf"}],"references":[{"url":"https://github.com/CoreWCF/CoreWCF/security/advisories/GHSA-jc6x-rj79-w4mx","tags":["x_refsource_CONFIRM","advisory","web"]},{"url":"https://github.com/CoreWCF/CoreWCF/commit/0589692d4b9a41d21b34ac48281e95f6df7f4ce5","tags":["x_refsource_MISC","fix"]},{"url":"https://github.com/CoreWCF/CoreWCF/commit/30aef805270976c42477e3f2a05f4e563d86e247","tags":["x_refsource_MISC","fix"]},{"url":"https://github.com/CoreWCF/CoreWCF/commit/4618f24165ad018ad3ed2636bf8c3bc87d2a3be2","tags":["x_refsource_MISC","fix"]},{"url":"https://github.com/CoreWCF/CoreWCF/releases/tag/v1.8.1","tags":["x_refsource_MISC","web"]},{"url":"https://github.com/CoreWCF/CoreWCF/releases/tag/v1.9.1","tags":["x_refsource_MISC","web"]},{"url":"https://github.com/advisories/GHSA-jc6x-rj79-w4mx"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54773.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54773","tags":["advisory"]},{"url":"https://github.com/CoreWCF/CoreWCF","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-54773","title":"CoreWCF: WS-Security signature substitution via document-wide Signature lookup","description":"CoreWCF is a port of the service side of Windows Communication Foundation (WCF) to .NET Core. Prior to 1.8.1 and 1.9.1, CoreWCF WS-Security signature verification performs a document-wide ds:Signature lookup, allowing an unauthenticated remote attacker to place a SOAP header before wsse:Security and cause WSSecurityOneDotZeroReceiveSecurityHeader to verify an attacker-supplied signature instead of the security header signature. This issue is fixed in versions 1.8.1 and 1.9.1.","status":"published","published":"2026-07-08T22:09:32.584Z","modified":"2026-07-10T14:05:22.358Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T13:38:09.774038Z"}],"euvd":[{"id":"EUVD-2026-42464","description":"CoreWCF is a port of the service side of Windows Communication Foundation (WCF) to .NET Core. Prior to 1.8.1 and 1.9.1, CoreWCF WS-Security signature verification performs a document-wide ds:Signature lookup, allowing an unauthenticated remote attacker to place a SOAP header before wsse:Security and cause WSSecurityOneDotZeroReceiveSecurityHeader to verify an attacker-supplied signature instead of the security header signature. This issue is fixed in versions 1.8.1 and 1.9.1.","status":"published","published":"2026-07-08T22:09:32Z","modified":"2026-07-10T14:05:22Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"updated_at":"2026-11-02T18:20:03.345658Z"}],"ghsa":[{"id":"GHSA-jc6x-rj79-w4mx","title":"CoreWCF: WS-Security signature substitution via document-wide Signature lookup","description":"### Impact\nAn 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.\n\n#### Preconditions\nExploitation 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.\n\n### Patches\nFixed in CoreWCF v1.8.1 and v1.9.1\n\n### Workarounds\nUse a security token resolver that only accepts references to issuer-pinned X.509 chains (the default when expecting a static set of signing certificates).","status":"published","published":"2026-06-19T20:46:43Z","modified":"2026-06-19T20:46:44Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T14:40:31.656952Z"}],"nvd":[{"id":"CVE-2026-54773","description":"CoreWCF is a port of the service side of Windows Communication Foundation (WCF) to .NET Core. Prior to 1.8.1 and 1.9.1, CoreWCF WS-Security signature verification performs a document-wide ds:Signature lookup, allowing an unauthenticated remote attacker to place a SOAP header before wsse:Security and cause WSSecurityOneDotZeroReceiveSecurityHeader to verify an attacker-supplied signature instead of the security header signature. This issue is fixed in versions 1.8.1 and 1.9.1.","status":"published","published":"2026-07-08T23:16:54.96Z","modified":"2026-07-10T15:16:41.373Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T14:12:28.4135Z"}],"osv":[{"id":"CVE-2026-54773","title":"CoreWCF: WS-Security signature substitution via document-wide Signature lookup","description":"CoreWCF is a port of the service side of Windows Communication Foundation (WCF) to .NET Core. Prior to 1.8.1 and 1.9.1, CoreWCF WS-Security signature verification performs a document-wide ds:Signature lookup, allowing an unauthenticated remote attacker to place a SOAP header before wsse:Security and cause WSSecurityOneDotZeroReceiveSecurityHeader to verify an attacker-supplied signature instead of the security header signature. This issue is fixed in versions 1.8.1 and 1.9.1.","status":"published","published":"2026-07-08T22:09:32.584Z","modified":"2026-10-28T02:30:51.737653576Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T15:45:10.818486Z"},{"id":"GHSA-jc6x-rj79-w4mx","title":"CoreWCF: WS-Security signature substitution via document-wide Signature lookup","description":"### Impact\nAn 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.\n\n#### Preconditions\nExploitation 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.\n\n### Patches\nFixed in CoreWCF v1.8.1 and v1.9.1\n\n### Workarounds\nUse a security token resolver that only accepts references to issuer-pinned X.509 chains (the default when expecting a static set of signing certificates).","status":"published","published":"2026-06-19T20:46:43Z","modified":"2026-06-19T21:11:30.211178Z","cvss":[{"version":"3.1","score":5.9,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"medium"}],"cwes":["CWE-347"],"updated_at":"2026-11-02T15:46:50.336262Z"}]}}
