
meu servidor trava toda vez que um pentester irritante tenta encontrar falhas de segurança em meu aplicativo. Eu vejo isso no log de erros:
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 "-" "-"
O servidor está configurado como um servidor nginx + php-fpm normal. A porta 80 é redirecionada para 443 e o SSL está configurado corretamente.
Eu também adicionei esta linha:
if ($request_method !~ ^(GET|HEAD|POST|OPTIONS|DELETE|PUT|PATCH)$) { return 405; }
(em ambas as configurações de servidor)
Esta também é a única solicitação de "pentesting" que resulta em 400. Todas as outras solicitações resultam em 301 ou 404. Encontrei um problema semelhante em que a seção SSL do nginx não está configurada corretamente. Verifiquei minha configuração, mas parece normal.
Tenho o mesmo problema em outro servidor que possui uma configuração semelhante e em um servidor que possui uma configuração nginx -> apache_mpm_prefork_fpm.
Alguma idéia do que é isso e como proteger o servidor contra falhas. Como reproduzir uma solicitação de pentesting (tentei no carteiro, mas obtive um resultado diferente).
Muito obrigado.
EDITAR
Eu descobri como reproduzir esse log: https://servername:80.
Mas não consigo descobrir como bloquear esse tipo de solicitação. Eu tentei com $scheme mas a solicitação está criptografada. Tentei adicionar SSL à configuração, mas nada mudou. Deve haver uma razão pela qual esses sites de pentesting/exploid tentam enviar uma solicitação https para a porta 80.