Al comenzar el año 2010, la cuarta parte de las tarjetas españolas eran del tipo EMV. Este bajo porcentaje nos situaba muy por detrás de la mayoría de países europeos. Lo sorprendente, de hecho, era que estuviésemos en un nivel tan alto. La banca española fiaba más en las soluciones tradicionales basadas en identificación mediante DNI, y consideraba que los altos costes de un sistema diseñado para solucionar los problemas de fraude que se daban en otros países no se verían justificados.
Eso pudo ser cierto en su momento. A finales de 2001, las casi setenta millones de tarjetas bancarias en circulación en España movían 108 000 millones de euros, y el fraude por falsificación o robo se estimó en sesenta millones de euros, apenas un 0,06% del total[49]. Las cantidad fue ascendiendo en valor absoluto, y para 2006 se había triplicado hasta un total de 183 millones de euros, una cifra solamente superada por Reino Unido (649 millones) y Francia (262 millones). Un buen porcentaje de los fraudes parecen deberse a tarjetas emitidas en el extranjero y utilizadas en España, donde el uso de tarjeta con banda magnética era la norma habitual. Entre 2006 y 2009, la cantidad global defraudada en nuestro país aumentó otro 17%.
A la vista de estas cifras, incluso los altos costos derivados de la conversión al estándar EMV se convierten en un mal necesario si se quieren reducir las cifras de fraude. Pronto se vieron resultados, ya que para 2011, el fraude con tarjetas había disminuido un 8% respeto a 2009[50]. La reducción en términos absolutos era pequeña, menos de veinte millones de euros, y hay muchos otros factores que impiden atribuir al nuevo sistema el mérito en la lucha contra el fraude; pero es verosímil concluir que, de no haberse realizado el cambio, las cifras de fraude serían en este momento mucho mayores. En este sentido, el esquema EMV evitó males mayores, lo que ya es motivo suficiente para justificar los costes de su implantación.
Hubo una segunda causa que impulsó la transición, tanto en España como en otros países europeos. Se trata de algo llamado Zona Única de Pagos en Euros, o SEPA (Single Euro Payments Area), un intento de la Unión Europea para establecer un sistema común de medios de pago. Durante 2009, los países del SEPA debían transcribir a sus legislaciones nacionales la Directiva 2007/64/CE sobre servicios de pago[51]. España hizo lo propio el 14 de noviembre de 2009 con la publicación en el Boletín Oficial del Estado de la Ley 16/2009 de Servicios de Pago[52]. Básicamente, mantenía el carácter garantista respecto a los derechos de los clientes. En caso de que el cliente niegue haber realizado una operación, el banco deberá demostrar de modo fehaciente lo contrario o bien devolver todo el dinero. En cualquier caso (salvo fraude manifiesto o negligencia grave), se estableció un límite de 150 euros para las pérdidas en caso de sustracción o extravío de la tarjeta.
Esto estaba en consonancia con una especie de aceptación tácita, según la cual la banca española admite y asume que la seguridad de sus sistemas no es total (algo que choca con las pretenciosas afirmaciones de sus homólogos británicos). Cuando el BBVA, adelantándose un mes al BOE, anunció a bombo y platillo sus nuevas tarjetas con sistema EMV, hizo hincapié en el concepto de “mayor seguridad,” lo que implícitamente lleva el mensaje de que la seguridad es un proceso, no un producto[18].
En Reino Unido, donde la implantación del sistema Chip+PIN era del 100%, las perspectivas en torno a la seguridad eran optimistas. El sistema de protocolos EMV, aunque falible, era lo bastante flexible como para responder a vulnerabilidades como las que hemos mencionado en páginas anteriores. La migración hacia el sistema de autenticación dinámica de datos DDA, que había comenzado en 2009, continuaría de forma rápida y masiva durante todo 2010, con lo que la industria bancaria británica se las prometía muy felices.
En el apartado negativo (visto desde los ojos de la industria bancaria, por supuesto), la regla de “en caso de disputa, el cliente es culpable” se quebró finalmente. Resulta increíble, pero durante años la política del sistema bancario en cuestiones de fraude estaba regulada no por leyes o decretos, sino por un código bancario (Banking Code) de autorregulación, un conjunto de prácticas que los bancos aceptaban voluntariamente, sin imposición legal alguna.
Eso cambió el 1 de noviembre de 2009, cuando la adaptación a la Zona única de Pagos en Euros forzó la entrada en vigor de la Reglamentación de Servicios de Pago (Payment Services Regulations). Entre otros cambios, revocó la asignación automática de la culpa, y la consiguiente obligación de pagar, al cliente en casos de fraude. Desde entonces, las transacciones que el cliente estime como no autorizadas deberán serle reembolsadas[53]. El banco puede entablar acciones legales si lo estima oportuno, pero será él quien deba probar que el cliente miente. Es decir, la carga de la prueba recae ahora sobre el banco, y la presunción de inocencia salvo prueba en contrario se asigna “por defecto” al cliente[54]. Y no bastará con mostrar un recibo con las palabras “verificado por PIN” impresas.
En su ventaja, Reino Unido contaba con amplia experiencia en el sistema de tarjetas EMV. Así pues, una de cal y una de arena para la banca inglesa en el 2010, con la ventaja de que la de cal estaba más que colmada. Eso sí, suponiendo que los amigos de la Universidad de Cambridge se estuviesen callados y no encontrasen más fallos de seguridad. A estas alturas no les sorprenderá si les digo que en febrero de 2010 presentaron el estudio más demoledor sobre la seguridad del sistema. En este caso no se trató de tarjetas con banda magnética clonada sino de verdaderos agujeros de seguridad en el protocolo EMV. Su título lo dice todo: “Chip y PIN está roto”[55]. Veamos en qué consiste exactamente, y juzgue usted si exageraban o no.
En los sistemas complejos el fallo, como el diablo, suele estar en los detalles, y este caso no fue una excepción. El detalle se oculta en la fase dos, la de verificación del cliente. Antes dije que el cliente inserta el PIN y la tarjeta lo contrasta con el que debería ser. Así es el método estándar, pero no es el único posible. En realidad, el protocolo EMV permite que el terminal escoja el método de verificación más adecuado para cada ocasión. No es lo mismo pagar una cena en un restaurante que un Bugatti Veyron en el concesionario, de forma que a veces habrá que usar el PIN, otras veces la firma manuscrita, o bien ambas. También hay que regular qué pasa si el proceso de autenticación falla. ¿Qué hacemos: interrumpir la transacción, comenzar otra nueva o avisar a la policía?
Cada terminal establece sus condiciones de verificación por medio de un archivo incorporado llamado CVM (Método de Verificación del Cliente). Esto no sólo resulta cómodo para establecer los límites de riesgo del cajero o la empresa que tiene el terminal con el lector de la tarjeta, sino que permite ofrecerlo como servicio a los clientes. Por ejemplo, un cliente con problemas de visión o de memoria puede tener problemas con el PIN, de forma que hay tarjetas en las que la verificación se realiza mediante firma manuscrita. O puede permitir que, si falla la verificación mediante PIN, se intente por segunda vez mediante una firma manuscrita. Cada entidad o banco puede establecer las condiciones que desee para cada tarjeta de cada cliente en particular, y así el sistema gana mucho en flexibilidad.
Veamos un ejemplo del funcionamiento de la fase dos. Hoy es mi cumpleaños, así que he invitado a mi familia a un buen asador. Tras una excelente velada con chuletones y doradas a la sal, pido la cuenta. El camarero toma el lector de tarjetas portátil, me lo acerca a la mesa y yo introduzco mi tarjeta. El CVM de su lector dice que admite todos los tipos de verificación (PIN o firma manuscrita), pero como la cuenta ha excedido de cierto límite exige la introducción del PIN. Lo tecleo en el terminal, y éste lo envía a la tarjeta. Ahora la tarjeta lo compara con el que tiene guardado en el chip.
Pueden pasar dos cosas. Si el PIN es el correcto, la tarjeta devuelve al terminal el código 0x9000, que es la forma que tiene de decir “de acuerdo, adelante”. Pero puedo haberme equivocado al introducir el PIN, en cuyo caso la tarjeta responde con el código 0x63Cv, donde v es el número de intentos que me permite antes de cerrar el proceso y llamar a la policía. En este caso estoy algo achispado, y me salta el primer aviso. Felizmente, mi segundo intento tiene éxito. El camarero me da el recibo, donde aparecerá probablemente la frase “verificado con PIN,” me invita a un chupito de cortesía y me desea buenas noches. Y feliz cumpleaños, por supuesto.
¿Dónde está aquí el problema? Pues en el hecho de que ese código intercambiado entre el terminal y la tarjeta no está autenticado, lo que significa que podemos alterarlo impunemente. Para ello, insertamos lo que en lenguaje criptográfico se llama un “hombre interpuesto” (man-in-the-middle), una especie de metomentodo que se ha introducido dentro del sistema para subvertirlo. Se supone que su intrusión debería ser detectada, pero como veremos, resulta que la detección falla.
Nuestro metomentodo viene equipado con un lector de tarjetas, un PC y una tarjeta falsa, así como la capacidad de robar (o tomar prestada sin que su dueño se entere) una tarjeta legítima. El proceso comienza cuando se inserte la tarjeta falsa en el terminal de venta. Lo primero que hacemos es teclear un PIN cualquiera. El terminal interroga a la tarjeta falsa sobre la validez del número, y ésta pasa la solicitud al PC. El ordenador, a su vez, pregunta a la tarjeta robada si autoriza la transacción. No importa cuál sea la respuesta de dicha tarjeta, solamente el hecho de que se le ha preguntado.
A continuación, el PC envía a la tarjeta falsa el código 0x9000, indicativo de “sí, este es el PIN correcto” Ese código llega hasta la tarjeta falsa, que le dice al terminal “sí este es el PIN correcto”. En otras palabras, hemos logrado interceptar la comunicación entre el terminal y la tarjeta, de forma que cuando aquél diga “¿es este el PIN correcto?,” siempre oiga la respuesta “sí, lo es”. Ya está. La verificación está hecha, a pesar de que la tarjeta legítima es robada y no sabemos su PIN. Ahora, a comprar a manos llenas, que el titular de la tarjeta paga.
Pero espere un poco, me dirá usted, no puede ser tan fácil. ¿Es que no hay mecanismos para detectar esta jugarreta? Lo cierto es que sí los hay, pero son hábilmente sorteados. Como en la película La Gran Evasión, los guardias son engañados para ver lo que los prisioneros quieren que vean. En primer lugar, la tarjeta legítima robada. Uno de los mecanismos que lleva es un dispositivo que cuenta cuántas veces se ha introducido el PIN. De ese modo puede, entre otras cosas, contabilizar cuántas veces ha intentado el cliente entrar el número correcto. Pero como la verificación no está autenticada, el PC del metomentodo puede engañar a la tarjeta legítima y hacerle creer que el proceso de verificación no necesita PIN. Si fuese humana, la tarjeta se encogería de hombros y murmuraría algo como “de acuerdo, terminal, tú mismo,” y lo autorizaría. Puesto que la petición del PC indica “verificación sin PIN,” no se activa el contador que indica el número de veces que se ha utilizado el PIN. En lo que a la tarjeta concierne, la verificación con PIN nunca ha tenido lugar, y si le preguntasen solamente podría responder algo como “no me consta haber autorizado transacciones con PIN, así que por eliminación debe de haber sido con firma manuscrita”.
En segundo lugar, el banco. Supuestamente, tras la fase de verificación, el terminal y el banco intercambiarán información. Entonces debería detectarse el ataque, porque el terminal ha comenzado una verificación con PIN pero la tarjeta ha llevado a cabo una verificación sin PIN. ¡Pues tampoco se detecta! El motivo es que, cuando una verificación ha fallado, el terminal indica rápidamente al banco que ha habido un fallo y le da indicación de cuál ha sido este fallo: el PIN se introdujo mal más veces de lo autorizado, o bien se solicitó y no hubo respuesta; pero cuando la verificación ha tenido éxito ¡el banco no tiene forma de saber qué método se ha utilizado!
Como en una comedia de enredo, nuestro atacante metomentodo ha logrado sembrar la confusión generando un diálogo de besugos. La tarjeta legítima cree haber autorizado una transacción mediante firma manuscrita; el terminal cree haber autorizado una transacción mediante PIN; y el banco no tiene idea de qué tipo de verificación se ha hecho, ni le importa lo más mínimo. En cuanto al dueño de la tienda donde el terminal estaba instalado, sólo recordará (si es que lo recuerda) que alguien insertó un PIN.
Imagínense el jaleo cuando llegue el inevitable cara a cara. La transacción ha sido autorizada, y según la tarjeta no se ha producido una verificación con PIN, así que el banco concluirá que se ha usado la banda magnética y la firma. Si el titular de la tarjeta legítima no denunció a tiempo su desaparición, el banco puede hacerle responsable; y si lo hizo, puede culpar al dueño de la tienda. El enredo está servido, y mientras tanto el metomentodo se ha quitado de en medio, listo para probar fortuna con otra tarjeta robada.
Los investigadores de Cambridge se arriesgaron mucho al afirmar lapidariamente que “Chip y PIN está roto”. Su razonamiento, con el que por supuesto podemos estar de acuerdo o no, es que:
“Nosotros medimos el éxito de Chip+PIN por sus dos objetivos fundamentales: primero, evitar la falsificación de tarjetas que incorporen el chip, y segundo evitar que se puedan usar tarjetas perdidas y robadas sin el PIN. Como pueden usarse tarjetas robadas sin necesidad de saber el PIN, según nuestra definición Chip+PIN está roto”.
Este ataque, al que yo llamo “fish and chips” (no me pregunten por que, soy así de raro), es mucho peor que el que vimos en el apartado anterior por dos motivos. En primer lugar, ahora el ataque funciona incluso si el terminal se encuentra online; y en segundo, la solución dada para resolver el ataque anterior (pasar a autenticación DDA) no resuelve el problema actual. Existen algunas soluciones, pero son parches y de eficacia no clara.
Cuando los autores escribieron su artículo, lo hicieron circular entre responsables de la industria y las entidades reguladoras durante tres meses antes de darle publicidad. No recibieron ninguna respuesta[56]. Puesto que la industria no estaba por la labor, decidieron hacer una prueba en vivo y en directo, en condiciones reales tales que nadie pudiese ponerlo en duda o utilizar la típica excusa de “es un ataque teórico, no tiene consecuencias prácticas”. Para ello, organizaron una prueba ante un equipo de reporteros de la BBC, quienes proporcionaron las tarjetas “robadas,” dos de débito y dos de crédito, todas de bancos distintos. Saar Drimel, uno de los firmantes del artículo, escondió todo el “equipo de metomentodo” en una mochila. Un cable salía de ésta, atravesaba la manga del “defraudador” y se conectaba mediante un cable con la tarjeta fraudulenta que éste llevaba en la mano.
La prueba se hizo en la propia cafetería de la Universidad de Cambridge. Drimel insertó la tarjeta falsa en el terminal, tecleó el PIN 0000, y la transacción fue autorizada sin problemas. Funcionó, y el recibo indicaba claramente “verificado por PIN”. Ahora Saar Drimel era el ilegítimo propietario de una pequeña botella de agua con cargo a una tarjeta supuestamente protegida por el sistema Chip+PIN. Por supuesto, la Universidad de Cambridge autorizó el intento de fraude, y suponemos que el señor Drimel reembolsó los seis euros de la compra al legítimo propietario de la tarjeta.
El reportaje se emitió el 11 de febrero de 2010 en el programa Newsnight del canal BBC2[57]. Los bancos cuyas tarjetas de crédito habían sido trucadas publicaron comunicados en los que indicaban que el problema era común al sistema EMV y no tenía nada que ver con las prácticas de un banco en particular; lo cual era rigurosamente cierto. En cuanto a la UK Cards Association (representante de la banca en temas de sistemas de pago), conocida antes como APACS, si bien reconocía la existencia del ataque como poco más que una variante de un ataque anterior, negaba que ese fuese el final de Chip+PIN y afirmaba que “ni la industria bancaria ni la policía tienen evidencia alguna de que algún criminal tenga la capacidad de desplegar ataques tan sofisticados”[58].
Al parecer, el término “sofisticado” tiene un significado muy particular para ellos. Como prueba de lo que digo, permítanme compartir con ustedes un pequeño cotilleo. Cuando Ross Anderson publicó una entrada en su blog explicando el ataque[59], apareció un comentario negativo de un tal Scrutineer; su opinión era que el artículo dejaba mucho que desear, la técnica subyacente no era gran cosa, no había pruebas concluyentes[60]. Evidentemente, no sabía con quién se la estaba jugando. Ross Anderson tardó poco en descubrir que la IP usada por Scrutineer correspondía a una dirección de APACS[61]. Anderson no quiso dar muchos detalles sobre la identidad de Scrutineer, pero si tiene usted curiosidad, pásese por[62]. Ah, casi se me olvida decirlo: APACS es un nombre antiguo de la actual… UK Cards Association. Sutileza en acción[63].