As atualizações do WordPress são essenciais para a correções de falhas, melhoras no desempenho, além da introdução de novas funcionalidades na plataforma mais popular do mundo.
Praticamente 60% das instalações WordPress estão desatualizadas. O número é alarmante, uma vez que manter o WP em sua última versão é garantir o uso de um software com as mais recentes correções de bug, segurança e claro, desfrutar de novos recursos.
A regra deve ser extendida para os plugins, temas, sistema operacional e demais programas em questão.
Uma versão desatualizada pode estar deixando a porta dos fundos, ou a da frente, aberta ou com a chave na fechadura e essa responsabilidade não pode ser creditada à aplicação.
Garanta um processo contínuo para as atualizações do WordPress e seus componentes e garanta uma maior segurança para WordPress.
WordPress e segurança na mídia
É comum noticiarem que milhões de instalações da plataforma de gestão de conteúdo mais utilizada do mundo estão vulneráveis. Mas poucos percebem o por quê.
Na maioria dos casos, são complementos desatualizados que tiveram brechas recentes descobertas (plugins ou bibliotecas de sistemas operacionais, por exemplo).
As notícias ilustradas abaixo são emblemáticas quanto a isso. Observe:
Destaque para a vulnerabilidade GHOST, que afeta servidores Linux e, por conseguinte, aplicações PHP e, claro, o WordPress por ser desenvolvido nesta linguagem.
Mas é importante ficar claro que a brecha afeta milhares de softwares na referida linguagem. Para corrigir o problema basta uma atualização da bibiloteca no Linux e pronto.
Casos como a segunda notícia são recorrentes, onde são divulgadas brechas em plugins e, quando esses são muito populares, podem afetar milhões de instalações.
Atualizações dos plugins WordPress
O core da plataforma está seguro e o recurso adicional trouxe a surpresa desagradável. Atualizando o plugin, se disponibilizado a correção, o problema será corrigido, e pronto.
Alguns plugins são bem codificados e adotam boas práticas de desenvolvimento e segurança.
Melhor ainda os que praticam um processo de atualização constante como foi o caso recente do WordPress SEO e WooCommerce em que brechas foram divulgadas e rapidamente corrigidas.
Outros plugins são lançados e não têm manutenção. Quem faz uso acaba ficando comprometido.
O importante é que os desenvolvedores sejam mais criteriosos com suas escolhas.
As atualizações do WordPress automáticas
À partir da versão 3.7, lançada em 24 de outubro de 2013, foi implementado o recurso de atualização automática do core para versões de manutenção e correções de segurança.
Por exemplo, se você está fazendo uso da versão 4.1 e se lançado a versão 4.1.1, essa última será implementada automaticamente e de forma silenciosa.
A prática aumenta a possibilidade de diminuir a quantida de usuários com instalações antigas e demonstra os esforços da plataforma em adotar práticas importantes de segurança e auxílio aos usuários.
Versionamento e deploy automatizado
Atualizações automáticas não é para todo mundo. Permitir a atualização via painel pelo próprio cliente também não.
A gestão do seu projeto pode, e deveria, estar integrada com um controle de versão (Git, SVN, etc) e isso requer um controle do seu lado e deixar a plataforma trabalhar sozinha ou permitir que o usuário interfira pode atrapalhar o processo.
Prefira as atualizações, remoção ou adição de plugins através de versionamento e continuos delivery ao contrário de atualizações através do Dashboard da aplicação.
Com essa prática é possível validar as atualizações em outros ambientes antes de aplicar as mudanças em produção.
Além disso, reverter para uma versão anterior será possível e prático caso o processo falhe ou aconteça algo indesejado.
Constantes no wp-config.php para você se dar bem
Através de constantes do PHP inseridas no arquivo wp-config.php é possível definir o comportamento que o WordPress deve ter em relação as atualizações e assim definir sua política sobre o assunto.
define( 'DISALLOW_FILE_EDIT', true );
Desativa somente o editor de tema e plugin. É o mínimo que você deve considerar.
Além de não permitir que os usuários alterem os códigos de plugins e temas, é adicionado uma camada de segurança para se proteger de usuários mal intencionados que possam ter ganho acesso a administração e queiram alterar arquivos para implantar malwares.
define( 'DISALLOW_FILE_MODS', true );
Fazer uso da constante DISALLOW_FILE_MODS é para radicalizar onde nenhuma alteração nos arquivos será possível, ou seja, o editor de tema e plugin será desativado, a possibilidade de atualizar o core, plugins e temas e até mesmo de instalar temas ou plugins.
define( 'AUTOMATIC_UPDATER_DISABLED', true );
Semelhante ao exemplo anterior, mas restrito somente as atualizações automáticas diversas, como o core, pacotes de linguanges, temas, plugins além de desativar os alertas por e-mail das atualizações disponíveis.
Para manipular as atualizações do core existem constantes específicas e mais direcionadas.
// Desabilita todas as atualizações do core
define( 'WP_AUTO_UPDATE_CORE', false );
// Permite todas as atualizações do core. Sejam as principais (major) ou menores (minor)
define( 'WP_AUTO_UPDATE_CORE', true );
O valor padrão da constante WP_AUTO_UPDATE_CORE é “minor” indicando as atualizações automáticas das versões menores focadas em correções de bug e segurança.
O impacto das atualizações do WordPress e seus componentes é grande para garantir uma maior segurança ao seu site.
Defina suas políticas, traçe a melhor abordagem sobre o assunto e mantenha tudo up-to-date.