En esta quinta entrega de la serie “¿Cómo funcionan las tarjetas de pago?” se describirá de forma general la tecnología de las tarjetas inteligentes (“smart cards”) y su relación con la protección de los datos de autenticación en transacciones presenciales.


Otros artículos de esta serie:


Historia

La idea de almacenar los datos de la tarjeta de pago en una banda magnética para automatizar transacciones tuvo un impacto inmenso en la forma como se realizan las compras y se gestionan los pagos. Sin embargo, detrás de dicha tecnología (analizada en el artículo “¿Cómo funcionan las tarjetas de pago? Parte IV: Banda magnética“) se encontraban múltiples vulnerabilidades que no tardaron en ser aprovechadas por individuos malintencionados para cometer fraudes. La más importante de ellas fue la copia completa de la banda magnética para ser “clonada” en otro plástico, empleando un dispositivo denominado “skimmer“. Debido a la gran cantidad de fraudes realizados mediante esta técnica, se empezaron a analizar diferentes opciones para la protección de los datos en la banda magnética, dentro de los que se encontraban el almacenar los datos cifrados, incluir códigos adicionales en la banda para detectar potenciales copias y componentes especiales para la protección de los lectores de bandas magnéticas en cajeros electrónicos y TPV.

Sin embargo, todas esas alternativas eran simplemente soluciones temporales que no gestionaban el riesgo de una forma que equilibrara el coste con el beneficio. Por ello, era necesario realizar un cambio radical de tecnología. La opción escogida fue el uso de un “chip” o circuito integrado incorporado en el plástico que permitía un almacenamiento seguro de los mismos datos de la banda magnética, tal como lo realizan las tarjetas inteligentes (“smart cards”).

La invención de las tarjetas con circuito integrado (TCI) o “tarjetas inteligentes” proviene del trabajo complementario (pero independiente) de Kunitaka Arimura (Japón), Roland Moreno (Francia) y Juergen Dethloff (Alemania), quienes trabajaron en su diseño en la década de 1970. Su uso inicial fue para la gestión de crédito en tarjetas telefónicas.

Funcionamiento  

A diferencia de la banda magnética (en la cual los datos de la tarjeta de pago se almacenan en texto claro), en un chip todos los datos existentes en la banda magnética son almacenados de forma cifrada, debido a que estos circuitos permiten la gestión de una lógica específica que permite el uso de diferentes algoritmos de encriptación (DES, TripleDES, RSA y SHA). Esta tecnología también es usada en las tarjetas SIM (Subscriber Identification Module) de teléfonos móviles y tarjetas inteligentes (“smart card”, “chip card” o “integrated circuit card” (ICC)) empleadas para identificación y autenticación. Estos chips requieren de un lector especial para poder funcionar.

EMV-Card-1

El componente clave de un chip es el circuito integrado (IC) que por lo general viene cubierto por una serie de capas protectoras de polivinilo, polietileno, poliéster o policarbonatos, acompañado de contactos metálicos que permiten su manipulación. Como tal, el chip de una tarjeta de pago no requiere de una batería para su funcionamiento, debido a que la energía que requiere es suministrada por el lector.

chip
Fuente: Wikipedia

Para garantizar un modelo homogéneo de trabajo con este tipo de dispositivos, en 1987 la ISO (International Organization for Standardization) publicó dos estándares en donde se definían las características físicas y lógicas de estos elementos: los estándares ISO/IEC 7816 e ISO/IEC 7810. En estos estándares se define (entre otras cosas) el formato de los contactos metálicos del chip, como sigue:

smartcard

Fuente: Wikipedia
  • C1 – VCC: Fuente de alimentación
  • C2 – RST: Re-inicialización de comunicación (reset)
  • C3 – CLK: Señal de reloj (clock signal) para comunicaciones temporizadas
  • C4: AUX 1 (auxiliar 1) para uso con USB (entre otros)
  • C5 – GND: Tierra (Ground)
  • C6 – VPP: Usado para programación de la memoria persistente
  • C7 -I/O: Entrada/salida serial (half-duplex)
  • C8: AUX 2 (auxiliar 2) para uso con USB (entre otros)

EMV (Europay, MasterCard and Visa)

