Pular para o conteúdo principal
MeteorGPLby WebbingApps

Guia Segurança

Manter plugins atualizados e acompanhar vulnerabilidades

Acompanhe os pacotes que você usa, escolha como quer ser avisado, deixe o seu composer.lock fazer o acompanhamento e aja sobre os alertas de vulnerabilidade antes que eles cheguem aos seus sites.

Manter plugins atualizados e acompanhar vulnerabilidades

Sobre este guia

Dificuldade
Iniciante
Tempo para concluir
15 minutos
Tempo de leitura
4 min de leitura

Pré-requisitos

  • Uma conta no MeteorGPL
  • Um projeto que instala pacotes do MeteorGPL, e o composer.lock dele
Neste guia
  1. Passo 1 — Acompanhe os pacotes que você usa
  2. Passo 2 — Escolha como você é avisado
  3. Passo 3 — Deixe o arquivo lock fazer o acompanhamento
  4. Passo 4 — Aja sobre os alertas de vulnerabilidade
  5. Passo 5 — Atualize
  6. Passo 6 — Automatize com webhooks e feeds

Instalar um plugin é a parte fácil. Saber quando ele precisa de uma atualização, e sobretudo de uma atualização de segurança, é o trabalho que nunca acaba. O MeteorGPL tem quatro ferramentas para isso: acompanhar pacotes, notificações, o painel de dependências e os alertas de vulnerabilidade. Este guia as configura nessa ordem e depois mostra como atualizar.

Passo 1 — Acompanhe os pacotes que você usa

Cada página de pacote tem um menu Acompanhar, como no GitHub:

Opção Você fica sabendo de
Toda a atividade Novas versões, avisos de segurança e retiradas
Lançamentos Novas versões (e retiradas)
Alertas de segurança Avisos de segurança (e retiradas)
Personalizado Os eventos que você escolher
Ignorar Nada sobre este pacote

Marcar um pacote com estrela também o acompanha para lançamentos; você pode desativar isso nas suas configurações de notificação. Configurações → Acompanhando lista todos os pacotes que você acompanha.

Passo 2 — Escolha como você é avisado

Em Configurações → Notificações você escolhe, para cada tipo de evento, se ele chega a você no aplicativo, como notificação push ou por e-mail. Por padrão:

  • Novas versões chegam no aplicativo e por e-mail.
  • Avisos de segurança chegam no aplicativo, por push e por e-mail.
  • Retiradas chegam no aplicativo e por e-mail.

Também há um resumo semanal do que mudou nos pacotes que você marcou com estrela, desativado até que você o ative. As notificações push são ativadas por navegador, na mesma página.

Passo 3 — Deixe o arquivo lock fazer o acompanhamento

Acompanhar pacote por pacote funciona para alguns plugins. Para um site inteiro, deixe o arquivo lock falar por ele: crie um projeto em Configurações → Projetos e envie o composer.lock do site, à mão ou a partir do seu pipeline (veja Tokens do Composer no CI).

A página do projeto mostra cada pacote do repositório como:

  • atualizado,
  • desatualizado, com as entradas do registro de alterações que faltam para você,
  • retirado, ou
  • removido.

Nos seus projetos pessoais, os pacotes do arquivo lock podem ser acompanhados automaticamente para novas versões: marque Acompanhar novas versões destes pacotes na página do projeto. Envie o arquivo lock de novo depois de cada deploy, e o painel acompanha o que realmente está rodando.

Passo 4 — Aja sobre os alertas de vulnerabilidade

As vulnerabilidades publicadas em plugins e temas do WordPress, vindas do feed de vulnerabilidades do Wordfence Intelligence, são comparadas com o catálogo. Cada correspondência aparece:

  • na página de avisos de segurança, que também tem um feed Atom;
  • na seção Vulnerabilidades conhecidas da aba Segurança do pacote afetado, com as versões afetadas e, quando houver, a versão que corrige o problema e a linha de composer require para obtê-la;
  • como notificação de segurança para as pessoas que acompanham o pacote ou usam uma versão afetada.

Os alertas publicados nos últimos 30 dias avisam imediatamente quem acompanha o pacote e as instalações conhecidas. Os mais antigos avisam você quando, mais tarde, você baixar uma versão afetada ou enviar um arquivo lock que a contenha, de modo que um site esquecido ainda é sinalizado na próxima vez que o arquivo lock dele chegar.

Antes de qualquer versão ser publicada, ela é limpa, comparada com o próprio código de licença do fornecedor, analisada com o ClamAV e com regras de padrões, e passa por lint; uma versão que falha não é publicada, e a aba Segurança mostra as verificações. Se um problema for encontrado depois, a versão é retirada, quem acompanha o pacote é avisado e os webhooks são disparados.

Passo 5 — Atualize

Liste o que tem versões mais novas e depois atualize um pacote ou todos eles dentro das suas restrições:

composer outdated "meteorgpl-plugin/*"
composer update meteorgpl-plugin/elementor-pro

Teste o site, faça commit do novo composer.lock e faça o deploy com composer install. Toda versão publicada continua disponível, então, se uma atualização se comportar mal, voltar atrás é um único comando:

composer require meteorgpl-plugin/elementor-pro:3.20.0

Passo 6 — Automatize com webhooks e feeds

Os webhooks (Configurações → Webhooks) enviam um POST quando um pacote que você escolher recebe uma nova versão, quando um aviso de segurança é emitido ou quando um pacote é retirado: JSON assinado, ou uma mensagem pronta para o Slack ou o Discord. Verifique as entregas em JSON com o cabeçalho X-MeteorGPL-Signature, o HMAC-SHA256 do corpo com o segredo do seu webhook. Um webhook JSON pode iniciar um workflow, por exemplo um que execute composer update e abra um pull request.

Os feeds Atom não exigem conta: cada pacote tem um para os seus lançamentos (na página dele), cada fornecedor tem um, e https://meteorgpl.ddev.site/releases.atom traz todas as novas versões do repositório.

Enviar feedback

O que funciona, o que não funciona, o que falta: algumas palavras ajudam.

Só se você quiser uma resposta.

Feita no seu navegador, sem esta janela. Senhas, o que você digitou em formulários, chaves e tokens ficam de fora como blocos cinza; você pode ocultar mais antes de enviar. Guardamos as capturas por 90 dias.

Guardamos com o endereço da página, seu idioma, o tamanho da janela, o navegador e o endereço IP, e seu endereço de e-mail, se você informar um. O endereço IP e o navegador são excluídos após 90 dias. Política de privacidade.

Todos os idiomas