This commits adds a validation check whether the SockJS session type
matches the transport type and rejects requests for which they
don't match.
Issue: SPR-14867
@ -291,6 +291,11 @@ public class TransportHandlingSockJsService extends AbstractSockJsService implem
@@ -291,6 +291,11 @@ public class TransportHandlingSockJsService extends AbstractSockJsService implem
return;
}
}
if(!transportHandler.checkSessionType(session)){
logger.debug("Session type does not match the transport type for the request.");
response.setStatusCode(HttpStatus.NOT_FOUND);
return;
}
}
if(transportType.sendsNoCacheInstruction()){
@ -303,7 +308,10 @@ public class TransportHandlingSockJsService extends AbstractSockJsService implem
@@ -303,7 +308,10 @@ public class TransportHandlingSockJsService extends AbstractSockJsService implem
@ -98,4 +98,9 @@ public abstract class AbstractHttpReceivingTransportHandler extends AbstractTran
@@ -98,4 +98,9 @@ public abstract class AbstractHttpReceivingTransportHandler extends AbstractTran
@ -46,6 +48,11 @@ public class EventSourceTransportHandler extends AbstractHttpSendingTransportHan
@@ -46,6 +48,11 @@ public class EventSourceTransportHandler extends AbstractHttpSendingTransportHan
@ -87,6 +89,11 @@ public class HtmlFileTransportHandler extends AbstractHttpSendingTransportHandle
@@ -87,6 +89,11 @@ public class HtmlFileTransportHandler extends AbstractHttpSendingTransportHandle
@ -52,6 +53,11 @@ public class JsonpPollingTransportHandler extends AbstractHttpSendingTransportHa
@@ -52,6 +53,11 @@ public class JsonpPollingTransportHandler extends AbstractHttpSendingTransportHa
@ -103,6 +103,11 @@ public class WebSocketTransportHandler extends AbstractTransportHandler
@@ -103,6 +103,11 @@ public class WebSocketTransportHandler extends AbstractTransportHandler
@ -50,6 +52,11 @@ public class XhrPollingTransportHandler extends AbstractHttpSendingTransportHand
@@ -50,6 +52,11 @@ public class XhrPollingTransportHandler extends AbstractHttpSendingTransportHand
@ -56,6 +58,11 @@ public class XhrStreamingTransportHandler extends AbstractHttpSendingTransportHa
@@ -56,6 +58,11 @@ public class XhrStreamingTransportHandler extends AbstractHttpSendingTransportHa
@ -239,6 +239,7 @@ public class DefaultSockJsServiceTests extends AbstractHttpRequestTests {
@@ -239,6 +239,7 @@ public class DefaultSockJsServiceTests extends AbstractHttpRequestTests {