Falha na Verificação de Assinatura do Formbricks Permite Redefinições de Senha Não Autorizadas
O Formbricks, uma plataforma de análise de código aberto, apresenta uma vulnerabilidade crítica que permite redefinições de senha não autorizadas. A falha está relacionada ao manuseio de JSON Web Tokens (JWT), onde os tokens são decodificados sem verificações de assinatura ou expiração. Isso possibilita que atacantes criem tokens arbitrários e sequestram contas de usuários. A vulnerabilidade se origina do uso inadequado da operação de decodificação (jwt.decode) em vez da verificação completa (jwt.verify), resultando na falta de validação da assinatura do token, tempo de expiração, emissor e público-alvo. Um atacante, ao obter um identificador de usuário válido, pode gerar um token com o cabeçalho alg: “none” e, em seguida, usar esse token para redefinir a senha da conta da vítima. O impacto dessa falha é significativo, pois permite não apenas a redefinição de senhas, mas também o controle de outras funcionalidades baseadas em contas, levando ao roubo de dados e manipulação de registros analíticos. Para mitigar essa vulnerabilidade, os desenvolvedores devem substituir todas as chamadas jwt.decode por jwt.verify e implementar medidas adicionais de segurança, como limitação de taxa e monitoramento de solicitações incomuns.