Evita la ejecución automática de tarjetas de crédito

0

Alguien ha estado usando una secuencia de comandos automatizada para probar las tarjetas de crédito al intentar realizar pedidos a través del proceso de pago de un sitio web ecomms que ayudo a mantener. Estoy hablando de intentar hacer pedidos de 40k en 5 horas. Estoy buscando ideas para evitar esto. El proceso de pago normal se agrega al carrito, selecciona la dirección de envío, ingresa la información de pago, la página de confirmación final.

Hemos discutido el uso de captcha durante el proceso de compra, tenemos una verificación de velocidad donde, después de tantos pedidos por la misma cuenta, en el mismo día, no recibimos más pedidos de esa cuenta. Se crean nuevas cuentas y vuelven a comenzar con la cuenta recién creada.

Cualquier idea para prevenir esta actividad es muy apreciada.

    
pregunta Joe 02.11.2016 - 16:24
fuente

1 respuesta

2

Hay muchos pasos posibles para hacer que su sitio sea menos interesante para los atacantes que intentan verificar los detalles de la tarjeta de crédito. Por ejemplo:

  • Al restringir el acceso a la pantalla de información de pago a los clientes que han completado los pasos anteriores (agregar artículo a la cesta, hacer clic en checkout, ingresar la dirección de envío), aumenta la cantidad de pasos que un atacante debe emular para obtener información útil.
  • Al usar los métodos de protección CSRF, se vuelve un poco más difícil reproducir las solicitudes, solo modificando los detalles clave. Al vincular la generación de CSRF con los medios de protección de tasa, es posible rechazar números excesivos de solicitudes antes de hacer llamadas a los sistemas bancarios; simplemente elimine cualquier solicitud sin un token de CSRF válido, y no proporcione una a ninguna sesión que intente solicitudes con demasiada frecuencia .
  • La reducción de la información devuelta por las solicitudes bancarias hace que el sistema sea menos útil para un atacante. Si pueden determinar qué información específica es incorrecta, pueden reducir el número de intentos necesarios para obtener todos los datos de una tarjeta determinada: considere una API que devuelve "mes de caducidad no válido", "año de caducidad no válido" según la información proporcionada . Requeriría un máximo de 12 solicitudes para confirmar el mes y 10 para confirmar la mayoría de los años de tarjetas (muy pocas tarjetas tienen más de 10 años de vencimiento): 22 solicitudes como máximo. Por el contrario, la misma API que devuelve "detalles inválidos" para ambos requeriría hasta 120 (12 * 10) solicitudes para estar segura de encontrar la misma información. Esta diferencia aumenta si hay más detalles agrupados de esta manera, como los detalles de la dirección o CVV.
  • Limitar el número de intentos para una dirección IP determinada en un momento dado puede ser útil, pero tenga cuidado de perder clientes legítimos si tiene mucho tráfico móvil, que a menudo aparece en direcciones IP específicas para un proveedor de teléfono determinado.
respondido por el Matthew 02.11.2016 - 17:08
fuente

Lea otras preguntas en las etiquetas