Рейтинг:0

Nginx + PHP-FPM начинает сбой после подозрительного запроса на пентестирование с шестнадцатеричным HTTP-глаголом/методом

флаг tr

мой сервер падает каждый раз, когда надоедливый пентестер пытается найти дыры в безопасности моего приложения. Я вижу это в журнале ошибок:

17:48:48 +0200] "\x16\x03\x01\x00M\x01\x00\x00I\x03\x03\xDBJA\xC5\xB17\xF6\xDA \xD4\xEEEg0\xE0\xF2\xF2\xC9S\ xE4\xF9v}\x1E\x00\xC8\xC3d\x 80h;= \x1F\xD2\xAF?\x88\x8A\xA2\xCF\x16G\x99\x1D\x91" 400 173 "-" "-"

Сервер настроен как обычный сервер nginx + php-fpm. Порт 80 перенаправляется на 443 и ssl настроен правильно.

Я также добавил эту строку:

if ($request_method !~ ^(GET|HEAD|POST|OPTIONS|DELETE|PUT|PATCH)$) { return 405; }

(в обеих конфигурациях серверов)

Это также единственный запрос на пентестирование, который приводит к ошибке 400. Все остальные запросы приводят к ошибке 301 или 404. Я обнаружил аналогичную проблему, когда раздел ssl в nginx настроен неправильно. Я проверил свою конфигурацию, но она выглядит нормально.

У меня такая же проблема на другом сервере с аналогичной конфигурацией и на сервере с конфигурацией nginx -> apache_mpm_prefork_fpm.

Любые идеи, что это такое и как защитить сервер от сбоя. Как воспроизвести такой запрос на пентест (пробовал в почтальоне, но получил другой результат).

Большое спасибо.

РЕДАКТИРОВАТЬ

Я понял, как воспроизвести этот журнал: https://имя_сервера:80.

Но я не могу понять, как блокировать такие запросы. Я попробовал это с помощью схемы $, но запрос зашифрован. Я пытался добавить ssl в конфиг, но ничего не изменилось. Должна быть причина, по которой эти пентестинговые/эксплойд-сайты пытаются отправить HTTPS-запрос на порт 80.

Michael Hampton avatar
флаг cz
Это не похоже на пентест. Похоже, кто-то пытался подключиться к HTTP-порту с помощью HTTPS. Проверьте конфигурацию nginx.
codeneuss avatar
флаг tr
ну на самом деле это пентестинг/сканирование или как вы это называете. Есть много других запросов с того же ip, которые ищут эксплойты. Но ваш комментарий помогает воспроизвести это. «Проверьте конфигурацию nginx» не помогает. Делаю так уже пол года.
Michael Hampton avatar
флаг cz
Nginx уже отклоняет эти запросы. Что вы еще хотите?
Michael Hampton avatar
флаг cz
И что ты имеешь в виду под крахом? Вы ничего не показали в своем посте о сбое.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.