PT-2026-24478 · Symfony+2 · Symfony+2
CVSS v3.1
8.2
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L |
Nome do Software Vulnerável e Versões Afetadas
Versões do Sylius 1.9.12, 1.10.16, 1.11.17, 1.12.23, 1.13.15, 1.14.18, 2.0.16, 2.1.12 e 2.2.3 e superiores
Descrição
O Sylius, um Framework de eCommerce de Código Aberto baseado em Symfony, contém uma condição de corrida Time-of-Check To Time-of-Use (TOCTOU) na aplicação do limite de uso de promoção. Isso afeta o contador global de usos nas entidades Promotion, o contador global de usos nas entidades PromotionCoupon e a contagem de resgates por cliente nas entidades PromotionCoupon. A vulnerabilidade surge porque as verificações de elegibilidade leem os contadores de uso da memória, enquanto os incrementos de uso reais ocorrem posteriormente sem bloqueio em nível de banco de dados ou operações atômicas. Requisições simultâneas podem contornar os limites de uso devido ao flush do Doctrine de valores absolutos em vez de incrementos atômicos e à falta de bloqueio otimista. Um atacante pode explorar isso enviando múltiplos pedidos com a mesma promoção ou cupom de uso limitado simultaneamente via o endpoint da API
'/api/v2/shop/orders/{token}/complete'. Isso permite que uma promoção ou cupom de uso único seja resgatado múltiplas vezes, potencialmente levando a perdas financeiras. Não é necessária autenticação para a exploração. Os parâmetros vulneráveis incluem a variável token no endpoint da API.Recomendações
Versão do Sylius 1.9.12 e superiores
Versão do Sylius 1.10.16 e superiores
Versão do Sylius 1.11.17 e superiores
Versão do Sylius 1.12.23 e superiores
Versão do Sylius 1.13.15 e superiores
Versão do Sylius 1.14.18 e superiores
Versão do Sylius 2.0.16 e superiores
Versão do Sylius 2.1.12 e superiores
Versão do Sylius 2.2.3 e superiores
Exploit
Correção
Race Condition
Time Of Check To Time Of Use
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Doctrine
Sylius
Symfony