Proibir nginx ou PHP-FCGI para criar arquivos PHP

1

Estou rodando um servidor web nginx em um sistema Debian Wheezy configurado para rodar PHP através do PHP-FCGI. Além de definir permissões apropriadamente, por motivos de segurança, eu gostaria de proibir o nginx e o PHP para criar arquivos (ou renomear outros adequadamente) que correspondam à regra location ~ \.php ..., isto é, arquivos que terminam em .PHP. Como posso abordar isso?

    
por Hendrik Wiese 27.10.2016 / 09:52

1 resposta

2

Use as permissões certas. Permita que o usuário em que o php-fpm está sendo executado crie arquivos apenas em diretórios certian e proíba explicitamente php-fpm de manipular os arquivos * .php que residem nesses diretórios.

Algo assim:

location ~* /writable/by/php-fpm/directory/.+\.php$ {
    return 403;
}

acima dos locais usuais do php. Portanto, evite o modo 777 a todo custo.

Embora essa seja uma boa abordagem de segurança, ela raramente é usada, porque a principal preocupação é impedir que invasores tenham acesso à execução de seu próprio código (e esse é um superconjunto do problema sobre o qual você está perguntando), que é feito principalmente no próprio código do aplicativo PHP. Portanto, essa abordagem é usada principalmente para proteger os diretórios nos quais os arquivos são carregados pelos usuários.

    
por 27.10.2016 / 10:12