LiteSpeed Cache · cache
Afeta: lojas WooCommerce com o LiteSpeed Cache e a opção Cache REST ativa (padrão)
Em lojas WooCommerce que usam o LiteSpeed Cache, um visitante qualquer pode receber a página de carrinho ou checkout guardada de outro cliente, vendo nome, endereço, e-mail, telefone e itens da compra, e até assumir aquela sessão de compra.
Você mesmo
- Atualizar o LiteSpeed Cache para a 7.9.2 ou mais recente (a 7.9.3 é a atual).
- Limpar todo o cache do LiteSpeed depois de atualizar.
- Se não puder atualizar agora, desativar a opção Cache REST nas configurações de cache do plugin.
Seu dev ou hospedagem
- Purgar o cache de /wp-json/wc/store/v1/cart e /wp-json/wc/store/v1/checkout (wp litespeed-purge all).
- Conferir com curl sem cookies se as respostas da Store API voltam com x-litespeed-cache: hit.
- Se houver indício de vazamento, invalidar sessões do WooCommerce (tabela wp_woocommerce_sessions).
Detalhes técnicos: O LiteSpeed Cache até a versão 7.9.1, com a opção Cache REST ativa (padrão de fábrica), guarda como objetos públicos as respostas GET da Store API do WooCommerce em /wc/store/v1/cart e /wc/store/v1/checkout, sem variar o cache pelo Cart-Token ou pela sessão. Um visitante sem login pode receber a resposta em cache de outro comprador, com nome, endereço, e-mail e telefone de cobrança e entrega, itens do carrinho, o token de sessão do carrinho (JWT), o nonce e o order_key, o que pode permitir sequestrar a sessão de compra. CVSS 8.2; não há relato de exploração ativa. A correção saiu na 7.9.2, segundo fonte secundária.
