Remediación contra ataques de retransmisión (es decir, NFC)

6

Pregunta primero: ¿Existe alguna solución para el MITM pasivo?

He encontrado ejemplos de ataques de retransmisión NFC que usan teléfonos para evitar el requisito de proximidad para los pagos NFC.

Se ve algo como esto: [card | phone1] ----------------------> [phone2 | terminal] (la operación normal sería [card | terminal] ).

Muchos artículos mencionan esto como una vulnerabilidad, pero no he visto ninguna manera decente de mitigar esto. La mitigación Una que veo que se describe es tener tiempos más estrictos en las transacciones, pero eso sería fácilmente derrotado con un equipo especializado, en lugar de teléfonos disponibles. Supongo que si presionas esto, en teoría podrías limitar tanto el tiempo de respuesta que sería físicamente imposible hacer la transmisión (pero luego, buena suerte, hacer que esto sea barato y confiable).

TL; DR: ¿Existe alguna mitigación posible o los requisitos de proximidad en varias tecnologías son básicamente basura?

    
pregunta domen 06.11.2014 - 11:37
fuente

2 respuestas

6

Para la tecnología NFC, la principal solución que se ha ofrecido hasta la fecha es delimitación de distancia , en la que una El intercambio de desafíos y respuestas programado persuade al verificador de que el proverista no puede estar más lejos que una cierta distancia. Esta solución, sin embargo, tiene algunos inconvenientes:

Todavía no dirá si el punto final específico con el que está hablando el verificador es el deseado o no. Solo le dirá al verificador si el prover real está cerca.
    Implica un procesamiento en tiempo real para medir el tiempo de transferencia y deducir la distancia.

    
respondido por el user3315780 12.11.2014 - 10:32
fuente
1

Esto también se aplica a las tarjetas con chip normales. No se limita a la NFC. Si logra que un usuario diseñe a un usuario para que use la tarjeta en un terminal falso, el ataque de relevo también puede ocurrir.

Una solución de límite de distancia, es aplicar lógica en el lado del servidor que verifique si un intento de autenticación específico puede ser lógicamente correcto.

Digamos que tienes 2 edificios. Uno en Nueva York y otro en Washington DC. La distancia mínima de viaje en automóvil o en transporte público es de 3 horas y 35 minutos. Todos los empleados tienen acceso a ambos edificios.

Ahora puede aplicar lógica, por ejemplo, si hay un intento de autenticación reciente con una tarjeta específica en el edificio A, cualquier intento de autenticación con la misma tarjeta en el edificio B dentro de las 3 horas y 15 minutos hará que la tarjeta se bloquee permanentemente y tenga para ser desbloqueado por el administrador después de una investigación. Esto también le da 20 minutos de margen para compensar la desincronización del reloj y alguien llegaría más rápido con el tren o el auto.

Lo mismo se puede aplicar dentro de un edificio (cálculo de velocidad de marcha) o en la red de tarjetas de pago, para garantizar que la transacción se vea "bien" (por ejemplo, el titular de la tarjeta no se teletransportó al otro lado de la Tierra en menos de 1 hora).

Esto es lo que hace la red de tarjetas de pago hoy en día, utiliza la detección de comportamiento para detectar transacciones fraudulentas. Es por eso que su banco puede llamarle para aprobar una transacción antes de que se realice en el comerciante.

    
respondido por el sebastian nielsen 19.11.2014 - 08:11
fuente

Lea otras preguntas en las etiquetas