Snyff

#8200de 53,632
33.5CVSS total
Vulnerabilidades · 4
Alta
2
Crítica
2
PT-2024-10028
9.1
2024-12-19
Cjwt · Cjwt · CVE-2024-54150
**Nome do software vulnerável e versões afetadas** Versões do cjwt anteriores à 2.3.0 **Descrição** O problema está relacionado à confusão de algoritmos ao verificar o tipo de assinatura usada em JSON Web Tokens (JWT). Se um sistema não diferenciar entre tokens assinados por HMAC e tokens assinados por RS/EC/PS durante a verificação, ele fica vulnerável a esse tipo de ataque. Um invasor poderia criar um token com o campo `alg` definido como “HS256”, enquanto o servidor espera um algoritmo assimétrico como “RS256”. O servidor pode usar erroneamente o método de verificação incorreto, como utilizar uma chave pública como o segredo HMAC, levando a um acesso não autorizado. Para RSA, a chave pode ser calculada a partir de algumas assinaturas. Para Curva Elíptica (EC), duas chaves potenciais podem ser recuperadas a partir de uma assinatura. Isso pode ser usado para contornar o mecanismo de assinatura se um aplicativo depender de tokens assinados assimetricamente. **Recomendações** Para versões anteriores à 2.3.0, atualize para a versão 2.3.0 ou posterior para resolver o problema. Não há soluções alternativas conhecidas para essa vulnerabilidade. Como solução alternativa temporária, considere restringir o acesso ao mecanismo de verificação de tokens vulnerável até que um patch esteja disponível. Evite usar o campo `alg` no endpoint da API afetado até que o problema seja resolvido.
PT-2024-7015
9.4
2024-09-15
Navidrome · Navidrome · CVE-2024-47062
**Nome do software vulnerável e versões afetadas** Versões do Navidrome anteriores à 0.53.0 **Descrição** O problema está relacionado a injeção de SQL e contorno de autenticação no Navidrome Music Server. O Navidrome adiciona automaticamente parâmetros da URL às consultas SQL, o que pode ser explorado para acessar informações ao adicionar parâmetros como `password=...` na URL. Os nomes dos parâmetros não são escapados adequadamente, levando a injeções de SQL. Além disso, o nome de usuário é usado em uma instrução `LIKE`, permitindo que as pessoas façam login com `%` em vez de seu nome de usuário. Isso pode ser usado para vazar informações e extrair o conteúdo do banco de dados. Os invasores podem usar o endpoint da API `/api/user` para testar se algumas senhas criptografadas começam com uma string específica, permitindo-lhes realizar ataques de força bruta contra senhas. Por exemplo, os invasores podem usar a seguinte solicitação: `GET /api/user? end=36& order=DESC&password=AAA%`. Isso resulta em uma consulta SQL como `password LIKE ‘AAA%’`. **Recomendações** Para versões anteriores à 0.53.0, atualize para a versão 0.53.0 para corrigir as vulnerabilidades de injeção de SQL e contorno de autenticação. Como solução temporária, considere restringir o acesso aos pontos de extremidade da API `/api/user` e `/api/album` para minimizar o risco de exploração. Evite usar o parâmetro `password` na URL até que o problema seja resolvido. Restrinja o acesso à função `userRepository` para evitar falhas de autenticação.