Geral 2min de Leitura - 18 de fevereiro de 2020

Plug-in WordPress para conformidade GDPR gera vulnerabilidade em 700 mil sites

Celular exibindo a logo do Wordpress na tela.

This post is also available in: Português Español

Plug in do WordPress que ajuda a se adequar à Lei Geral de Proteção de Dados na Europa apresentou falhas que deixavam os sites mais expostos a invasões. Problema já foi corrigido, bastando atualizar o plug in.

Em maio de 2018, entrou em vigor na União Europeia o chamado Regulamento Geral de Proteção de Dados – GDPR, na sigla em inglês. É uma legislação que estipulou diversas regras sobre como empresas e órgãos públicos devem lidar com os dados pessoais da população.

No Brasil, passará a valer a Lei Geral de Proteção de Dados (LGPD) no próximo mês de agosto. Nesse contexto, surgiram diversas ferramentas para auxiliar os sites a se adequarem. Uma delas é um plug in da plataforma WordPress, o GDPR Cookie Consent.

Trata-se de um meio de ajudar as empresas a exibirem banners de cookies para mostrar que estão em conformidade com a nova regulamentação de privacidade do velho continente.

Entretanto, a solução trazia vulnerabilidades que, se exploradas, poderiam permitir que os invasores modificasem o conteúdo, ou mesmo injetassem um código JavaScript malicioso nos sites das vítimas.

Mais de 700 mil endereços possuem uma instalação ativa desse plug in, o que literalmente deixa centenas de milhares de páginas da internet à mercê de criminosos.

Ainda sem registro na CVE (a lista pública mundial de falhas de segurança), a vulnerabilidade afeta o GDPR Cookie Consent versão 1.8.2 e inferior. Depois que os desenvolvedores foram notificados sobre a falha, o plug-in de consentimento de cookies do GDPR foi removido do diretório de plugins do WordPress.org.

Recebeu ainda uma anotação que dizia “pendente de uma revisão completa”, de acordo com a página de diretório do plug-in. A nova versão, 1.8.3, foi lançada pelo Cookie Law Info, o desenvolvedor do plugin, há poucos dias.

A vulnerabilidade decorria de controles de acesso incorretos utilizados no plugin AJAX API do WordPress, que é um sistema livre e aberto de gestão de conteúdo para internet, baseado em PHP com banco de dados MySQL, executado em um servidor interpretador, voltado principalmente para a criação de páginas eletrônicas e blogs online. O método “_construct”, dentro do plugin, é utilizado para inicializar o código de objetos recém-criados.

No entanto, existiam falhas em verificações do código que permitiu que este plugin, somente acessível para administradores, fossem usados por assinantes para realizar uma série de ações, que poderiam comprometer a segurança do site.

Um assinante é uma função de usuário no WordPress geralmente com recursos muito limitados, incluindo o login no site e permissão para colocar comentários.

O método “_construct” aceita três valores diferentes da API AJAX. Dois deles, save contentdata e autosave_contant_data, poderiam ser aproveitados por invasores. O método save_contentdata é usado para permitir que os administradores salvem os avisos de cookies GDPR no banco de dados como um tipo de postagem na página.

No entanto, como esse método não é verificado, um usuário ou assinante logado pode modificar qualquer página ou publicação existente e deixá-los offline, alterando seu status de “publicado” para “rascunho”.

Além disso, era possível excluir ou alterar os dados dos posts. O conteúdo injetado poderia incluir texto formatado, imagens locais ou remotas, além de hiperlinks e códigos de acesso.

O outro método, autosave_contant_data, é usado para salvar a página de informações do cookie GDPR em segundo plano enquanto o administrador a edita, armazenando os dados no campo do banco de dados cli_pg_content_data sem validá-lo.

No entanto, a falta de verificações desse método poderia permitir que um usuário autenticado injetasse o código JavaScript na página da web. Os pesquisadores que descobriram o problema pedem que os usuários desse plugin do WordPress o atualizem o mais rápido possível. A vulnerabilidade foi corrigida na versão 1.8.3, e recomenda-se utilizar a mais recente disponível.

Acompanhe as OSTEC nas redes sociais para ficar por dentro de todo nosso conteúdo: Instagram, Facebook, Linkedin, Twitter.

This post is also available in: Português Español