Para facilitar una adopción estándar en el uso de chips en las tarjetas de pago, EuroPay (posteriormente adquirida por MasterCard), MasterCard y Visa conformaron EMVCo (http://www.emvco.com), consorcio al que posteriormente se unirían Discover, JCB (2004), American Express (2009) y UnionPay (2012).

El objetivo de este grupo es el de definir una serie de elementos comunes (a nivel físico, eléctrico, de datos y de aplicación) que permitan la inter-operatividad entre tarjetas con chip y sus respectivos lectores, empleando como base el estándar ISO/IEC 7816.

EMV
Fuente: Paragon Application Systems

Las especificaciones de EMVCo han sido publicadas en una serie de libros y documentos adicionales que conforman todo el estándar (versión 4.3 en Diciembre de 2013):

  • Book 1 – Application Independent ICC to Terminal Interface Requirements
  • Book 2 – Security and Key Management
  • Book 3 – Application Specification
  • Book 4 – Cardholder, Attendant, and Acquirer Interface Requirements
  • Common Payment Application Specification
  • EMV Card Personalisation Specification

Siguiendo estas especificaciones (conocidas también como “Chip and PIN” en Reino Unido e Irlanda), se pueden implementar controles de seguridad más robustos en la tarjeta y la posibilidad de gestionar aprobaciones de transacciones presenciales fuera de línea (offline).

Generalmente, una transacción EMV consta de tres fases:

Fase 1: Autenticación de la tarjeta (Card Authentication)

En esta fase se realiza una validación de la tarjeta empleando criptografía de clave pública mediante cualquiera de los siguientes tres métodos:

  • Static Data Authentication (SDA), que valida que los datos leídos desde la tarjeta han sido firmados por el emisor. Previene la modificación de datos (integridad) pero no previene la clonación de la tarjeta.
  • Dynamic Data Authentication (DDA), que provee protección contra modificación y clonación.
  • Combined DDA/generate Application Cryptogram (CDA), que combina DDA con la generación de un criptograma de aplicación de la tarjeta para garantizar la validez de la misma.

Fase 2: Verificación del titular (Cardholder Verification)

Para el proceso de validación del titular de tarjeta (autenticación), el chip presenta una lista de métodos de verificación del titular de tarjeta (Cardholder Verification Methods (CVMs)), los cuales son priorizados por  la terminal en función de sus capacidades:

  • Signature
  • Offline plaintext PIN
  • Offline enciphered PIN
  • Offline plaintext PIN and signature
  • Offline enciphered PIN and signature
  • Online PIN
  • No CVM required
  • Fail CVM processing

Fase 3: Autorización de la transacción (Transaction Authorization)

Finalmente, dependiendo de los resultados de las fases anteriores, la terminal solicita a la tarjeta la generación de uno de los siguientes criptogramas:

  • Transaction certificate (TC) — Offline approval (aprobación fuera de línea)
  • Authorization Request Cryptogram (ARQC) — Online authorization (autorización online)
  • Application Authentication Cryptogram (AAC) — Offline decline (denegación offline)

Con base en ellos, se autoriza y procesa la transacción o se deniega y se finaliza el proceso.

Cuando un cliente realiza una transacción con este tipo de tecnología, la tarjeta debe ser leída por un dispositivo homologado que pueda interactuar con el chip y que realiza una serie de acciones orientadas a la verificación de la tarjeta ingresada empleando SDA, DDA o CDA (fase 1). Cuando esta validación es satisfactoria, el cliente ingresa su PIN (Personal Identification Number – explicado en el artículo “¿Cómo funcionan las tarjetas de pago? Parte III: PIN (Personal Identification Number)“) en la terminal, el cual es enviado al chip de la tarjeta para su validación dependiendo del CVM escogido (fase 2). Si los dos valores coinciden, la transacción es aprobada, de lo contrario es denegada e informada al comercio (fase 3).

Gracias al uso de esta tecnología, el fraude en transacciones con tarjeta presente ha disminuido de forma drástica desde el momento de su implementación.

fraud_uk

Vulnerabilidades del sistema EMV

Al igual que todas las tecnologías, en EMV se han detectado una serie de vulnerabilidades y problemas de seguridad que pueden poner en riesgo los datos de la tarjeta y exponer al titular a potenciales fraudes:

Migración de la banda magnética al sistema EMV

Por consideraciones de compatibilidad con lectores antiguos de tarjetas que no soportan el sistema de chip, en muchas de las tarjetas de pago actuales conviven los dos sistemas: banda magnética y chip, con lo cual los riesgos mitigados por el sistema EMV (datos cifrados) pueden ser fácilmente obviados por la presencia de la banda (datos sin cifrar y susceptibles a “skimming”). Sin embargo, esta limitación es temporal mientras que se masifica el uso de lectores EMV.

Ataque Yes-Card

Este es un tipo de ataque especial que aprovecha un método de validación de las tarjetas con chip denominado SDA (Static Data Authentication). En él, la validación de autenticidad de la tarjeta depende de una firma digital estática previamente emitida por el emisor y firmada a su vez por la marca asociada. Cuando se utilizan transacciones offline (en las cuales la autorización no requiere una validación directa del emisor), esta firma puede ser copiada para ser re-utilizada nuevamente. Debido a que dicha firma no cambia en el tiempo (es estática), la interacción entre la tarjeta y el lector puede ser manipulada causando que se cualquier PIN pueda ser aceptado y la transacción sea aceptada. Como respuesta, se implementó el método DDA (Dynamic Data Authentication) en el cual la propia tarjeta tiene una firma digital específica (clave pública y privada), lo cual evita que pueda ser copiada y re-utilizada.

Ataque de Man-In-The-Middle (MiTM)

En 2010 los investigadores de la universidad de Cambridge Steven J. Murdoch, Saar Drimer, Ross Anderson y Mike Bond mostraron un tipo de ataque especial que permitía que se autorizaran transacciones online y offline empleando cualquier PIN. Este tipo de ataque es un ataque intrusivo y requiere incorporar un elemento intermedio (denominado “wedge”) en la comunicación entre la tarjeta con chip y la terminal.

attack

Para explotar esta vulnerabilidad es indispensable que exista una tarjeta válida involucrada (que puede ser robada). La comunicación entre la tarjeta y la terminal es manipulada por el atacante, obligando a que en el proceso de validación del PIN la respuesta del chip sea siempre positiva, con lo cual la transacción es autorizada.

fraud

Más información en http://www.cl.cam.ac.uk/research/security/banking/nopin/oakland10chipbroken.pdf

Chip skimmers y extracción del PIN

En 2011, los investigadores Andrea Barisani y Daniele Bianco de Inverse Path y Adam Laurie y Zac Franken de ApertureLabs demostraron en la conferencia de seguridad CanSecWest la existencia de una vulnerabilidad que permitía la manipulación de los CVM (Cardholder Verification Methods) presentados por la tarjeta con chip EMV al lector para obligar a la ejecución de una autenticación empleando el método “Plaintext PIN verification”. Usando un skimmer específico para chips EMV y un CVM débil es posible clonar una tarjeta EMV y obtener el PIN asociado.

emv_skimmer

Más información en http://dev.inversepath.com/download/emv/emv_2011.pdf

Ataque Pre-Play

En 2012 los investigadores Mike Bond, Omar Choudary, Steven J. Murdoch, Sergei Skorobogatov y Ross Anderson de la Universidad de Cambridge presentaron una nueva vulnerabilidad en la implementación de los protocolos de EMV. Como se explicó anteriormente, posterior a la autenticación de la tarjeta (fase 1) y verificación del titular, en la autorización de la transacción (fase 3) se solicita un criptograma específico si los pasos anteriores fueron satisfactorios y la autorización se enviará al emisor. Este criptograma se denomina Authorization Request Cryptogram (ARQC). Para prevenir que un ARQC sea empleado en autorizaciones subsiguientes si es capturado, se emplea un número único (“nonce”) generado de forma pseudo-aleatoria. Este dato se denomina Unpredictable Number (UN). Sin embargo, esta técnica tiene dos fallos principales:

  • El UN es generado empleando un generador de números pseudo-aleatorios (Cryptographic Random Number Generator (RNG)) débil, lo cual permite que posterior a varios análisis se pueda predecir su valor
  • En el proceso no se realiza una validación de la terminal que envía la notificación de autorización

Juntando estos dos elementos, es posible capturar el ARQC, manipular el UN y enviarlo desde diferentes terminales dentro de un umbral de tiempo específico, pudiendo autorizar transacciones diferentes, todas fraudulentas.

Más información en http://www.cl.cam.ac.uk/~rja14/Papers/unattack.pdf.

En agosto de 2016 en las conferencias Black Hat USA, varios investigadores  demostraron vulnerabilidades adicionales en la tecnología EMV, que aún dista de ser el paradigma de seguridad en tarjetas de pago.

Los estándares del PCI SSC y EMV

A pesar que el PCI SSC (Payment Card industry Security Standards Council) está conformado por la mayoría de marcas que hacen parte del consorcio EMVCo, esto no quiere decir que dichos estándares sean excluyentes. Por el contrario, los estándares del PCI SSC (PCI DSS, PA DSS, PTS y P2PE)  juegan un rol principal en la definición de controles para la protección de los datos de la tarjeta, independientemente del canal por el que hayan sido obtenidos y procesados.

Para aclarar este entorno, en 2010 el PCI SSC publicó el documento de guía Aplicabilidad de la norma de seguridad de datos de la industria de tarjetas de pago (PCI DSS) en un entorno EMV” en el cual se describe:

“… Los entornos de aceptación que hacen un uso eficaz de EMV pueden reducir sustancialmente el fraude en entornos presenciales, si bien, como se ha indicado anteriormente, el entorno EMV, tal y como se implementa hoy en día, no cumple automáticamente con los requisitos de la norma PCI DSS ni protege la confidencialidad del titular de la tarjeta ni los datos de autenticación personales. Si a esto le añadimos la opción de los comerciantes de procesar transacciones EMV y no EMV, resulta obvio que proteger la confidencialidad del titular de la tarjeta y los datos de autenticación personales es fundamental.

El diseño de la PCI DSS no distingue entre los mecanismos de seguridad de las transacciones subyacentes, sino que tiene por objetivo proteger el PAN y otros datos de autenticación confidenciales en sí, sin examinar el riesgo de fraude subyacente en caso de ponerse en riesgo estos datos…”

Es importante aclarar que EMV no sustituye a ninguno de los estándares del PCI SSC:

“… Así pues, a la hora de proteger el entorno de aceptación presencial actual, no deberá pensarse en EMV o en PCI DSS, sino más bien en una combinación de EMV y PCI DSS. Ambos son elementos esenciales en la lucha contra el fraude y la desprotección de los datos. Juntos proporcionan el mayor nivel de seguridad de los datos del titular de la tarjeta a lo largo de todo el proceso de transacción…”

Siendo así, la integración entre EMV y los estándares del PCI SSC se presenta de la siguiente manera:

  • PCI DSS (Data Security Standard): Protección del PAN durante el procesamiento, el almacenamiento y la transmisión, así como la prohibición del almacenamiento de datos sensibles de autenticación posterior a la autorización. Así mismo, la versión 3.0 de este estándar incluye una serie de controles específicos para la protección de dispositivos que capturan datos de tarjeta de forma presencial, complementando los controles de EMV (requerimiento 9.9), con el fin de evitar manipulaciones e inserción de skimmers.
  • PA DSS (Payment Application Data Security Standard): Definición de criterios específicos en el desarrollo e implementación de aplicativos instalados en dispositivos TPV para evitar manipulación de componentes de software que permitan la obtención no autorizada de los datos de la tarjeta o gestión de transacciones fraudulentas.
  • PCI PIN Transaction (PTS) Point of Interaction (POI): Directrices para seguridad a nivel de hardware, para evitar manipulaciones no autorizadas de dispositivos
  • P2PE (Point-to-Point Encryption): Diseñado para la protección de los datos de tarjeta desde el momento de su lectura hasta la recepción por un proveedor de servicio autorizado, minimizando la posibilidad de potenciales capturas no autorizadas de datos.

Como se puede concluir, en una transacción son múltiples los elementos involucrados, con lo cual es necesario la securización e implementación de controles específicos en cada uno de estos puntos para garantizar una seguridad tolerable.

Para finalizar, se presenta el siguiente infograma (extraído de Element Payment Services) que reúne la mayoría de conceptos explicados a lo largo de este artículo:

Infograma: A map to EMV

infograma