Бот с заблокированным ip по-прежнему вызывает исключения на сервере

Я управляю сайтом, на который "нападает" очень глупый бот. Бот постоянно пробует одни и те же запросы, всегда получает неверный ответ на запрос, потому что ASP.NET обнаруживает "потенциально опасное значение Request.Path, обнаруженное клиентом".

Я пытался добавить IP-адрес бота в мои запрещенные ips через файл IIS/Web.config (ipSecurity)/. Htaccess (Helicon ape), в целом он работает и блокирует ip от "обычных" запросов. Но когда бот пытается получить доступ к своим странным URL-адресам, таким как "mydomain.com/a.aspx/+[PLM=0]+GET+ http://bla.bla.com/", сервер выдает исключение: System.Web.HttpException: От клиента было обнаружено потенциально опасное значение Request.Path (:).

Я не хочу, чтобы мой слабый сервер даже пытался обработать любой запрос с этого IP-адреса, конечно же, не выбрасывая исключения все время. Сервер находится на общем хосте, поэтому у меня не так много вариантов, таких как добавление маршрутизатора, такого как fortinet и т. Д., Который будет блокировать IP на более низком уровне.

Любая идея, как я могу убедить мой сервер всегда игнорировать запросы с этих конкретных IP-адресов, даже когда он пытается потенциально опасные запросы? Любые другие предложения, как справиться с этой ситуацией?

1 ответ

System.Web.HttpException: A potentially dangerous Request. генерируется ValidateInputIfRequiredByConfig() в System.Web/HttpRequest.cs, Эта проверка встроена и выполняется перед блокировкой текущего IP-адреса, поэтому запрос просто не поступает. Исключения являются только доказательством того, что проверка работает, и запрос больше не обрабатывается. Не беспокойся

Если вам действительно нужно заблокировать IP перед любой обработкой запроса, вам нужно сделать это на уровне брандмауэра, как прокомментировал HBruijn.

Другие вопросы по тегам