OpenID DotNetOpenAuth для проблемы обратного прокси ISA 2006 - PullRequest
0 голосов
/ 17 июня 2010

Я пытаюсь разместить свой сайт, который использует DotNetOpenAuth (OpenID) за ISA 2006 (обратный прокси-сервер), и после того, как он аутентифицировался у провайдера (например, Google), и он возвращается с URL с% 253A в URL. Однако фильтр ISA HTTP отклоняет запрос.

Что мне нужно сделать, так это в правиле веб-публикации ISA щелкнуть правой кнопкой мыши> свойства политики HTTP config> снять флажок «Проверять нормализацию», и это сработало.

  • Это проблема на ISA 2006 вообще? У других брандмауэров есть подобные проблемы?
  • Или это проблема OpenID или DotNetOpenAuth?
  • Безопасно ли отключать проверку нормализации на ISA?

Согласно MSDN, цитата «Веб-серверы получают запросы в кодировке URL. Это означает, что определенные символы могут быть заменены знаком процента (%), за которым следует определенное число. Например,% 20 соответствует пробелу, поэтому запрос на http://myserver/My%20Dir/My%20File.htm совпадает с запросом на http://myserver/My Dir / My File.htm. Нормализация - это процесс декодирования URL-кодированных запросов. Поскольку% может быть закодирован URL-адресом, злоумышленник может отправить тщательно созданный запрос на сервер, который в основном имеет двойную кодировку. В этом случае Internet Information Services (IIS) могут принять запрос, который в противном случае он отклонил бы как недействительный. Когда вы выбираете Verify Normalization, HTTP-фильтр нормализует URL-адрес два раза. Если URL после первой нормализации отличается от URL после второй нормализации, фильтр отклоняет запрос. Это предотвращает атаки, основанные на запросах с двойным кодированием. Обратите внимание, что хотя мы рекомендуем вам использовать функцию проверки нормализации, она также может блокировать законные запросы, содержащие%. "

1 Ответ

2 голосов
/ 17 июня 2010

Сообщения OpenID часто могут содержать двойные URL-адреса в своих запросах.Поэтому из предоставленной вами документации я бы сказал, что вы должны отключить «Проверка нормализации» на обратном прокси.

...