A lista de verificação definitiva de segurança de PHP das melhores práticas do WordPress

Publicados: 2017-11-03

mirsad/stock.adobe.com

O processo de segurança do seu site provavelmente aborda como proteger seu site WordPress no nível do servidor, bem como proteger seu site no nível do arquivo. Mas você precisa proteger sua linguagem de programação? Existem práticas recomendadas de segurança de PHP que você precisa seguir? O PHP precisa ser protegido?

Sim, sim e sim.

Se você administra um site WordPress, mas não se concentra em manter seu código PHP seguro, você pode estar suscetível a um incidente grave.

Oh não, meu Deus, GIF de amigos

Há muitos benefícios em usar PHP para desenvolver seu site WordPress:

  • É fácil de usar para iniciantes e flexível o suficiente para profissionais de programação.
  • Funciona muito bem em todas as plataformas (por exemplo, Linux, Windows, etc.).
  • Também é muito compatível com WordPress.
  • Pode melhorar a velocidade do site.

Dito isto, o PHP tem suas falhas. Aplicativos programados em PHP podem estar em risco de:

  • Injeções SQL
  • Scripting entre sites
  • Credenciais de login expostas
  • Sequestro de sessão
  • Formulários falsificados
  • E outros riscos de segurança desagradáveis

Relacionado: Como verificar a versão PHP do seu site WordPress (e a compatibilidade de atualização)

Obviamente, isso não pretende desanimar você de usar PHP para programar seu site WordPress. É uma linguagem altamente confiável e flexível e, quando protegida adequadamente, pode ser uma ferramenta incrivelmente poderosa que também ajuda a agilizar seu processo.

A lista de verificação de segurança de PHP a seguir ensinará todas as práticas recomendadas de segurança de PHP que você precisa conhecer para manter sua linguagem de programação e aplicativos criados em PHP seguros no futuro.

Nossa equipe na WP Buffs ajuda proprietários de sites, agências parceiras e parceiros freelancers a seguir as melhores práticas de segurança de PHP. Se você precisa de nós para gerenciar 1 site ou oferecer suporte a 1.000 sites de clientes, nós estamos sempre à sua disposição.

A lista de verificação definitiva de segurança de PHP para WordPress

Quer garantir que seu site WordPress permaneça protegido contra hackers? Então cabe a você garantir que todas as ferramentas usadas para construí-lo (incluindo sua linguagem de programação) sigam as práticas recomendadas de segurança. Especificamente quando se trata de PHP, você precisará prestar muita atenção ao seguinte:

  • Práticas recomendadas de codificação PHP
  • Restrições de acesso no backend do seu site
  • Gerenciamento e monitoramento de contas de usuário
  • Validação, higienização e escape de dados
  • Envio de dados do usuário e monitoramento de upload
  • Confiabilidade do host da web

Se você quiser mais informações sobre os pontos de verificação de segurança do PHP acima e como usá-los no desenvolvimento do WordPress, continue lendo para obter a lista de verificação de segurança do PHP definitiva.

Melhores práticas de PHP

  • Use PHP7 : Sempre use a versão mais recente do PHP. O mesmo se aplica a quaisquer bibliotecas e aplicativos de terceiros que você usa com ele.
  • Ocultar versão : a versão atual do PHP que você está usando pode permitir que os hackers saibam a que tipo de vulnerabilidades você deixou seu site aberto, então desative essa configuração em seu cabeçalho usando Expose_php.
  • Renomear phpinfo : Informações adicionais sobre sua instalação também precisam ser ocultadas, portanto, altere o nome do arquivo phpinfo.php.
  • Alterar código de erro : altere a mensagem de erro padrão exibida aos usuários quando uma conexão com seu site falha. Isso impedirá que eles vejam informações sobre seu IP ou caminho de arquivo. Em vez disso, apenas registre esses erros do seu lado.
  • Limitar comandos do sistema : O consenso geral é que você não deve usar funções shell em PHP. Se for necessário, no entanto, não inclua os dados do usuário.

Proteja o back-end

  • Use SFTP : Ao transferir arquivos no backend, sempre use SFTP.
  • Restringir acesso ao diretório : altere o nome do diretório padrão para seu aplicativo PHP.
  • Configure o caminho da sessão : se você estiver usando hospedagem compartilhada para o seu site, outros usuários no servidor poderão ver os dados da sua sessão. Você pode impedir isso armazenando novos caminhos de sessão abaixo do diretório raiz.
  • Crie administradores separados : se você estiver executando mais de um site baseado em PHP em um único servidor, certifique-se de usar um administrador separado com credenciais de login completamente diferentes para cada um. Isso evitará infecções entre locais.
  • Tornar o diretório somente leitura : proteja seu diretório acessível pela web configurando-o como somente leitura.
  • Armazenar arquivos confidenciais fora do diretório : arquivos de aplicativos confidenciais (como arquivos de configuração) precisam ser colocados em um diretório não acessível pela web. Você pode então roteá-los usando um script PHP.

Informações seguras do usuário

  • Criptografar todas as senhas : Esta é óbvia, mas certifique-se de aplicá-la em todas as suas senhas, bem como para todos os usuários logados.
  • Sessões seguras : evite o sequestro de sessões criando um ID de sessão complexo. Você também pode adicionar um token especial a cada URL.
  • Destruir sessões antigas : quando alguém se desconectar ou se seus direitos de acesso forem alterados, sempre exclua os cookies da sessão e force um novo ID de sessão.
  • Verifique novos usuários : sempre verifique a identidade dos novos usuários e conceda-lhes privilégios de acesso adequados. Isto é especialmente importante se eles estiverem tentando acessar uma página restrita.
  • Use um acelerador : muitos logins com falha devem ser bloqueados com um acelerador de senha.

