Как исправить контрабанду HTTP-запросов на IIS - PullRequest
0 голосов
/ 16 марта 2020

В моем приложении ASP. NET MVC я хочу решить проблему уязвимости, связанной с контрабандой HTTP-запросов.

Я подумал, что будет достаточно, если я заблокирую запросы с «Transfer-Encoding». : chunked "заголовок. В меню администрирования IIS для этого я добавил новое правило фильтрации запросов. Однако это, похоже, не исправляет.

Я написал немного. NET код, чтобы проверить, генерирует ли IIS ошибку 404 при отправке фрагментированного контента. Когда я добавляю заголовок кодировки передачи 1 раз к моему тестовому клиентскому коду, как показано ниже, я НЕ получаю 404, я получаю 200.

httpRequest.Headers.Add("Transfer-Encoding", "chunked");

Интересно, я добавляю заголовок 2 раза (я имею в виду его дублирование) as

httpRequest.Headers.Add("Transfer-Encoding", "chunked");
httpRequest.Headers.Add("Transfer-Encoding", "chunked");

Применяется правило фильтрации, и я получаю 404, как и ожидалось.

Как это исправить?

...