O arquivo cat /etc/passwd
é somente leitura por padrão para todos os usuários. O arquivo não contém informações críticas. É um comportamento normal para um usuário (seja www-data / apache ou qualquer outra pessoa) poder navegar no sistema de arquivos. No entanto, alguns arquivos são restritos para todos os usuários, exceto o superusuário (root). Se algum processo sob o Apache puder acessar, por exemplo, /etc/shadow
, você tem um sério problema de permissão, pois o arquivo contém as senhas criptografadas de todos os usuários.
Agora, se você não quiser que o PHP seja capaz de acessar o sistema de arquivos, há várias maneiras de neutralizar esse comportamento. Observe também que esse comportamento não é um risco de segurança, pois as permissões de arquivo controlam quem e o que pode modificar ou visualizar arquivos / diretórios.
- Antes do PHP 5.4.0 havia algo chamado safe-mode que poderia ser usado para limitar o acesso dos usuários. (teve vários problemas e, portanto, foi removido mais tarde).
- Você pode desaprovar todos os comandos do shell (system, exec, passthru).
- Use open_basedir