Validar entrada e saída dos usuários

  • Valide e limpe a entrada : quaisquer dados, arquivos, URLs, conteúdo incorporado, CSS ou HTML enviados através do seu site por um usuário – conhecido ou desconhecido – precisam ser revisados ​​e limpos. Isso significa que apenas os dados que você esperava receber (por exemplo, nome de usuário para nome de usuário, endereço de e-mail para endereço de e-mail, etc.) devem ser permitidos. Mantenha palavras “ruins” como “DE” ou “ONDE” ou pontuação como aspas simples no seu radar , pois podem ser um sinal de que alguém está tentando inserir código malicioso no seu site .
  • Saída de escape : antes de publicar quaisquer dados ou arquivos do usuário em seu site, certifique-se de que eles também tenham escapado para evitar a passagem de caracteres e códigos potencialmente perigosos (como aspas simples ou <script>).
  • Limitar dados POST : se os hackers quiserem atacar seu site com uma quantidade enorme de dados, você pode evitar isso definindo limites para a quantidade de dados POST que podem ser enviados. Você também pode limitar o tempo de entrada.
  • Desative Register_Globals : Nunca deve haver margem de manobra sobre que tipo de informação pode ser enviada nos formulários do seu site. Register_globals, infelizmente, abre essa oportunidade para hackers.
  • Desativar Magic_Quotes : Magic_quotes por si só não prejudicará seu site, mas as pessoas que o usam para escapar dos dados gerados podem introduzir involuntariamente uma vulnerabilidade.

Monitorar envios

  • Desativar uploads de arquivos : isso nem sempre é possível. Mas se você não precisa receber arquivos ou dados dos usuários, livre-se dessa funcionalidade.
  • Verifique os arquivos enviados : se precisar permitir que os usuários carreguem arquivos para o seu site, você precisará analisar o conteúdo do arquivo em busca de injeções prejudiciais. Como atalho, você pode salvar novamente o arquivo em um formato diferente. Se ainda for válido, há menos probabilidade de haver um problema.
  • Use um antivírus : se o seu site aceita muitos arquivos enviados, você desejará que um antivírus seja instalado.

Use hospedagem segura na web

  • Use um host confiável: não importa quanto trabalho você dedique para proteger seu site, arquivos, área de login ou linguagem de programação, a segurança precisa começar no nível de hospedagem. É por isso que você deve fazer parceria com um host confiável que priorize a segurança e forneça suporte especificamente para PHP7.
  • Obtenha um CDN: Outra maneira de reduzir as ameaças à segurança no nível do servidor é obter uma rede de distribuição de conteúdo (CDN). Embora estes sejam frequentemente associados à melhoria do desempenho de sites globais, os CDNs também fornecem uma camada extra de proteção.
  • Obtenha um certificado SSL: Esta é uma prática recomendada, independentemente de você programar com PHP ou não. Os certificados SSL adicionam uma camada criptografada extra entre o seu servidor e os navegadores dos visitantes.

Embora cada um dos pontos acima seja realmente válido, vale a pena enfatizar esse ponto específico, pois a qualidade da hospedagem na web em que você confia pode, em última análise, fazer ou quebrar a estratégia de segurança do seu site.

Como muitas vezes é difícil distinguir o bom do ruim – especialmente quando se procura algo tão específico como suporte PHP7 – sugerimos que você comece com hosts da web como WP Engine e Kinsta.

Relacionado: Hospedagem WordPress totalmente gerenciada por meio de WP Engine e Kinsta

WP Engine é um provedor de hospedagem WordPress gerenciado que inclui suporte PHP7 em cada um de seus planos de hospedagem. Além disso, o WP Engine trata regularmente do assunto PHP7 em seu blog com mensagens especiais para seu plugin PHP Compatibility Checker. Dizer que esta empresa se dedica ao suporte ao usuário PHP7 seria um eufemismo.

Outra empresa gerenciada de hospedagem WordPress, Kinsta hospeda todos os sites de seus clientes com PHP7. Isso é para garantir alto desempenho e velocidade em todos os aspectos. Kinsta também oferece aos seus usuários a capacidade de atualizar seu PHP Engine para a versão mais recente do PHP.

E, claro, a hospedagem WordPress totalmente gerenciada do WP Buffs também deve ser considerada. WP Buffs sempre permanece à frente da curva, mantendo seus servidores e versões PHP atualizados com o que há de melhor e mais recente, para que você nunca precise se preocupar em gerenciar essas atualizações sozinho (o que é parte da alegria em terceirizar o gerenciamento do WordPress para outra pessoa, certo?)

Empacotando

Ao construir um site WordPress, a segurança é sempre uma preocupação primordial. É por isso que você utiliza plugins e temas confiáveis ​​e mantém sempre seu núcleo atualizado, entre outras práticas recomendadas de segurança. PHP não é diferente. Lide com isso como você faz com suas outras ferramentas WordPress: mantenha-o atualizado e sempre siga as práticas recomendadas de segurança, e você (e seu site) poderão dormir muito mais tranquilos à noite.

Quer dar seu feedback ou participar da conversa?Adicione seus comentários no Twitter.

Salvar Salvar