[ https://issues.apache.org/jira/browse/RAMPART-428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Lazarski updated RAMPART-428: ------------------------------------ Fix Version/s: 2.0.0 > rampart passes the soap body different from the one used in validating > against soap signature > ---------------------------------------------------------------------------------------------- > > Key: RAMPART-428 > URL: https://issues.apache.org/jira/browse/RAMPART-428 > Project: Rampart > Issue Type: Bug > Affects Versions: 1.6.2 > Reporter: Daniel > Priority: Major > Fix For: 2.0.0 > > > our hacking scenario: > 1. the hacker first acquires a valid soap signature, including soap header > and body > 2. the hacker attacks the service by replaying the acquired soap message as > follows: > <soap envelope> > <(replayed valid) soap header> > ... > <wrapper> > <(replayed valid) soap body>...</soap body> > </wrapper> > </soap header> > <(new arbitrary) soap body> > ... > </soap body> > </soap envelope> > 3. the soap message in 2. will pass rampart's signature verification as it > uses the valid (replayed) body to check against the valid (replayed) > signature. However, the problem is that rampart passes to applications the > new (arbitrary) soap body, which effectively bypasses the security mechanism > of xml signature. To foil the hack, rampart can pass the (replayed) body it > checks against the (replayed) signature instead of the new (arbitrary) one. > 4. security policy that we use: > <wsp:Policy wsu:Id="SigOnly" > > xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" > xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"> > <wsp:ExactlyOne> > <wsp:All> > <sp:AsymmetricBinding > > xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"> > <wsp:Policy> > <sp:InitiatorToken> > <wsp:Policy> > <sp:X509Token > > sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never"> > <wsp:Policy> > > <sp:RequireThumbprintReference /> > <sp:WssX509V3Token10 /> > </wsp:Policy> > </sp:X509Token> > </wsp:Policy> > </sp:InitiatorToken> > <sp:RecipientToken> > <wsp:Policy> > <sp:X509Token > > sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never"> > <wsp:Policy> > > <sp:RequireThumbprintReference /> > <sp:WssX509V3Token10 /> > </wsp:Policy> > </sp:X509Token> > </wsp:Policy> > </sp:RecipientToken> > <sp:AlgorithmSuite> > <wsp:Policy> > <sp:TripleDesRsa15 /> > </wsp:Policy> > </sp:AlgorithmSuite> > <sp:Layout> > <wsp:Policy> > <sp:Strict /> > </wsp:Policy> > </sp:Layout> > </wsp:Policy> > </sp:AsymmetricBinding> > <sp:Wss10 > xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"> > <wsp:Policy> > <sp:MustSupportRefKeyIdentifier /> > <sp:MustSupportRefIssuerSerial /> > </wsp:Policy> > </sp:Wss10> > <sp:SignedParts > xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy"> > <sp:Body /> > <sp:Header Name="Action" > Namespace="http://www.w3.org/2005/08/addressing" /> > <sp:Header Name="To" > Namespace="http://www.w3.org/2005/08/addressing" /> > </sp:SignedParts> > </wsp:All> > </wsp:ExactlyOne> > </wsp:Policy> -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org For additional commands, e-mail: java-dev-h...@axis.apache.org