Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resumen —EMV es el protocolo estándar internacional para en Francia y Bélgica para realizar transacciones fraudulentas por ca. 600.000
pago con tarjeta inteligente y se utiliza en más de 9 mil millones de tarjetas en todo el mundo. A euros [10]. La falla subyacente de Murdoch et al. El ataque es que la respuesta de
pesar de la seguridad anunciada por el estándar, anteriormente se han descubierto varios
la tarjeta a la solicitud de verificación del PIN de la terminal no está autenticada.
problemas, derivados de fallas lógicas que son difíciles de detectar en la extensa y compleja
especificación de EMV, con más de 2000 páginas.
Algunos de los problemas de seguridad identificados son el resultado de
Formalizamos un modelo simbólico integral de EMV en Tamarin, un veri fi cador de implementaciones defectuosas del estándar. Otros surgen de fallas lógicas cuyas
protocolo de última generación. Nuestro modelo es el primero que admite un análisis reparaciones requerirían cambios en toda la infraestructura de EMV. Identificar tales
detallado de todas las garantías de seguridad relevantes que EMV pretende ofrecer.
fallas está lejos de ser trivial debido a la complejidad del flujo de ejecución de EMV,
Usamos nuestro modelo para identificar automáticamente fallas que conducen a dos
que es altamente flexible en términos de modos de autenticación de tarjetas, métodos
ataques críticos: uno que defrauda al titular de la tarjeta y otro que defrauda al
comerciante. En primer lugar, los delincuentes pueden usar la tarjeta Visa sin contacto de verificación de titulares de tarjetas y autorizaciones en línea / fuera de línea. Esto
de la víctima para compras de alto valor, sin conocer el PIN de la tarjeta. Creamos una plantea la cuestión de cómo podemos explorar sistemáticamente todos los fl ujos
arXiv: 2006.08249v1 [cs.CR] 15 de junio de 2020
aplicación de Android de prueba de concepto y demostramos con éxito este ataque en posibles y mejorar el estándar para evitar otros veinte años de ataques.
terminales de pago del mundo real. En segundo lugar, los delincuentes pueden engañar
a la terminal para que acepte una transacción inofensiva, que el banco emisor debería
rechazar más tarde, una vez que el delincuente se haya llevado los bienes. Este ataque
es posible para implementaciones siguiendo el estándar, aunque no lo probamos en
terminales reales por razones éticas. Finalmente, proponemos y verificamos mejoras al Enfoque adoptado: romper, arreglar, verificar
estándar que previenen estos ataques, así como cualquier otro ataque que viole las
En este artículo nos centramos en la debilidad y las mejoras del diseño del
propiedades de seguridad consideradas. Las mejoras propuestas se pueden
implementar fácilmente en los terminales y no afectan las tarjetas en circulación. protocolo EMV. Presentamos un modelo formal e integral para el análisis simbólico de
la seguridad de EMV. Nuestro modelo está escrito en Tamarin [11], [12], una
herramienta de verificación de última generación que se ha utilizado para estudiar
numerosos protocolos del mundo real, incluyendo TLS 1.3 [13] y autenticación 5G
[14]. Tamarin admite la verificación del protocolo en presencia de adversarios
Términos del Índice —EMV; seguridad de pago; Fraude de tarjeta de credito; Visa;
Omisión de PIN; autenticación; análisis formal poderosos y muchas sesiones de protocolo simultáneas sin límites.
Yo NTRODUCCIÓN Nuestro modelo admite el análisis de todas las propiedades que deben mantenerse en
cualquier transacción EMV. Una descripción informal de las tres propiedades más
EMV, que lleva el nombre de sus fundadores Europay, Mastercard y Visa, es el estándar
relevantes es la siguiente:
mundial para el pago con tarjeta inteligente, desarrollado a mediados de la década de 1990.
A diciembre de 2019, más del 80% de todas las transacciones con tarjeta presente a nivel 1) El banco acepta transacciones aceptadas por la terminal: No trans-
mundial utilizan EMV, llegando hasta el 98% en muchos países europeos. Los bancos La acción aceptada por el terminal puede ser rechazada por el banco.
tienen un fuerte incentivo para adoptar EMV debido a la cambio de responsabilidad, lo que
libera a los bancos que utilizan el estándar de cualquier responsabilidad por disputas de 2) Autenticación al terminal: Todas las transacciones aceptadas
pago. Si la transacción en disputa fue autorizada por un PIN, entonces el consumidor por el terminal son autenticados por la tarjeta y, si se autoriza en línea,
utilizó una firma en papel, se le cobrará al comerciante. 3) Autenticación al banco: Todas las transacciones aceptadas por
el banco está autenticado por la tarjeta y el terminal.
Nuestro modelo considera fielmente los tres roles presentes en una sesión EMV:
el banco, el terminal y la tarjeta. Los modelos simbólicos anteriores fusionan la
EMV: 20 años de vulnerabilidades terminal y el banco en un solo agente [15] - [17]. Esta fusión implica incorrectamente
Además del cambio de responsabilidad, la aceptación global de EMV también se que el terminal puede verificar todas las pruebas criptográficas producidas por la
atribuye a su seguridad anunciada. Sin embargo, la seguridad de EMV ha sido tarjeta que el banco puede. Esto es incorrecto ya que la tarjeta y el banco
cuestionada en numerosas ocasiones. Ataques de intermediario (MITM) [1], clonación comparten una clave simétrica que solo ellos conocen.
de cartas [2], [3], ataques de degradación [3], ataques de retransmisión [4] - [7] y
skimming de cartas [8], [9 ] son todos ejemplos de aprovechamientos exitosos de las Utilizando nuestro modelo, identificamos una violación crítica de las propiedades de
deficiencias del estándar. El ataque MITM informado por Murdoch et al. [ 1] se cree autenticación mediante el protocolo sin contacto de Visa: el método de verificación del
que fue utilizado por delincuentes en 2010-11. titular de la tarjeta utilizado en una transacción, si lo hay, no está autenticado ni protegido
criptográficamente contra
modi fi cación. Desarrollamos una aplicación de Android de prueba de concepto que actas. En base a estas con fi guraciones, proponemos soluciones que se
aprovecha esto para omitir la verificación del PIN montando un ataque pueden implementar en los terminales de pago y descartar brechas de
man-in-the-middle que instruye al terminal que no se requiere la verificación del PIN seguridad.
porque la verificación del titular de la tarjeta se realizó en el dispositivo del Tenga en cuenta que nuestro enfoque está en el diseño de EMV, no en las implementaciones
consumidor (por ejemplo, un teléfono móvil). Esto permite a los delincuentes utilizar en sí mismas. De esta manera, podemos poner fin a la carrera de armamentos de penetrar y
cualquier tarjeta Visa robada para pagar bienes caros sin el PIN de la tarjeta. En parchear, donde los atacantes continuamente encuentran y explotan las debilidades del protocolo.
otras palabras, ¡el PIN es inútil en transacciones sin contacto de Visa! Por supuesto, esto es solo una parte del panorama general, ya que los atacantes aún pueden
requisito previo para cualquier esfuerzo de "pila completa" para desarrollar formalmente un
Hemos probado con éxito nuestro ataque de omisión de PIN en terminales del protocolo verificado, hasta el nivel de código
mundo real para una serie de transacciones con tarjetas de la marca Visa, como
Visa Credit, Visa Electron y V Pay. Por ejemplo, realizamos una transacción de ca. $
Organización
190 en una terminal atendida en una tienda real. Como ahora es común que los
consumidores paguen con sus teléfonos inteligentes, el cajero no puede distinguir En la Sección II describimos el trabajo relacionado, centrándonos en análisis de
las acciones del atacante de las de cualquier titular legítimo de la tarjeta. Por seguridad EMV anteriores. En la Sección III proporcionamos antecedentes sobre el
razones éticas, realizamos todas nuestras pruebas con nuestras propias tarjetas de protocolo EMV. En la Sección IV presentamos nuestro modelo formal de EMV, centrándonos
crédito / débito. Sin embargo, destacamos que el ataque funciona para cualquier en cómo modelamos las numerosas configuraciones de EMV y cómo de fi nimos y
tarjeta Visa que posea el atacante, en particular con tarjetas robadas. analizamos sus propiedades de seguridad. En la Sección V presentamos los resultados de
este análisis. Más adelante, en la Sección VI, describimos una aplicación de Android que
desarrollamos y usamos para mostrar que nuestros hallazgos de Tamarin pueden
Nuestro análisis simbólico también revela que, en una transacción sin contacto sin convertirse en ataques del mundo real. Como resultado de nuestro análisis, sugerimos
contacto con una tarjeta Visa o una tarjeta Mastercard antigua, la tarjeta no autentica mejoras a los terminales que garantizan transacciones seguras. Sacamos conclusiones en la
en el terminal el criptograma de aplicación (AC), que es una prueba criptográfica Sección VII.
terminal para que acepte una transacción inútil no auténtica. Realizamos todas nuestras pruebas utilizando nuestras propias tarjetas de crédito / débito.
Más adelante, cuando el adquirente envíe los datos de la transacción como parte Además, hemos notificado a Visa de los ataques descubiertos.
propio ataque de omisión de PIN, que presentamos en este documento. [7] sugieren el uso de protocolos de límite de distancia [22], [23] como contramedida a tales
ataques. Aunque el límite de distancia previene los ataques de retransmisión, solo Mastercard
Poco después, De Ruiter y Poll [15] dieron un modelo ProVerif [18] de una parece inclinarse a usarlo. Los ataques de retransmisión generalmente se ignoran porque
variante del protocolo de contacto EMV. Resumen más de 700 páginas de especi fi presumiblemente solo son factibles para transacciones pequeñas, ya que las transacciones más
caciones EMV en 370 líneas de código F #, que transforman al lenguaje ProVerif grandes requieren la verificación del titular de la tarjeta.
por el banco, el terminal valida la firma de la tarjeta en los detalles de la de tarjeta, existen tres métodos:
A. Inicialización
3) Autenticación dinámica de datos combinada (CDA): esto es
El primer paso de una transacción EMV es la selección de la aplicación. El
similar a la DDA pero incluye los detalles de la transacción en la SDAD, por
terminal emite el SELECCIONE comando con la cadena 1PAY.SYS.DDF01 (en
ejemplo, el monto de la transacción.
bytes), que se refiere al entorno del sistema de pago de contacto (PSE), o
2PAY.SYS.DDF01 para contactless. La tarjeta responde con la secuencia de C. Verificación del titular de la tarjeta
identificadores de aplicación (AID). En la respuesta, la tarjeta también puede Un método de verificación del titular de la tarjeta (CVM) puede ser una firma en papel,
solicitar la Lista de objetos de datos de procesamiento (PDOL), que es una lista de verificación con PIN, CVM de dispositivo de consumidor (CDCVM) o una combinación de
datos de transacciones de origen terminal. El PDOL generalmente incluye la estos. Para la verificación del PIN, existen tres métodos específicos:
cantidad, el código de país, la moneda, la fecha, el tipo de transacción y el número
aleatorio UN de la terminal (llamado Número impredecible en la terminología de
1) PIN de texto plano sin formato ( o simplemente PIN simple): la terminal
EMV).
envía el VERIFICAR comando junto con el PIN introducido y la tarjeta
responde con el mensaje de éxito 9000 si el PIN es correcto o el mensaje de
El terminal emite el OBTENGA OPCIONES DE PROCESAMIENTO
error 63C X, donde el digito X es el número de intentos restantes. Cuando no
comando junto con los datos PDOL, si lo solicita la tarjeta. La tarjeta responde
quedan intentos, es decir, x = 0, entonces la tarjeta debe responder con el
con el Perfil de intercambio de aplicaciones de 2 bytes (AIP, que indica los
mensaje de PIN bloqueado 6983 a cualquier posterior VERIFICAR
métodos de autenticación admitidos y si se admite la verificación del titular de
la tarjeta) y el Localizador de archivos de aplicación (AFL, que apunta a una
peticiones.
lista de archivos y registros que el terminal debe leer). la tarjeta). El terminal
2) PIN cifrado de fl ine ( o simplemente PIN cifrado): el
luego aprende estos registros usando el
terminal envía el OBTENGA EL RETO comando y la tarjeta responde con
un número aleatorio. Entonces el terminal emite el VERIFICAR comando
LEER REGISTRO mando. Los registros suelen incluir:
cuya carga útil es una encriptación, con el PK de la tarjeta, del PIN
• el Número de cuenta principal (PAN, comúnmente conocido como el número de ingresado y el número aleatorio recibido, y el relleno aleatorio generado
tarjeta), la fecha de vencimiento de la tarjeta y otros datos estáticos; por el terminal. Tras la recepción, la tarjeta descifra la carga útil y
responde en consecuencia, utilizando los mensajes descritos en el
• el índice de la CA utilizada, el certificado emitido por la CA de la PK del método de PIN simple.
banco y el certificado PK de la tarjeta emitida por el banco, si la tarjeta admite
cifrado asimétrico; 3) PIN cifrado en línea ( o simplemente PIN en línea): la tarjeta
• la primera y segunda listas de objetos de datos de gestión de riesgos de tarjetas no está involucrado. En cambio, el terminal envía el PIN ingresado
(CDOL1 y CDOL2, respectivamente), que normalmente incluyen el PDOL y otros encriptado al banco emisor, cuando solicita la autorización de la
datos de transacciones; y transacción.
• la lista de CVM compatibles. El CVM de dispositivo de consumidor está diseñado para ser realizado por
Del índice de la CA, el terminal recupera el PK de la CA de una base de dispositivos como teléfonos móviles, que autentican al titular de la tarjeta mediante
datos interna y luego verifica el certificado del banco. Posteriormente, del huellas dactilares o reconocimiento facial. Cómo el terminal y el dispositivo conducen
certificado del banco, la terminal CDCVM está fuera de EMV
Tarjeta Terminal Banco
C T si
SELECCIONE, 1PAY.SYS.DDF01
SELECCIONE, AYUDA X
AIP, AFL
LEER REGISTRO
Comienza la AOD
AUTENTICADO INTERNO, Naciones Unidas
TA comienza
X = 〈 PDOL, CDOL1 〉
AC = MAC s ( X, AIP, ATC, IAD)
T = h (X, CID, ATC, AC, IAD)
SDAD = firmar privC ( NC, CID, AC, [ T,] NACIONES UNIDAS)
CID, ATC, AC / SDAD, IAD PAN, AIP, X, ATC, IAD, AC [, aenc pubB ( ALFILER)]
ARPC = MAC ′ s( Y)
Fig. 1. Descripción general de la transacción EMV. Los mensajes discontinuos y los términos entre corchetes son opcionales, dependen de pasos previos o dependen de las elecciones de las partes. Para
simplificar, este gráfico solo muestra el flujo de ejecución en el que las respuestas de la tarjeta tienen el avance de éxito 9000.
Notación: ⊕ es OR exclusivo; F es una función unidireccional; ( privC, pubC), (privB, pubB), y ( privCA, pubCA) son los pares PKI de la tarjeta, el banco y
la CA, respectivamente; cert k ( cont) es el certi fi cado PKI en cont firmado con la clave privada k; firmar k ( metro) es la firma en metro con la llave k; aenc k ( metro)
es el cifrado asimétrico de metro con la llave k; MAC k ( metro) y MAC ′ k( metro) son MAC en metro con la llave k; pags si( metro) es el relleno derecho de metro con si
cero bytes.
alcance. Sin embargo, este método es la causa fundamental de uno de los nuevos IV. METRO ODELING Y UNA NÁLISIS METRO Etodología
ataques que informamos en este artículo.
Para modelar y analizar el estándar EMV, utilizamos la herramienta de verificación
Si la tarjeta responde con un TC y el CVM elegido no era un PIN en línea, Esta regla establece que, si hay un término metro entrada en la red, luego actualice el
entonces se aprueba la transacción y el TC sirve como un acuerdo para indicarle estado local de UNA a Estado1 ( A.m), eliminar metro
al banco que transfiera los fondos a la cuenta del comerciante. de la red y generar el término h (m) en la red, posiblemente para la recepción
por UNA socio de comunicación. La transición está etiquetada con SentHash ( A.m),
Si la transacción debe ser autorizada en línea, el terminal reenvía al banco significa que UNA
los detalles de la transacción, el ARQC, y si la verificación del PIN en línea fue envió el hash de metro.
el CVM seleccionado, el PIN ingresado. El banco autoriza o rechaza la En lo que sigue, dejemos F ser el universo de hechos y R el universo de las reglas.
transacción devolviendo al terminal el Código de respuesta de autorización de Mientras PAGS(.) denota el conjunto de potencias de un conjunto, usamos METRO(.) para
2 bytes (ARC, autorización / rechazo y más datos) y el Criptograma de referirse al poder multiset de un conjunto. Definimos la función lineal: M (F) → M (F) que
respuesta de autorización (ARPC). Este último es un MAC generado sobre el rinde todo lineal hechos a partir del conjunto múltiple de hechos de entrada. Los hechos
OR exclusivo del ARC (relleno a 8 bytes) y el criptograma ARQC recibido, lineales anotan recursos que pueden consumirse solo una vez, como los mensajes en la
utilizando la clave de sesión s. El terminal luego emite el red. Los hechos que no son lineales se llaman
La r,
Una transición consume los hechos lineales de l del estado actual, agrega los hechos de propiedad
y etiquetaanterior, con con
la transición ′ Terminal ′ ∈ T Σ yque
a. establece 〈〉 ∈ Σ, que la terminal T comete
siempre
a una transacción
Una ejecución de PAGS es una secuencia finita ( s 0, una 1, s 1,. . . , una norte, s norte) t con su socio de comunicación PAGS , entonces tambien PAGS , en rol
una
tal que s 0 = ∅ y s yo - 1→ s- yo
yo para todos 1 ≤ yo ≤ norte. los r ∈ { ′ Tarjeta ′, ′ Banco ′} ⊆ T Σ, estaba corriendo el protocolo con T
y están de acuerdo en
secuencia ( una 1,. . . , una norte) es un rastro de PAGS y el conjunto de todos PAGS las huellas se denotan trazas t, o un agente, presuntamente honesto, ha sido
(P). Se especifican las propiedades de seguridad comprometidos. Además, hay una Cometer hecho para cada par de transacción
utilizando fórmulas lógicas de primer orden en trazas. Se pueden encontrar más detalles aceptada y agente de aceptación, lo que significa que se evitan los ataques de
sobre la sintaxis y la semántica de Tamarin en [11], [12]. reproducción.
Los hechos Cometer y Corriendo, introducidos en [28], se utilizan para especificar
propiedades de autenticación. UNA Cometer hecho representa la creencia de un agente
B. Propiedades de seguridad sobre el estado local de su socio de comunicación, mientras que Corriendo representa el
estado real del socio.
Como hemos visto, EMV involucra a tres partes: la con- Por lo tanto, las propiedades de autenticación se expresan en términos de ocurrir siempre que el
La tarjeta del consumidor, el terminal del comerciante y el titular de la tarjeta que se comunican pares coincidentes de tales hechos. En nuestros modelos, Cometer hechos cuando la
banco. Sus propiedades centrales de seguridad conciernen a las partes y al secreto de agente comprometido se encuentre en un estado satisfactorio.
entre sí, garantizan la información de la transacción, a continuación. transacción está lista para ser aceptada.
los datos sensibles. Formalizamos estas propiedades Nuestra tercera propiedad también es una propiedad de autenticación y es
falla. no es conocido por el atacante. El conocimiento del atacante de un término X está escrito como KU
( X), dónde KU ∈ Γ es un símbolo de hecho definido por las reglas incorporadas de Tamarin que
De fi nición 1 ( El banco acepta). Un protocolo PAGS satisface la propiedad de que el el banco modelan cómo el atacante adquiere conocimiento. La definición de secreto también asume que
acepta transacciones aceptadas por la terminal Si por los agentes involucrados no están comprometidos.
cada α ∈ trazas (P):
t y las pruebas criptográficas asociadas proporcionadas por la tarjeta. Es decir, el número PIN, el PAN (es decir, el número de tarjeta) y las claves (es decir, claves
cuando el terminal emite un recibo de compra. los BankDeclines ( t) El hecho se privadas y claves compartidas simétricas).
produce cuando el banco recibe una solicitud de autorización para la transacción con También consideramos otras propiedades como ejecutabilidad,
un criptograma de aplicación incorrecto. La última línea descarta transacciones en las lo que permite evaluar si la ejecución de un protocolo alcanza un estado en el
que un agente, presuntamente honesto, se ha visto comprometido. Por ejemplo, un que el banco y el terminal han aceptado una transacción y no se han producido
banco que rechaza maliciosamente una transacción correcta no debe hacer que la compromisos. Esto representa una verificación de cordura que muestra que el
propiedad falle. protocolo modelado se comporta como se esperaba y permite ejecuciones de
protocolos sin la participación del adversario. Esto asegura que no haya errores
de modelado que harían inoperante el protocolo especificado y darían lugar a
Nuestra segunda propiedad corresponde a la propiedad de autenticación
resultados falsos.
comúnmente conocida como acuerdo inyectivo [ 28], [29].
De fi nición 4 ( Ejecutabilidad). Un protocolo PAGS es ejecutable Si • Bajo: indica una transacción de bajo valor.
α ∈ rastros (P) existe tal que: Automatizamos la generación de modelos de destino y el lector interesado
puede encontrar los detalles técnicos en el Apéndice A, así como en nuestras
∃ t, C, B, nc, i, j, k, l.
teorías Tamarin y su README [32].
Corriendo( C, nc, 〈 ′ Tarjeta ′, ′ Terminal ′, t 〉) ∈ α yo ∧
En nuestros modelos, consideramos que los siguientes datos de transacción deben
Cometer( nc, C, 〈 ′ Tarjeta ′, ′ Terminal ′, t 〉) ∈ α j ∧ acordarse para las propiedades de autenticación (es decir, el término t en las de fi niciones de
modelos: Tanto para los modelos con contacto como sin contacto, entre los controlados por el
2) uno para el Protocolo EMV sin contacto, modelando el inyectar y modificar los datos transmitidos. Entre el banco y la terminal (y
Visa [31].
Asumimos que las tarjetas Mastercard físicas tienen borrado el segundo bit del primer
Cada uno de estos dos modelos captura todas las ejecuciones posibles del
byte de AIP. Este bit describe si se admite el CVM de dispositivo de consumo. Esta
Entorno del sistema de pago correspondiente (con o sin contacto), incluidas las
suposición es razonable ya que solo las tarjetas "virtuales" (es decir, las tarjetas
transacciones simultáneas con diferentes tarjetas, terminales, tipos de
registradas en aplicaciones móviles como ApplePay o Google Pay) tienen este bit
autenticación, métodos de verificación del titular de la tarjeta y todas las demás
configurado. Tenga en cuenta que esto no significa que un adversario no pueda intentar
configuraciones. Por ejemplo, el modelo de protocolo sin contacto permite
establecer este bit. Los AIP de Visa dependen de la transacción y la selección del CVM
ejecuciones entre un terminal, que cree estar en una transacción Visa, y tres
del dispositivo de consumo no está determinada por el AIP, sino por los Calificadores de
tarjetas, que pueden ser diferentes a las tarjetas Visa. Claramente, si el sistema
transacciones con tarjeta (CTQ).
puede alcanzar un estado en el que la transacción sea aceptada depende de los
mensajes reales y las pruebas criptográficas que reciben el terminal y el banco.
También asumimos que las terminales no completan transacciones sin contacto
de alto valor con tarjetas que (aparentemente) no admiten la verificación del titular
de la tarjeta. En tales transacciones, la práctica común de los terminales es
Tamarin exhibe una violación de propiedad al construir un rastro que
rechazar el intento e indicar al titular de la tarjeta que cambie a la interfaz de
contradice la propiedad dada. Claramente, Tamarin no puede generar todos estos
contacto.
rastros, ya que hay infinitos (simplemente agregando pasos no relacionados), si
existe alguno. Ejecutar Tamarin en los modelos genéricos, por lo tanto, conducirá V. A NÁLISIS R ESULTADOS
a una verificación exitosa o un rastro de ataque, violando la propiedad, con la
Llevamos a cabo un análisis de seguridad automatizado a gran escala de tions:
40 configuraciones de EMV, que incluyen ambos tipos de análisis integral de
Tipo de tarjeta y método de autenticación "menos seguro", entre los que se encuentran
contact y contactless. Describimos los resultados de este
otros ajustes. Sin embargo, uno podría estar interesado, por ejemplo, en
transacciones en esta sección y posteriormente muestran
la propiedad de autenticación ante el banco, específicamente la autenticación de datos
cómo se pueden aprovechar algunos de estos defectos en ataques prácticos.
transacciones en las que la tarjeta usaba Combined Dynamic
(CDA, retiro de la Sección III-B) y la A. Resultados del análisis del protocolo de contacto EMV
El valor de la transacción fue alto, es decir, por encima del límite requerido por CVM. Nuestros resultados de análisis para las 24 configuraciones de la EMV
Con esto en mente, empleamos una estrategia de modelado que El protocolo de contacto se resume en la Tabla I. Aunque existe una formalización y
genera automáticamente modelos específicos de Tamarin a partir de los dos que usamos con fi No hay grandes sorpresas aquí, los resultados ilustran los bene fi cios que ambos
modelos genéricos. Para generar automáticamente los modelos específicos, de argumentos un análisis exhaustivos. En particular, los protocolos y los ataques que, hasta
guraciones de destino. Una configuración de destino es una opción para verificar las propiedades redescubrimos, ataques conocidos al contacto, pero relativamente difíciles de llevar
que seleccionan las transacciones para las que queremos configurar, determinar lo que donde sabemos, son nuevos, tienen una relevancia práctica limitada. Tenga en
de seguridad. Un modelo genérico y un ejemplo de destino, Visa DDA Low es un modelo de a cabo en la práctica y, por lo tanto, resultados para el secreto de la mesa porque
llamamos un modelo de destino. Para el modelo de protocolo sin contacto (genérico) con los cuenta que hemos omitido todos los modelos. Todos nuestros modelos y pruebas
destino generado a partir del son idénticos para
argumentos de destino: están disponibles en [32]. minal y la tarjeta y entre el banco y la tarjeta, en el
• DDA: se refiere al método de autenticación de datos of fl ine Nuestro análisis reveló desacuerdo, tanto entre los
(conocido como rápido DDA en [31]), y
TABLA I
UNA RESULTADOS DEL NÁLISIS PARA EL EMV PROTOCOLO DE CONTACTO. UNA LL LOS MODELOS OBJETIVO TIENEN 55 REGLAS. T LAS ÚLTIMAS DOS COLUMNAS INDICAN, EN ESE ORDEN, EL NÚMERO DE LÍNEAS DE T CÓDIGO
AMARIN QUE COMPRENDE EL MODELO Y EL TIEMPO QUE NOS TIENE T ANÁLISIS AMARIN, USANDO 10 HILOS Y COMO MÁS 20 GB DE RAM POR MODELO, EN UN SERVIDOR DE COMPUTADORA EN EJECUCIÓN U BUNTU 16.04.3
CON DOS yo NTEL ( R) X EÓN( R) E5-2650 V 4 a 2.20 GH Z
UPC S (CON 12 CADA UNO) Y 256 GB DE RAM. T LOS MODELOS PARA LOS CUALES SE VERIFICARON LAS CUATRO PROPIEDADES ESTÁN DESTACADOS EN NEGRITA.
Propiedades
No. Modelo de destino LoC Hora
ejecutable el banco acepta auth. a la terminal auth. al Banco
17 X X × ( 1) × ( 1) 763 1h55m31s
18 X X × ( 1) × ( 1) 766 14 min 10 s
Leyenda:
(1): no está de acuerdo con la tarjeta del CVM utilizado (2): no está de acuerdo con la tarjeta del último AC
CVM seleccionado para transacciones usando SDA o verificación de PIN fuera de línea La especificación de EMV no es explícita al respecto) y se ha probado con éxito con
(simple o cifrada) (Tabla I, Observación 1). tres tarjetas Mastercard diferentes utilizando nuestra aplicación de Android. Tales
pruebas, a pesar de que se realizaron sin contacto, nos dan un cierto grado de con fi
Para las transacciones en las que el terminal realizó una verificación de PIN sin
anza de que también ocurre con transacciones de contacto.
errores, nuestro análisis identifica un rastro que representa el ataque de bypass de
PIN observado por primera vez por Murdoch et al. [ 1] para transacciones con
SDA. En este ataque, un hombre en el medio envía el éxito respuesta a la solicitud Nuestro análisis también muestra que todas las transacciones que utilizan SDA o
de verificación del PIN del terminal. La solicitud real está bloqueada y, por lo tanto, DDA son vulnerables a una modificación del criptograma de transacción (TC). Esto se
la tarjeta cree que no se requirió la verificación del PIN, por lo que el desacuerdo debe a que en ninguno de estos métodos la tarjeta autentica el TC en el terminal
entre el terminal y la tarjeta. El terminal reenvía la transacción al banco (ya sea (Tabla I, Observación 2).
para la autorización en línea o para cobrar los fondos), lo que luego conduce al En cuanto al secreto, los resultados son idénticos para todos los modelos. Las
desacuerdo entre el banco y la tarjeta. claves (privadas y compartidas) son secretas, mientras que el PAN no lo es.
Curiosamente, nuestro análisis informa que el PIN no es secreto. Un ataque
man-in-the-middle entre la tarjeta y el terminal puede usar la clave privada de un
Un requisito previo para que este ataque tenga éxito es que, incluso si el terminal banco comprometido para producir los registros de la tarjeta necesarios para que el
envía a la tarjeta el campo Resultados del método de verificación del titular de la tarjeta terminal crea que el único CVM que admite la tarjeta es un PIN simple. Estos registros
(CVMR, etiqueta 9F34), que codifica la vista del terminal del CVM utilizado, y la tarjeta (falsos) son dobles: una lista de CVM admitidos compuesta únicamente por un PIN
detecta la falta de coincidencia con su propia vista del CVM utilizado, la tarjeta no no abortar
simple y un SSAD o un certificado PKI de una tarjeta que valida dicha lista de CVM.
la transacción. Este parece ser el caso en la práctica (aunque Por tanto, la terminal se degrada a
la verificación simple del PIN y, en consecuencia, el PIN ingresado por el titular de la tarjeta posible porque no se ofrece protección criptográfica del CTQ. Esta falla es
puede ser interceptado y aprendido por el atacante. Sin embargo, este es un ataque no crítica ya que permite que un atacante omita la verificación del PIN para
trivial, ya que llevarlo a cabo en la práctica requiere que el atacante: transacciones de alto valor con la tarjeta de la víctima, como se señaló en la
introducción.
1) conoce la clave privada de un banco comprometido y En términos de secreto, los resultados son idénticos para todos los modelos y son los
2) controla discretamente la interfaz de contacto del terminal. esperados. Las claves (privadas y compartidas) y el PIN son secretos, mientras que el
PAN no lo es.
Nuestro modelo considera que estas dos condiciones son posibles, al menos en teoría.
Sin embargo, en la práctica son bastante difíciles de conseguir. Observamos que un Resumen: Nuestro análisis veri fi ca que las transacciones con tarjetas Mastercard
solo banco comprometido es suficiente, y no es necesario que sea el que emitió la compatibles con CDA que admiten la verificación del PIN en línea son seguras.
tarjeta de la víctima. Afortunadamente, este es el tipo más común de tarjetas Mastercard que emiten los
Resumen: Demostramos que solo tres configuraciones del protocolo de contacto bancos actualmente. En contraste, se encontraron fallas críticas en las configuraciones
EMV garantizan transacciones seguras en términos de las tres propiedades principales comunes de tarjetas Visa que se utilizan actualmente. Estas fallas pueden convertirse
que consideramos. Todas estas configuraciones usan CDA como método de en ataques prácticos, que describimos en la siguiente sección.
potencialmente valiosos. impacto práctico de las deficiencias descubiertas por nuestro análisis formal. Nuestra
Nuestro análisis muestra que el protocolo sin contacto de Mastercard aplicación admite ataques de intermediario en la parte superior de un ataque de relevo [ 5] -
proporciona seguridad para todas las transacciones de alto valor. Durante las [7] arquitectura, que se muestra en la Figura 3. En esta arquitectura, el atacante emplea dos
transacciones que utilizan SDA o DDA, la tarjeta no autentica el criptograma de dispositivos móviles: uno que ejecuta nuestra aplicación en Emulador de punto de venta
aplicación (AC) en el terminal (Tabla II, Líneas 5, 7, 9 y 11, Observación 2). Por lo (POS) modo y el otro en emulador de tarjetas modo. Ambos dispositivos deben ser
tanto, durante de fl ine compatibles con NFC y ejecutar Android 4.4 KitKat (API nivel 19) o posterior. El dispositivo
En las transacciones que utilizan cualquiera de estos métodos, un intermediario emulador de tarjeta debe ser compatible con la emulación de tarjeta basada en host (HCE)
puede modificar el AC (o el criptograma de transacción debido a que está apagado), de Android [34].
propiedades formalizadas en las Definiciones 1 y 2. se va a atacar y el emulador de tarjeta debe mantenerse cerca de la terminal de pago. Los
dos emuladores se comunican de forma inalámbrica a través de un canal de conexión TCP /
Para nuestra sorpresa, todas las configuraciones del protocolo Visa sin contacto, IP a través de WiFi. Un ataque man-in-the-middle modifica, según corresponda:
excepto una, no brindan seguridad (el protocolo se muestra en la Figura 2). Por
ejemplo, las transacciones autorizadas fuera de línea (Tabla II, Línea 3, Observación • los comandos entrantes se leen desde el canal inalámbrico antes de
2) se pueden abusar de manera similar al problema antes mencionado con enviarlos a la tarjeta a través del canal NFC, y
Mastercard. Particularmente críticas son las violaciones de autenticación en
transacciones de alto valor en modo EMV (Tabla II, Línea 2, Observación 1). Nuestro • las respuestas de la tarjeta antes de transmitirlas al emulador de la tarjeta
análisis de Tamarin identifica un rastro de una transacción aceptada en la que ni el a través del canal WiFi.
terminal ni el banco están de acuerdo con la tarjeta en los Calificadores de
B. Pasar por alto la verificación del titular de la tarjeta
transacciones con tarjeta (CTQ). El CTQ es un campo de datos de la tarjeta que le
dice al terminal qué CVM se va a utilizar. La traza muestra que, mientras que la vista En una transacción sin contacto de Visa, la respuesta de la tarjeta a la OBTENGA
de la tarjeta del CTQ es una solicitud de verificación del PIN en línea, la vista del OPCIONES DE PROCESAMIENTO El comando lleva los cali fi cadores de
terminal indica que se realizó el CVM del dispositivo de consumo (CDCVM), lo que transacciones con tarjeta (CTQ). El CTQ es un campo de datos de 2 bytes que
hace que el terminal considere que el proceso de verificación del titular de la tarjeta se indica al terminal qué método de verificación del titular de la tarjeta (CVM) debe
ha completado con éxito. Esto es utilizarse. Como se explica en la Sección VB, nuestro análisis reveló que la tarjeta
no autentica el CTQ ni en el terminal ni en el banco (Tabla II,
TABLA II
UNA NÁLISIS R ESULTADOS PARA EL EMV PROTOCOLO SIN CONTACTO. UNA LL LOS MODELOS OBJETIVO TIENEN 60 REGLAS. T LAS ÚLTIMAS DOS COLUMNAS INDICAN, EN ESO
ORDEN, EL NÚMERO DE LÍNEAS DE T CÓDIGO AMARIN QUE COMPRENDE EL MODELO Y EL TIEMPO QUE NOS TIENE T ANÁLISIS DE AMARIN EN UN
METRO C.A. si OK PAGS RO PORTÁTIL RUNNING MAC OS 10.15.4 CON UN Q UAD- C MINERAL yo NTEL C ORE YO 7 a 2,5 GH Z UPC Y 16 GB DE RAM. T EL MODELO (S) PARA
LAS CUATRO PROPIEDADES FUERON VERIFICADAS ESTÁN DESTACADAS EN NEGRITA.
Propiedades
No. Modelo de destino LoC Hora
ejecutable el banco acepta auth. a la terminal auth. al Banco
(3)
8 NoPIN Alto Mastercard DDA OnlinePIN Bajo - - - - 792 53 s
9 X × ( 2) × ( 2) X 836 8 min 40 s
(3)
12 DDA NoPIN Alto - - - - 798 1 min 02 s
15 X X X X 839 18 min 22 s
(3)
dieciséis Mastercard CDA NoPIN alto - - - - 798 1 min 13 s
Leyenda:
X : propiedad verificada × : propiedad falsificada -: no aplicable (1): no está de acuerdo con la tarjeta en el CVM utilizado
(2): no está de acuerdo con la tarjeta en el AC (3) las transacciones de alto valor sin CVM no se completan a través de la interfaz sin contacto
Línea 2, Observación 1). Nuestra aplicación aprovecha esto e implementa un ataque mando. El TTQ es parte de la Lista de objetos de datos de procesamiento (PDOL).
man-in-the-middle que: De acuerdo con el libro EMV Security and Key Management [33], el criptograma de
aplicación (AC) es un MAC calculado sobre los datos referenciados por las listas de
• borra el octavo bit del primer byte de CTQ, que dice el
objetos de datos de la tarjeta, a saber, el PDOL, el CDOL1 y el CDOL2, si
terminal que no requiere la verificación del PIN en línea; y
corresponde. Por tanto, este criptograma (genérico) debería defenderse de la
• establece el octavo bit del segundo byte de CTQ, que dice el
modificación del PDOL y del TTQ en particular. El criptograma propiedad de Visa no
terminal que se realizó el CVM del dispositivo de consumidor.
lo hace, como se indica en [27]. Claramente, nuestro ataque funciona incluso si el
Con nuestra aplicación, hemos llevado a cabo con éxito una serie de transacciones en el
TTQ está autenticado, ya que no necesita modificación.
mundo real sin PIN por encima del límite nacional requerido por CVM con tarjetas de crédito y
débito Visa. La Figura 4 muestra capturas de pantalla de nuestra aplicación y el registro de
transacciones que se muestra en la pantalla del emulador de POS corresponde a una de
esas transacciones. Otra diferencia notable entre nuestro ataque y el de [27] está en el lado de la
implementación. Su prototipo de ataque está compuesto por dos placas Raspberry Pi
cableadas. Esta configuración es bastante llamativa y no se puede utilizar fácilmente fuera
Nuestro ataque también debería funcionar para los núcleos sin contacto EMV 6 [35]
de un entorno de laboratorio. En contraste, nuestra implementación de prueba de concepto
(Discover) y 7 [36] (UnionPay), pero estos aún no se han probado. Para evitar defraudar
es una aplicación de teléfono de apariencia inocente que puede, y ha sido, fácil de usar en
a otros, todas nuestras pruebas se llevaron a cabo con nuestras propias tarjetas de
terminales atendidos en vivo. Además, a diferencia del ataque de Galloway y Yunusov, el
débito / crédito, y en todos los ataques se pagaron los bienes adquiridos en su totalidad.
nuestro no requiere que la tarjeta y el terminal de pago estén físicamente cerca. De hecho,
se puede ampliar nuestra aplicación para que el canal de retransmisión cubra incluso
Como se discutió en la Sección II, Galloway y Yunusov [27] presentaron
distancias en el extranjero. Sorprendentemente, Visa no ha mostrado ninguna intención de
recientemente en BlackHat Europe otro ataque man-in-the-middle que también pasa
corregir tales vulnerabilidades, como se indica en [27].
por alto la verificación del PIN de Visa. En contraste con nuestro ataque de bypass de
PIN, su ataque no borra el octavo bit del primer byte de CTQ. En cambio, borra el
séptimo bit del segundo byte de los Calificadores de transacción de terminal (TTQ).
Este bit le dice a la tarjeta si el terminal requiere verificación del titular de la tarjeta Observe que nuestro ataque, así como el de [27], supone que el dispositivo del
para la transacción. atacante está físicamente dentro de la proximidad NFC de la tarjeta de la víctima. Por lo
tanto, estos ataques se pueden llevar a cabo adquiriendo la tarjeta real (por ejemplo,
El TTQ es un campo de datos de origen terminal que se pasa a la tarjeta dentro de la robándola o encontrándola si se pierde) o manteniendo el emulador POS cerca de la
carga útil del OBTENGA OPCIONES DE PROCESAMIENTO tarjeta en el
Tarjeta Terminal Banco
C T si
SELECCIONE, 2PAY.SYS.DDF01
LEER REGISTRO
ARPC = MAC ′ s( Y)
ARCO, ARPC
Fig. 2. El protocolo sin contacto de Visa. La solicitud del terminal para la verificación del titular de la tarjeta y la autorización en línea está codificada en el PDOL, específicamente en los Cali fi cadores de transacción del terminal (TTQ, etiqueta 9F66).
La respuesta de la tarjeta a las solicitudes TTQ está codificada en los Cali fi cadores de transacciones de tarjetas (CTQ, etiqueta 9F6C).
La entrada a la CA representada aquí incluye el PDOL completo según [33]; Los criptogramas patentados pueden utilizar menos objetos de datos [27].
actas; o
3b) 〈 NC, CID, AC, PDOL, ATC, CTQ, ONU, IAD, AIP 〉 es el
entrada a la SDAD, es decir, re en la Figura 2.
Hemos verificado los tres arreglos recomendados aquí. Juntos, se defienden de los
ataques informados en este documento, así como de cualquier otro ataque que intente
(a) Emulador de tarjeta (b) Emulador POS violar las propiedades de seguridad consideradas. Estos arreglos, a excepción de 3 (b),
Fig. 4. Capturas de pantalla de nuestra aplicación. El emulador de tarjeta puede mostrar la firma del titular se pueden implementar en el software / firmware de los terminales y, por lo tanto, son
de la tarjeta, en cuyo caso, debe coincidir con la firma del atacante. El registro que se muestra en el atractivos en términos de implementación porque las actualizaciones de software de
emulador POS corresponde a una transacción real de ca. $ 190 en moneda local.
los terminales deben ser significativamente menos costosas y más rápidas que otras
acciones más agresivas como el bloqueo. tarjetas en circulación y emisión de nuevas.
atractivo modelo de negocio para los delincuentes por dos razones. Primero, las
transacciones fraudulentas son de bajo valor. En segundo lugar, es probable que el
VII. C ONCLUSIONES
banco del criminal no ignore indefinidamente las quejas del comerciante defraudado.
Hemos presentado un modelo formal de la última versión del estándar EMV que
Por razones éticas, no probamos este ataque ya que constituiría un fraude real.
presenta todos los métodos relevantes para la autenticación de datos, la verificación
del titular de la tarjeta y la autorización de transacciones. Usando la herramienta
D. Defensas contra ataques a Visa Tamarin, realizamos un análisis formal, automático y a gran escala de este modelo,
descubriendo
Como se informó en la Sección VB, la configuración más común
numerosas fallas de seguridad. Estos defectos violan fundamentales sobre las
ración del protocolo sin contacto Mastercard en las configuraciones de uso actuales, por
las propiedades de seguridad, como la autenticación y otras garantías, identifican las
(es decir, CDA junto con el PIN en línea) es seguro. Los problemas de Visa se
transacciones aceptadas. También usamos nuestro modelo y probamos su
otro lado, no lo son. Afortunadamente, Visa es la que describimos a continuación. Estos
configuraciones de EMV que conducen a transacciones seguras,
pueden solucionar implementando los tres cambios que los bancos en una
exactitud.
cambios pueden ser realizados por Visa y afectar a las tarjetas actualmente en
Nuestro análisis reveló diferencias sorprendentes entre Visa y Visa, mostrando que
cantidad razonable de tiempo y esfuerzo, sin
seguridad de los protocolos de pago sin contacto de Mastercard No encontramos
circulación.
Mastercard es más segura que Visa. corriendo en tarjetas modernas. Nuestro análisis
El protocolo sin contacto de Visa [31] especifica ese especial (DDA) para
problemas importantes con la versión del protocolo de Mastercard. Deficiencias derivadas
Los lectores de propósito pueden realizar la fi guración de Autenticación dinámica de
reveló solo menores y DDA) que parecen difíciles de explotar en la práctica. Por el
transacciones en línea. Este es de hecho el único conhold (Tabla II, Línea 4). Esta no
de los modos de autenticación más antiguos (SDA Visa tiene varios problemas críticos.
datos de este protocolo en las tres propiedades de seguridad, como lo indican nuestras
contrario, los informes conducen a ataques prácticos y graves, incluido un límite de PIN.
es una configuración común de diez terminales en vivo diferentes en diferentes
Las deficiencias que eludimos para transacciones que superan la verificación del titular de
pruebas. Realizamos pruebas en más de ellos con esta configuración. Por lo tanto,
Usando nuestra aplicación de Android de prueba de concepto, realizamos tiendas.
comercios, y ninguno de los ataques de derivación descritos en la Sección VI-B,
la tarjeta probaron con éxito este ataque en -transacciones mundiales en transacciones
para evitar el PIN, los terminales deben usar DDA para transacciones en línea. Eso es
Nuestro ataque muestra que el PIN es inútil para Visa. El cambio de los bancos a los
recomendamos que los terminales deben, para todas las transacciones:
sin contacto.Como resultado, en nuestra opinión, la responsabilidad por dichas
todo
consumidores o comerciantes no está justificado, salvo que el consumidor o
transacciones: Bancos, EMVCo, Visa o alguna entidad transacciones fraudulentas.
1) establezca el primer bit del primer byte de TTQ y comerciante deba ser responsable de tal
2) verificar el SDAD.
tarjetas de consumo actualmente en circulación y, por lo tanto, pueden implementarse de manera [17] A. Debant, S. Delaune y C. Wiedling, "Un marco simbólico para analizar la proximidad física en
los protocolos de seguridad", en 38a Conferencia Anual de la IARCS sobre los fundamentos de
factible mediante actualizaciones de software.
la tecnología del software y la informática teórica, FSTTCS 2018, del 11 al 13 de diciembre de
2018, Ahmedabad, India, págs. 29: 1–29: 20, 2018.
R EFERENCIAS [18] B. Blanchet, "Un verificador de protocolo criptográfico eficiente basado en las reglas de Prolog", en 14o
[1] SJ Murdoch, S. Drimer, RJ Anderson y M. Bond, "Chip and PIN is broken", en 31 ° Simposio Taller de fundamentos de seguridad informática de IEEE (CSFW-14 2001), 11-13 de junio de 2001,
de IEEE sobre seguridad y privacidad, S&P Cape Breton, Nueva Escocia, Canadá,
págs. 82–96, 2001.
2010, 16-19 de mayo de 2010, Berleley / Oakland, California, EE. UU., págs. 433–
446, 2010. [19] K. Bhargavan, C. Fournet, AD Gordon y S. Tse, "Veri fi ed interop- erable implementations of
[2] TS Heydt-Benjamin, DV Bailey, K. Fu, A. Juels y T. O'Hare, “Vulnerabilities in first-generation security Protocols", en XIX Taller de fundamentos de seguridad informática del IEEE,
rfi d credit cards”, en Criptografía financiera y seguridad de datos, XI Conferencia (CSFW-19 2006), 5-7 de julio de 2006, Venecia, Italia, págs. 139-152, 2006.
Internacional, FC
2007, y 1er Taller Internacional sobre Seguridad Usable, USEC 2007, Scarborough, Trinidad [20] D. Dolev y AC Yao, "Sobre la seguridad de los protocolos de clave pública",
y Tobago, 12-16 de febrero de 2007. Revised Selected Papers, págs. 2-14, 2007. IEEE Trans. Teoría de la información, vol. 29, no. 2, págs. 198-207, 1983.
[21] DA Basin y C. Cremers, "Conoce a tu enemigo: comprometer a los adversarios en el análisis
[3] M. Roland y J. Langer, "Clonación de tarjetas de crédito: un ataque combinado de pre-juego y de protocolos", ACM Trans. Inf. Syst. Secur., vol. 17, no. 2, págs. 7: 1–7: 31, 2014.
degradación en EMV sin contacto", en 7o Taller de USENIX sobre tecnologías ofensivas, WOOT
'13, Washington, DC, EE. UU., Agosto [22] T. Beth e Y. Desmedt, "Fichas de identificación - o: Resolviendo el problema del gran maestro
13 de 2013, 2013. de ajedrez", en Advances in Cryptology - CRYPTO '90, 10th Annual International Cryptology
[4] S. Drimer y SJ Murdoch, "Mantén a tus enemigos cerca: saltos de distancia contra ataques de Conference, Santa Barbara, California, USA, 11-15 de agosto de 1990, Actas, págs. 169-177,
retransmisión de tarjetas inteligentes", en Actas del 16 ° Simposio de seguridad de USENIX, 1990.
Boston, MA, EE. UU., 6 al 10 de agosto de 2007, [23] S. Brands y D. Chaum, "Protocolos de límite de distancia (resumen ampliado)", en Advances
2007. in Cryptology - EUROCRYPT '93, Workshop on the Theory and Application of of
[5] L. Francis, GP Hancke, K. Mayes y K. Markantonakis, "Práctico ataque de retransmisión en Cryptographic Techniques, Lofthus, Noruega, 23-27 de mayo de 1993, Actas, págs. 344–359,
transacciones sin contacto mediante el uso de teléfonos móviles NFC" 1993.
Archivo ePrint de criptología IACR, vol. 2011, pág. 618, 2011. [24] T. Chothia, J. de Ruiter y B. Smyth, "Modelado y análisis de una jerarquía de ataques de salto
[6] L. Sportiello y A. Ciardulli, "Ataque por relevos de larga distancia", en Identi fi cación por de distancia", en 27th USENIX Security Symposium, USENIX Security 2018, Baltimore, MD,
radiofrecuencia: cuestiones de seguridad y privacidad Noveno taller internacional, RFIDsec 2013, EE. UU., 15 de agosto al
Graz, Austria, 9-11 de julio de 2013, artículos seleccionados revisados, págs. 69–85, 2013. 17, 2018., págs. 1563-1580, 2018.
[25] S. Mauw, Z. Smith, J. Toro-Pozo y R. Trujillo-Rasua, "Post-collusion security and distance
[7] T. Chothia, FD García, J. de Ruiter, J. van den Breekel y M. Thompson, “Relay cost bounding bounding", en Actas de la Conferencia ACM SIGSAC de 2019 sobre seguridad informática y
for contactless EMV payments”, en Criptografía financiera y seguridad de datos - XIX de comunicaciones, CCS
Conferencia Internacional, FC 2019, Londres, Reino Unido, 11-15 de noviembre de 2019., págs. 941–958, 2019.
2015, San Juan, Puerto Rico, 26 al 30 de enero de 2015, Artículos seleccionados revisados, págs. [26] A. Debant y S. Delaune, "Veri fi cación simbólica de protocolos de límite de distancia", en Principios
189–206, 2015. de seguridad y confianza: octava conferencia internacional, POST 2019, celebrada como parte
[8] M. Bond, O. Choudary, SJ Murdoch, SP Skorobogatov y RJ Anderson, "Chip and skim: de las conferencias conjuntas europeas sobre teoría y práctica del software, ETAPS 2019,
Cloning EMV cards with the pre-play attack", en 2014 IEEE Symposium on Security and Praga, República Checa, del 6 al 11 de abril de 2019, actas, págs. 149-174, 2019.
Privacy, SP 2014, Berkeley, CA, EE. UU., 18-21 de mayo de 2014, págs. 49–64, 2014.
[27] LA. Galloway y T. Yunusov, "Primer contacto: nuevas vulnerabilidades en los pagos sin
[9] M. Emms, B. Arief, L. Freitas, J. Hannon y APA van Moorsel, "Recolección de transacciones contacto", en Black Hat Europe 2019, 2019.
en moneda extranjera de alto valor de tarjetas de crédito EMV sin contacto sin PIN", en Actas [28] G. Lowe, "Una jerarquía de especi fi cación de autenticación", en 10º Taller de fundamentos de
de la Conferencia ACM SIGSAC de 2014 sobre seguridad informática y de comunicaciones, seguridad informática (CSFW '97), 10-12 de junio de 1997, Rockport, Massachusetts, EE. UU. págs.
Scottsdale, AZ, EE. UU., 3-7 de noviembre de 2014, págs. 716–726, 2014. 31–44, 1997.
[29] C. Cremers y S. Mauw, Semántica operativa y verificación de protocolos de seguridad. Seguridad
[10] H. Ferradi, R. Géraud, D. Naccache y A. Tria, "Cuando el crimen organizado aplica resultados de la información y criptografía, Springer,
académicos: un análisis forense de un dispositivo de escucha en la tarjeta", J. Ingeniería 2012.
criptográfica, vol. 6, no. 1, págs. 49–59, 2016. [30] EMVCo, Especi fi caciones EMV sin contacto para sistemas de pago, Libro C-2, Especificación del
[11] S. Meier, B. Schmidt, C. Cremers y DA Basin, “The TAMARIN prover for the symbolic analysis Kernel 2, Versión 2.8. Abril de 2019. EMVCo, Especificaciones EMV sin contacto para sistemas de
of security protocolos,” en Veri fi cación asistida por ordenador - 25ª Conferencia [31] pago, Libro C-3, Especificación del Kernel 3, Versión 2.8. Abril de 2019.
Internacional, CAV 2013, San Petersburgo, Rusia, 13-19 de julio de 2013. Actas, págs.
696–701, 2013. [32] Anónimo, "Un modelo Tamarin de EMV". https://github.com/EMVrace/ EMVerify, 2020.
[12] B. Schmidt, S. Meier, CJF Cremers y DA Basin, “Análisis automatizado de protocolos Dif fi Consultado: junio de 2020.
e-Hellman y propiedades de seguridad avanzadas”, en 25o Simposio de Fundamentos de [33] EMVCo, “Especificaciones de tarjetas de circuito integrado EMV para sistemas de pago, Libro 2,
Seguridad Informática del IEEE, CSF 2012, Cambridge, MA, EE. UU., 25-27 de junio de 2012, págs. Seguridad y administración de claves, versión 4.3”, noviembre
78–94, 2012. 2011.
[13] C. Cremers, M. Horvat, J. Hoyland, S. Scott y T. van der Merwe, "Un análisis simbólico [34] Google, "Descripción general de la emulación de tarjetas basada en host". https: // desarrollador.
integral de TLS 1.3", en Actas de la Conferencia ACM SIGSAC de 2017 sobre seguridad android.com/guide/topics/connectivity/nfc/hce, 2019. Consultado: diciembre de 2019.
informática y de comunicaciones, CCS 2017, Dallas, TX, EE. UU., 30 de octubre - 3 de
noviembre de 2017, [35] EMVCo, Especi fi caciones EMV sin contacto para sistemas de pago, Libro C-6, Especificación del
págs. 1773–1788, 2017. Kernel 6, Versión 2.8. Abril de 2019. EMVCo, Especi fi caciones EMV sin contacto para sistemas
[14] DA Basin, J. Dreier, L. Hirschi, S. Radomirovic, R. Sasse y V. Stetler, "Un análisis formal de la [36] de pago, Libro C-7, Especificación del Kernel 7, Versión 2.8. Abril de 2019.
autenticación 5g", en Actas de la Conferencia ACM SIGSAC 2018 sobre seguridad
informática y de comunicaciones, CCS 2018, Toronto, ON, Canadá, 15-19 de octubre de
2018, págs. 1383-1396,
UNA CRÓNIMOS
2018.
[15] J. de Ruiter y E. Poll, "Análisis formal del conjunto de protocolos EMV", en Teoría de la
CAA Criptograma de autenticación de aplicaciones. 6
seguridad y aplicaciones - Taller conjunto, TOSCA 2011, Saarbrücken, Alemania, 31 de marzo -
1 de abril de 2011, artículos seleccionados revisados, págs. 113-129, 2011.
C.A. Criptograma de aplicación. 2, 6, 8–12
AFL Localizador de archivos de aplicaciones. 4
AYUDA Identificador de la aplicación. 4 1/* si (Visa)
AIP Perfil de intercambio de aplicaciones. 4, 6, 8, 12 2 regla Terminal_Commits_ARQC_Visa :
3 dejar PDOL = < TTQ, $ monto, país, moneda,
APDU Unidad de datos de protocolo de aplicación. 3, 12
fecha, tipo, ˜UN >
ARCO Código de respuesta de autorización. 6 4 / * si (DDA) AIP = < 'DDA' , datos > endif (DDA) * / / * si (EMV) AIP = < 'EMV' , datos >
ARPC Criptograma de respuesta de autorización. 6 5 endif (EMV) * / / * if valor (bajo) = 'Bajo' endif (bajo) * /
6
ARQC Criptograma de solicitud de autorización. 6
7 / * si valor (alto) = 'Alto' endif (alto) * / transacción = < ˜PAN, AIP, CVM, PDOL,
ATC Contador de transacciones de aplicaciones. 6, 8 8 ATC,
AC, IAD >
CDA Autenticación dinámica de datos combinada. 2, 4, 6, 8, 10, 9 en
10 [ Terminal_Received_AC_Visa ($ Terminal, $ Banco,
13
11 $ CA, Carolina del Norte, 'ARQC' , transacción, ˜channelID),
CDCVM Dispositivo de consumo CVM. 2, 4, 8, 10–12 12 ! Valor ($ cantidad, valor),
CDOL Lista de objetos de datos de gestión de riesgos de tarjetas. 4, 6, 11 13 Recv ($ Banco, $ Terminal,
14 < Canal ID, 'Visa' , '2' > , < 'ARCO' , ARPC > )
CID Datos de información del criptograma. 6
]
CTQ Calificadores de transacciones con tarjeta. 8, 10-12 15 - - [ TerminalAccepts (transacción),
CVM Método de verificación del titular de la tarjeta. 2–4, 6, 8–12, 15 dieciséis Confirmar (nc, ˜PAN,
17 < 'Tarjeta' , 'Terminal' , transacción > ),
CVMR Resultados del método de verificación del titular de la tarjeta. 9
18 Comprometer ($ Terminal, $ Bank,
19 < 'Banco' , 'Terminal' , transacción > ),
DDA Autenticación dinámica de datos. 2, 4, 8–10, 12, 13 20 Honesto ($ CA), Honesto ($ Bank),
21 Honesto ($ Terminal), Honesto (˜PAN) ] ->
DDOL Lista de objetos de datos dinámicos. 4
22 []
23 endif (Visa) * /
HCE Emulación de tarjeta basada en host. 10
IAD Datos de solicitud del emisor. 8 Fig. 5. Fragmento de código Tamarin del modelo de protocolo sin contacto EMV.
Fig. 6. Fragmento de código Tamarin del modelo de destino Visa DDA High.