CVE-2020-11738
Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.
Apply updates per vendor instructions.
Resumo
Falha de directory traversal (CWE-22/23) no plugin Duplicator e Duplicator Pro para WordPress, que permite a um atacante não autenticado ler arquivos arbitrários do servidor manipulando o parâmetro file das ações AJAX duplicator_download e duplicator_init. É crítica na prática porque o Duplicator estava instalado em mais de 1 milhão de sites e o vetor mais comum é a exposição de wp-config.php, que contém credenciais de banco de dados — de onde normalmente segue comprometimento total do site.
Detalhamento técnico
O Duplicator gera pacotes de backup/migração do WordPress e expõe rotinas para o usuário baixar esses arquivos ou inicializar o processo de instalação a partir deles. As ações duplicator_download e duplicator_init recebem um parâmetro file que é concatenado a um caminho base no sistema de arquivos sem sanitização adequada de sequências '../'. Isso é um caso clássico de CWE-22/CWE-23 (Path Traversal / Relative Path Traversal): o valor controlado pelo cliente é usado diretamente na construção do caminho lido no disco, permitindo escapar do diretório de pacotes do Duplicator e acessar qualquer arquivo legível pelo processo do servidor web.
Como é explorada
O vetor CVSS (AV:N/AC:L/PR:N/UI:N/C:H/I:N/A:N) indica exploração remota, sem autenticação, sem interação do usuário e sem necessidade de configuração não padrão — basta o plugin estar instalado e ativo. O impacto documentado é só de confidencialidade (leitura arbitrária de arquivos), não há evidência no CVSS ou nas fontes de escrita/execução de código via esta falha especificamente. Na prática, o alvo típico é wp-config.php, que expõe credenciais de banco de dados e chaves de segurança, servindo de trampolim para acesso administrativo ao WordPress ou ao banco.
A CISA descreve o cenário de exposição como ligado ao momento em que um administrador gera um novo pacote de backup/migração — os arquivos gerados ficam acessíveis via essas rotinas AJAX, e é nesse contexto que o parâmetro file pode ser abusado por um terceiro. Há PoC pública, módulo Metasploit e template Nuclei disponíveis, o que reduz a complexidade de exploração a praticamente zero para quem já sabe que o alvo roda uma versão vulnerável; scanners automatizados de massa foram observados atacando o plugin (Wordfence relatou ataques ativos já em fevereiro de 2020, antes mesmo da CVE ser publicada). O EPSS alto (0.978) e a presença no catálogo KEV da CISA confirmam exploração ativa e generalizada, não teórica.
Versões
Como se proteger
Atualizar para Duplicator 1.3.28 ou superior, e Duplicator Pro para 3.8.7.1 ou superior — essas são as versões que o próprio fornecedor identifica como corrigidas na descrição oficial da falha. Não há informação apurada sobre patches específicos por branch além dessas duas linhas (free e Pro).
Se a atualização imediata não for possível, o paliativo real é desativar o plugin Duplicator até a atualização, já que não há flag de configuração documentada que neutralize a falha sem corrigir o código das ações AJAX. Regras de WAF que bloqueiem sequências '../' e '..%2f' nos parâmetros de requisições para admin-ajax.php com action=duplicator_download ou action=duplicator_init reduzem o risco mas não substituem o patch, pois variações de encoding podem contornar filtros incompletos (ver CWE-23, que alerta justamente contra depender de denylist). Restringir acesso externo a wp-config.php via permissões de arquivo ou regra de servidor web (negar leitura via HTTP direto) é controle compensatório útil mas não fecha o vetor de leitura de outros arquivos sensíveis.
Como detectar
Procure por requisições a admin-ajax.php com action=duplicator_download ou action=duplicator_init contendo sequências de travessia de diretório ('../', '..%2f', variantes com encoding duplo) no parâmetro file, especialmente sem sessão administrativa autenticada associada. Tentativas de acesso a wp-config.php, /etc/passwd ou caminhos absolutos fora do diretório de pacotes do Duplicator nesses parâmetros são indício direto de tentativa de exploração; dado o volume de scanners automatizados reportado desde 2020, esse tráfego tende a ser massivo e não direcionado, então presença isolada de uma tentativa não implica comprometimento — verificar se houve resposta HTTP 200 com conteúdo de arquivo sensível é o sinal que confirma sucesso.