Apollo · Apollo Router · CVE-2024-32971
**Nome do software vulnerável e versões afetadas**
Versões 1.44.0 a 1.45.0 do Apollo Router
**Descrição**
O problema decorre de um bug na lógica de recuperação de cache do Apollo Router. Quando o cache de planejamento de consultas distribuídas está habilitado, solicitar ao Router que execute uma operação pode resultar na execução de uma variação inesperada dessa operação ou na geração de erros inesperados. Isso pode levar a dados ou efeitos indesejados, como a obtenção de resultados incorretos para uma consulta ou o envio de mutações incorretas aos servidores de subgrafos subjacentes. Por exemplo, em vez de executar `fetchUsers(type: ENTERPRISE)`, o Router pode executar `fetchUsers(type: TRIAL)`. No caso de uma mutação, isso pode resultar no envio de mutações incorretas aos servidores de subgrafos subjacentes, como enviar `deleteUser(id: 12)` em vez de `deleteUser(id: 10)`.
**Recomendações**
Para resolver o problema, atualize para a versão 1.45.1 ou superior do Apollo Router.
Como alternativa, faça o downgrade para a versão 1.43.2 do Apollo Router.
Se não for possível atualizar ou fazer o downgrade, desative o cache de planos de consulta distribuídos removendo a configuração `supergraph.query planning.cache.redis.urls` para mitigar o problema.