0 Compartilhamentos 540 Views 2 Comments

15 dicas para deixar seu site PHP mais seguro

28 de setembro de 2007

1. Evite colocar seu arquivo de conexão com banco de dados no mesmo diretório das suas páginas ou no diretório usado para includes. O melhor a fazer é colocá-lo em algum diretório fora da raiz do site.

2. Desligue no servidor web a configuração que permite a listagem dos arquivos presentes nos diretórios que não tem um index.php.

3. Evite usar o nome includes para o diretório onde você colocará esse tipo de arquivo.

4. No diretório que você usar para colocar seus arquivos de include, sempre coloque um arquivo index.htm e um index.php em branco. Isso evitará que o servidor liste o conteúdo desse diretório caso esteja com a configuração para listagens habilitada.

5. Jamais use a extensão .inc para seus arquivos de include. Isso pode fazer com que o servidor web mostre dados importantes contidos nesses arquivos. Use sempre a extensão .php. Dessa forma o arquivo sempre será processado antes de ser entregue para os usuários.

6. Desligue o error_reporting no servidor de produção. Erros em scripts PHP normalmente exibem a localização física dos arquivos no servidor ou mostram as consultas inteiras que estão sendo usadas para acessar o banco de dados, por exemplo. Com o error_reporting desligado, essas informações não serão mostradas.

7. Ao criar uma área de administração do site, evite usar nomes óbvios como admin.

8. Ainda na mesma área administrativa, faça configurações que obriguem os usuários a mudar de senha freqüentemente e que não aceite senhas muito simples. Evite também a criação de usuários padrão como: admin, administrador, admintrator, root.

9. Em formulários que enviam dados diretamente para o banco, tomar cuidado com SQL Injection. Para resolver isso, capture esses dados e trate-os com addslashes.

10. Em sistemas dinâmicos, evitar fazer scripts que apagam dados do banco. Costume usar status para os registros e depois construa um script coletor que irá tratar esses dados que deveriam ser apagados.

11. Não esqueça que é possível configurar o nível de permissão do usuário que será usado para acessar o banco de dados. Se seu site apenas faz consultas. Coloque no seu arquivo de conexão um usuário que só possa fazer SELECT no banco.

12. No php.ini, que é o arquivo de configuração do PHP, use o parâmetro disable_functions para desabilitar funções que podem ser perigosas como: exec(), eval(), readfile(), shell_exec(), system(), file(), fopen(), popen() entre outras.

13. Ainda no php.ini, habilite o safe_mode.

14. Sempre desabilitar o usuário root padrão do MySQL, que tem senha em branco.

15. Se for usar algum aplicativo para blog, chat, wiki, etc. Não esqueça de remover o arquivo de instalação do diretório do aplicativo.

Carregando...

Você pode se interessar

15 ferramentas de desenvolvimento para melhorar sua produtividade em 2021 sem gastar nada
Artigos
55 visualizações
Artigos
55 visualizações

15 ferramentas de desenvolvimento para melhorar sua produtividade em 2021 sem gastar nada

Carlos L. A. da Silva - 2 de abril de 2021

O cenário de desenvolvimento está em constante mudança e muitas vezes uma ferramenta nova pode agilizar muito seu trabalho.

A tecnologia por trás do deep fake de Deep Nostalgia
Artigos
63 visualizações
Artigos
63 visualizações

A tecnologia por trás do deep fake de Deep Nostalgia

Carlos L. A. da Silva - 22 de março de 2021

Serviço do My Heritage permite "animar" fotos do passado, trazendo vida para seus antepassados. Como isso é possível?

Como se tornar um Engenheiro DevOps em 2021
Artigos
62 visualizações
Artigos
62 visualizações

Como se tornar um Engenheiro DevOps em 2021

Carlos L. A. da Silva - 1 de março de 2021

A consultora de DevOps e evangelista Nana Janashia apresenta um passo a passo de tudo que você precisa saber para dominar o DevOps em 2021.

2 Responses

  1. Pingback: 15 Dicas para deixar seu site mais seguro | Sidnei de Cerqueira

Deixe um Comentário

Your email address will not be published.

Mais publicações

Seus dados vazaram. E agora?
Artigos
54 visualizações
54 visualizações

Seus dados vazaram. E agora?

Carlos L. A. da Silva - 19 de fevereiro de 2021
Entendendo o elemento time em HTML 5
Artigos
68 visualizações
68 visualizações

Entendendo o elemento time em HTML 5

Carlos L. A. da Silva - 5 de fevereiro de 2021
Como cortar texto sem usar uma linha de script
Dicas
68 visualizações
68 visualizações

Como cortar texto sem usar uma linha de script

Carlos L. A. da Silva - 11 de janeiro de 2021