2013-06-06 4 views
1

Мы активировали мониторинг состояния здоровья на нашем веб-сайте. Недавно мы получаем много попыток взлома, вызванных ботами, но также порождаем множество ошибок сервера.фильтр asp.net healthmonitoring

Exception type: System.Web.HttpException 
Exception message: The length of the URL for this request exceeds the configured maxUrlLength value. 

Request information: 
Request URL: http://www.ourdomain.be/Product/Band/29360" onmousedown="return rwt(this,'','','','7','[CUT_OUT_SOME_STUFF]row ab_button" id="am-b6" href=" 
User host address: ---.---.47.93 

Как я могу отфильтровать эти события, поэтому я не получаю 10 сообщений в секунду? Или как я могу дезинфицировать URL-адрес, прежде чем он будет обрабатываться компонентами безопасности ASP.NET?

ответ

0

Я не могу полностью воспроизвести вашу ошибку. Вместо этого я получаю исключение для нелегальных символов. Тем не менее ...

  • Быстрых и грязные = отправить электронную почту к фиктивному адресу и настроить фильтр/правило на это, только те, которые вы хотите получить пересылаются вам
  • Чуть менее быстрым = Использовать Application_Error с Server.GetLastError() и Server.ClearError(), чтобы проверить и игнорировать эти
  • Создайте свой собственный поставщик наблюдения за состоянием здоровья, хотя я думаю, что вы все еще нужно использовать Server.GetLastError для извлечения данных исключений. См. http://msdn.microsoft.com/en-us/library/ms227676%28v=vs.85%29.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1
+0

Application_error не запускается, потому что это, по-видимому, конвейер ASP.Net, который его ловит раньше. Имеются аналогичные ошибки: «ASP.NET обнаружил недопустимые символы в URL-адресе». – dampee

 Смежные вопросы

  • Нет связанных вопросов^_^