В моем веб-приложении я использую signalR. Соединение SignalR использует транспорт с длинным опросом, который отправляет POST-запрос на сервер и передает параметры в строке запроса.
Теперь я сканировал свое приложение, используя инструмент сканирования приложений IBM. Тест манипулировал методом запроса / signalr / poll из POST в GET и выполнял необходимые манипуляции на сервере. Сервер отвечал одинаково в случае использования команд GET и POST для одного и того же запроса. Таким образом, инструмент сообщил, что этот запрос уязвим, потому что ответы идентичны.
Итак, как я могу ограничить на сервере signalR HUB принимать этот запрос только с использованием метода POST?
Ниже приведены требования:
Исходный запрос
Манипулированный запрос