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.