Um a vulnerabilidade crítica de plug-in WordPress expõe mais de 600 mil sites foi descoberta por pesquisadores do PatchStack.
Foi descoberta uma vulnerabilidade crítica de execução remota de código (RCE) na versão 5.0.4 e anteriores do Essential Addons for Elementor, um plugin WordPress popular usado em mais de um milhão de sites.
Vulnerabilidade crítica de plug-in WordPress expõe mais de 600 mil sites
A falha descoberta permite que um usuário não autenticado execute um ataque de inclusão de arquivo local, como um arquivo PHP, para executar código no site.
Segundo os pesquisadores do PatchStack que descobriram a vulnerabilidade:
“A vulnerabilidade de inclusão de arquivo local existe devido à maneira como os dados de entrada do usuário são usados dentro da função include do PHP que faz parte das funções ajax_load_more e ajax_eael_product_gallery.”
O único pré-requisito para o ataque é que o site tenha os widgets “galeria dinâmica” e “galeria de produtos” habilitados para que uma verificação de nenhum token esteja presente.
O pesquisador Wai Yan Muo Thet descobriu a vulnerabilidade em 25 de janeiro de 2022, e o desenvolvedor do plugin já sabia de sua existência naquela época.
Na verdade, o autor lançou a versão 5.0.3 para resolver esse problema aplicando uma função “sanitize_text_field” nos dados de entrada do usuário. No entanto, essa sanitização não impede a inclusão de cargas úteis locais.
A segunda tentativa foi a versão 5.0.4, que adicionou a função “sanitize_file_name” e tentou remover caracteres especiais, pontos, barras e qualquer coisa que pudesse ser usada para substituir a etapa de sanitização de texto.
Esta foi a versão que o Patchstack testou e achou vulnerável, então eles informaram ao desenvolvedor que a correção não havia mitigado o problema suficientemente.
Eventualmente, o autor lançou a versão 5.0.5 que implementava a função “realpath” do PHP, prevenindo resoluções maliciosas de nomes de caminhos.
Esta versão foi lançada na semana passada, em 28 de janeiro de 2022, e neste momento só foi instalada aproximadamente 380.000 vezes de acordo com as estatísticas de download do WordPress.
Com o plugin instalado em mais de 1 milhão de sites WordPress, isso significa que existem mais de 600 mil sites que ainda não aplicaram a atualização de segurança.
Se você está entre os muitos que usam Essential Addons for Elementor, você pode obter a versão mais recente aqui ou aplicar a atualização diretamente no painel do WP.
Para evitar que os atores aproveitem as falhas de inclusão de arquivos locais mesmo quando não puderem ser mitigadas diretamente, siga estas etapas:
- Salve seus caminhos de arquivo em um banco de dados seguro e forneça um ID para cada um.
- Use arquivos de lista de permissões verificados e protegidos e ignore todo o resto.
- Não inclua arquivos em um servidor web que possam ser comprometidos, mas use um banco de dados.
- Faça com que o servidor envie cabeçalhos de download automaticamente em vez de executar arquivos em um diretório especificado.