
Script de prova de conceito que demonstra enumeração de usuários no LiquidFiles por meio do endpoint de redefinição de senha, permitindo a identificação de usuários válidos para ataques de força bruta.
Esta vulnerabilidade foi identificada no LiquidFiles versão 4.1 e anteriores.
Ao iniciar uma redefinição de senha por meio do endpoint “POST /password_reset”, o aplicativo responde de forma diferente dependendo se o endereço de e-mail fornecido está registrado. Um redirecionamento é emitido em ambos os casos, e a resposta inclui o cookie “_filetransfer_session”. Quando esse cookie é usado para acessar o caminho raiz (“/”), a mensagem de erro resultante difere com base na validade do endereço de e-mail enviado.
Isso efetivamente permite que um atacante compile uma lista de usuários válidos, que pode então ser aproveitada em ataques como força bruta ou pulverização de senhas (password spraying).
Resposta de redefinição de senha – usuários existentes/válidos
Resposta de redefinição de senha – usuários inexistentes/inválidos
Após várias tentativas de redefinição de senha, um bloqueio baseado em IP é acionado como medida de segurança, impedindo novas solicitações do mesmo endereço IP. No entanto, esse mecanismo é insuficiente, pois pode ser contornado usando ferramentas gratuitas. Por exemplo, contorne o bloqueio usando proxies do AWS API Gateway em combinação com a extensão “IP Rotate” no Burp Suite. O script espera um proxy local na porta 8080.
Aplicativo usado para contornar o bloqueio baseado em IP:
Essa discrepância nas mensagens de erro permite a enumeração automatizada de nomes de usuário ou endereços de e-mail válidos. Para demonstrar isso, criei um script de prova de conceito que recebe uma lista de possíveis endereços de e-mail registrados e identifica os válidos com base no comportamento de resposta do aplicativo.
Saída do script de enumeração de usuários:

Uma vez identificados nomes de usuário válidos, eles podem ser aproveitados em um ataque de força bruta ou pulverização de senhas. Dado que alguns usuários podem ter senhas fracas ou reutilizadas, isso representa um alto risco de segurança.
A probabilidade de exploração é alta, as medidas de segurança atuais são facilmente contornadas e a exploração é direta. O impacto é considerado médio, pois após obter uma lista de usuários válidos, ainda é necessário comprometer uma conta por meio de ataques de pulverização de senhas ou força bruta.
Observe que este aplicativo é usado por muitas organizações diferentes. Quase sempre exposto à internet pública. Isso torna apenas uma questão de coletar endereços de e-mail ou nomes de funcionários da internet e realizar pulverização de senhas no aplicativo.
Como resultado, este problema representa um alto risco.
A versão 4.2 resolve este problema introduzindo mecanismos de bloqueio baseados em usuário e desabilitando mensagens de erro distintas que permitem a enumeração de usuários por padrão.