PT-2024-18257 · Gradio · Gradio
CVE-2024-1729
·
Publicado
2024-02-22
·
Atualizado
2026-07-07
CVSS v3.1
5.9
Média
| Vetor | AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N |
Nome do software vulnerável e versões afetadas
Versões do Gradio anteriores à 4.19.2
Descrição
Existe uma vulnerabilidade de ataque de temporização na função de login, especificamente no arquivo
routes.py, devido ao uso de uma operação de comparação direta (app.auth[username] == password) para validar as credenciais do usuário. Isso pode ser explorado para adivinhar senhas com base nos tempos de resposta, permitindo potencialmente que um invasor contorne os mecanismos de autenticação e obtenha acesso não autorizado. A vulnerabilidade se baseia no fato de que as comparações de strings em Python são encerradas antecipadamente assim que há uma incompatibilidade de strings e, como os aplicativos Gradio não têm limitação de taxa por padrão, um usuário poderia realizar milhões de tentativas por força bruta para descobrir o nome de usuário e a senha corretos.Recomendações
Para versões do Gradio anteriores à 4.19.2, atualize para a versão 4.19.2 ou superior do Gradio para resolver o problema. Como solução temporária, considere implementar limitação de taxa nos aplicativos Gradio para minimizar o risco de exploração. Restrinja o acesso à função de login em
routes.py até que a atualização seja aplicada. Evite usar a operação de comparação direta (app.auth[username] == password) para validar as credenciais do usuário até que o problema seja resolvido.Exploit
Correção
Time Of Check To Time Of Use
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Gradio