Skimming de cartões no checkout: como funciona e como preveni-lo
O roubo de cartões no próprio checkout é um dos ataques mais danosos para uma loja. A melhor defesa é que os dados do cartão nunca passem pelo seu site.
O skimming digital consiste em injetar um pequeno script na página de pagamento que copia o que o cliente escreve (número do cartão, validade, CVV) e o envia para um servidor do atacante. O cliente paga normalmente e não nota nada. Semanas depois, o banco deteta a fraude.
Como chega o script
- Um módulo vulnerável que permite escrever na base de dados ou carregar ficheiros.
- Credenciais do back office roubadas: o atacante cola o script num bloco de texto ou na configuração.
- Uma biblioteca de terceiros comprometida que a sua loja carrega de fora.
A defesa mais eficaz: o cartão não passar pelo seu site
Use gateways em que os dados do cartão são introduzidos num formulário alojado pelo próprio gateway (uma página de pagamento externa ou um campo incorporado a partir do domínio dele, como o Stripe Elements ou o formulário da Redsys). Assim, mesmo que alguém injete um script na sua loja, não consegue ler esses campos.
Mais medidas
- Atualizações do PrestaShop e dos módulos, sobretudo os de pagamento e checkout.
- Dois fatores no back office.
- Política de segurança de conteúdos (CSP): limita a partir de que domínios a página de pagamento pode carregar e enviar dados.
- Vigilância de alterações em ficheiros JS e em campos da base de dados que aceitam HTML.
- Rever os scripts da página de pagamento pelo menos uma vez por mês: sabe o que faz cada um?