CVE-2018-5682: enumeração de contas no PrestaShop — reposição de palavras-passe
PrestaShop e CVE-2018-5682: explico a falha de enumeração de contas em reposição de palavras-passe, o impacto real, as versões afetadas e os passos para corrigir sem complicar a tua loja.

// nesta página (8)
Se tens uma loja PrestaShop, há uma diferença entre estar a correr uma versão antiga e estar realmente exposto a uma falha concreta. A CVE-2018-5682 é um aviso de segurança relacionado com reposição de palavras-passe. Vou explicar o que foi identificado, que condições importam e como podes agir sem transformar uma atualização numa dor de cabeça.
O que aconteceu?
A resposta de reposição de palavra-passe permitia distinguir contas existentes de endereços inexistentes.
O problema foi identificado numa funcionalidade associada ao PrestaShop. A presença do ponto de entrada, os direitos necessários e a configuração podem alterar a exposição, por isso não convém tratar todas as instalações como iguais.
O detalhe técnico: como funciona a falha
Nem todas as fugas de informação mostram dados diretamente. Uma mensagem diferente ou uns milissegundos de diferença no processo de autenticação podem permitir saber se determinado email existe na base de dados. Repetida em escala, esta observação facilita listas de contas para phishing e ataques com palavras-passe reutilizadas.
Respostas genéricas, processamento equivalente para contas existentes e inexistentes, limitação de pedidos e monitorização de padrões repetidos ajudam a reduzir este tipo de exposição. Não se deve concluir que uma conta foi comprometida apenas por existir enumeração.
Qual é o impacto real?
Em determinadas condições, o problema pode permitir confirmação da existência de contas, útil para preparar tentativas de phishing ou autenticação abusiva. Isso não significa que a loja já tenha sido atacada, nem que todas as instalações possam ser exploradas da mesma forma. A gravidade depende da versão, da configuração, da autenticação necessária e dos direitos que o processo tem no servidor.
Também convém distinguir o alcance do núcleo da aplicação do alcance de um módulo de terceiros: uma falha numa extensão não transforma automaticamente todas as lojas PrestaShop em alvos vulneráveis.
Que versões estão afetadas?
- Componente: reposição de palavras-passe
- Versões abrangidas no registo: 1.7.2.4
- Versão de correção: não confirmada
- Divulgação do registo: 2018-01-13
Estes dados servem para fazer a primeira triagem. Se usas overrides, patches próprios ou versões personalizadas, verifica também o código realmente instalado. O número de versão apresentado no back office nem sempre conta a história toda.
Como corrigir a CVE-2018-5682?
- Inventaria a instalação. Regista a versão do PrestaShop, a versão do módulo quando aplicável e o ambiente PHP. Confirma se usas reposição de palavras-passe.
- Compara as versões. O registo refere como afetadas: 1.7.2.4. Cruza este dado com o aviso do fabricante: condições especiais podem limitar o impacto.
- Cria um backup completo. Inclui ficheiros, base de dados e configurações, e ensaia a intervenção numa cópia de staging quando possível.
- Aplica a correção. Não encontrei uma versão corrigida suficientemente bem documentada para a indicar com segurança neste registo. Não é prova de que não exista correção. Confirma com o fabricante, verifica o changelog do módulo e, se necessário, desativa temporariamente a funcionalidade afetada até teres um patch validado.
- Testa o que interessa. Valida login, carrinho, checkout, área de cliente, back office, emails e integrações usadas pela loja.
- Revê a exposição anterior. Não basta a correção funcionar; se a falha esteve acessível, olha para os logs e para alterações inesperadas.
Como saber se houve uma tentativa de exploração?
Consulta os logs de autenticação, back office e API para identificar pedidos anormais ao ponto de entrada. Revê as permissões atribuídas e procura operações incompatíveis com o perfil do utilizador. Guarda evidência antes de fazer alterações num possível incidente.
Se utilizas Cloudflare ou outra WAF, considera-a uma camada de mitigação: não substitui a atualização do código vulnerável.
Ponto de atenção para developers
A verificação do código deve começar no componente indicado acima. Segue a origem dos dados recebidos por HTTP (Tools::getValue(), pedidos AJAX, uploads ou headers), identifica onde entram numa operação sensível e confirma se existem validações no servidor. Verifica também se os overrides e módulos próprios reintroduzem o mesmo padrão, mesmo depois de aplicar o patch oficial.
E se não quiser mexer sozinho na loja?
Uma intervenção segura não é apenas clicar em «atualizar». É perceber as dependências, preparar rollback, aplicar o patch adequado e garantir que o negócio continua a funcionar.
Queres que verifique e resolva esta vulnerabilidade na tua loja PrestaShop? Posso analisar as versões e os módulos, validar a exposição, aplicar as correções e testar as funcionalidades principais. Fala comigo e vemos a melhor forma de tratar disso, com calma e sem alarmismos.
Nota editorial: o conteúdo explica a informação pública disponível e não constitui prova de exploração da tua loja. Sempre que o aviso não confirma uma versão corrigida, essa limitação é assinalada expressamente.
// Fontes
- Registo CVE — CVE-2018-5682 cve.org ↗
- PrestaShield — base de vulnerabilidades PrestaShop prestashield.com ↗