Utilizamos cookies e tecnologias semelhantes de acordo com a nossa Política de Privacidade e, ao continuar navegando, você concorda com estas condições.

OK

Desabilitando funções do php para aumentar a segurança do seu servidor

23/12/2017 às 19:30 WordPress

Desabilitando funções do php para aumentar a segurança do seu servidor

Desenvolver uma aplicação web não é uma das tarefas mais fáceis de se fazer. Mesmo que existam diversos recursos que facilitem a vida do programador, sempre vai existir uma questão que ainda tira o sono de muita gente: a segurança. Além de garantir a segurança das informações dos usuários e das transações feitas, um sistema web seguro também deve garantir toda a integridade do servidor que o hospeda. Leia esse artigo até o final e conheça dicas valiosas de segurança, desabilitando algumas funções do PHP e aumentando a segurança do seu servidor.

Use nome de cookies de diferentes sessões

Para evitar que aconteça os conhecidos roubos de sessão, você sempre deve definir nomes diferentes para os cookies de cada sessão. Por exemplo, o nome padrão usado pelo PHP para armazenar os ids de sessão é PHPSESSID. Se você mudar esse nome pode dificultar a ação de um hacker maldoso que quer invadir seu site ou aproveitar de sua aplicação. Outra boa dica é usar nomes diferentes para cada acesso e vinculá-lo a algo relacionado ao acesso do visitante. Aproveite e leia nosso post sobre hospedagem ilimitada existe

Só acesse cookies de sessão via HTTP

Embora os ids de sessão fiquem armazenados em cookies por padrão no PHP, o atributo session.cookie_httponly não vem atribuído como padrão. Se você ativar, os cookies de sessão somente poderão ser acessados via HTTP, impedindo que scripts do JavaScript sejam barrados ao tentarem fazer igual. Essa dica é excelente para evitar os famosos ataques XSS. Para mudar a configuração, vá até o arquivo php.ini do PHP. Depois procure pelo atributo session.cookie_httponlye define seu valor para 1. Conheça mais sobre os serviços oferecidos por nossa empresa em Hospedagem de Site

Defina um limite de tempo para as sessões

Outra dica valiosa para aumentar a segurança do seu servidor. Mesmo que um hacker consiga acessar seu sistema e roube uma sessão, ele terá pouco tempo para a ação maldosa. Como isso é possível? Basta você limitar o tempo de vida das sessões. No atributo session_cache_expire (), você pode colocar o número de minutos dentro dos parênteses que vai definir o tempo de vida de cada sessão.

Evite Spoofing de formulário

O Spoofing de formulário ocorre quando determinada postagem é feita em algum dos formulários do seu website de um local desconhecido. Para resolver esse problema, a utilização de um token pode ajudar a resolver esse tipo de ataque. Com esse recurso, você pode guardar uma chave na sessão na hora em que o formulário estiver sendo exibido. Quando os dados forem postados, você pode fazer a comparação das duas chaves, ou seja, se a chave enviada é a mesma gravada anteriormente.  Vale ressaltar que essa dica somente pode ser usada no caso de formulários mais simples. Para casos de maior complexidade, a alternativa mais eficaz continua sendo o uso do recurso Captcha. Leia também nosso post sobre Hospedagem de site gratuito

Não se esqueça de validar dados externos

Nunca se esqueça de validar os dados que chegam à sua aplicação web através dos comandos GET, POST, COOKIE OU SERVER. Todos esses comandos podem ser manipulados e precisam ser verificados. Essa prática é importante para se evitar do tipo XSS e SQL Injection. Para realizar essa tarefa, pode-se usar as validações que vem junto com o PHP, facilitando todo o trabalho.

Valide os arquivos enviados ao servidor

É raro encontrar sistemas que não disponibilizam o envio de arquivos para serem armazenados no servidor. Se você utiliza esse recurso, nunca se esqueça de sempre validar todos os uploads antes de salvar os arquivos no servidor. Fazendo isso, você vai evitar que arquivos maliciosos fiquem armazenados, causando danos no seu servidor e sistema. Vale ainda lembrar que só validar a extensão do arquivo pode não ser suficiente, pois ela pode ser alterada no momento do envio. Para resolver esse problema, você precisa fazer modificações no cabeçalho do arquivo.

Não permita que suas pastas sejam acessadas via HTTP

No PHP, várias configurações ficam armazenadas em arquivos com extensões ini, XML, JSON, txt e outras. O maior problema é que todo o conteúdo desses arquivos ficam visíveis se forem acessados pelo navegador, o que pode não ser viável se eles tiverem informações pessoais. Para evitar que isso aconteça, uma boa alternativa é proteger as pastas que contem esses arquivos contra acessos externos ou desconhecidos. Para fazer isso, basta colocar os arquivos fora da pasta public_html.

Mantenha o controle dos erros do sistema

Por mais que alguns erros aconteçam na sua aplicação, eles insistem em marcar presença. O problema é que se esses erros não forem bem sanados, essa falhas podem exibir dados sobre sua aplicação, expondo informações importantes. Para evitar isso, defina um arquivo de log para fazer os registro desses erros. Caso tenha a necessidade de fazer o acompanhamento desse arquivo de log em tempo real, basta acessar o servidor via SSH e usar o comando tail -f pathlog/logfile.Você também pode fazer uma configuração no php.ini, evitando que todas as informações confidenciais sejam exibidas para o usuário. Que tal baixar nosso e-book totalmente grátis?

Jamais armazene senhas em texto puro

Na fase de término do projeto, é natural abrir mão de alguns recursos de segurança para adiantar os testes finais, por exemplo. Mas quando o assunto é senhas de acesso ao sistema, elas jamais podem ser ignoradas ou esquecidas. As senhas devem ser criptografadas antes de serem armazenadas, garantindo a total segurança do seu sistema. Se você adotar esse método, você protege todos os seus usuários e todo o seu banco de dados de uma invasão eventual de pessoas maldosas.  

Ainda tem dúvidas sobre como desabilitar funções no PHP para melhorar a segurança do seu servidor? Sem problemas. Em nosso blog você pode ler mais sobre esse e outros assuntos. Para nossa empresa, o cliente vem sempre em primeiro lugar e não medimos esforços para atende-lo da melhor forma possível. 

Gostou de nosso post? Compartilhe: