La seguridad de las
tarjetas de crédito en entredicho

Se ha presentado un estudio que
demuestra la vulnerabilidad de los sistemas de seguridad utilizados
por los cajeros automáticos para la validación de los PIN
asociados a las tarjetas de crédito. Este estudio se ha visto empañado
por los intentos que está realizando Citibank para ocultar esta
información. En un estudio titulado "Decimalisation table
attacks for PIN cracking", dos investigadores de la universidad
de Cambridge (Reino Unido) presentan un estudio de las debilidades
existentes en los dispositivos hardware para el almacenamiento
seguro y la validación de los PIN asociados a las tarjetas de crédito
comúnmente utilizado por las instituciones financieras.
Las tarjetas de crédito son un clásico ejemplo de un sistema de
autenticación de doble factor, ya que se combina un elemento físico
que es necesario poseer (la tarjeta de plástico con su banda magnética)
con un elemento que teóricamente sólo conoce el titular de la
tarjeta de crédito (el PIN, un código numérico habitualmente de
cuatro caracteres) que físicamente no reside en ningún sitio. Para
poder utilizar la tarjeta de crédito en un cajero automático es
necesario disponer de estos dos elementos al mismo tiempo.
Obtener el plástico tarjeta de crédito es una tarea relativamente
simple. Son un elemento de libre distribución y comercialización.
Falsificar la banda magnética también es una operación no
demasiado complicada, como hemos leído infinidad de veces en las
noticias sobre estafas que, periódicamente, publican los medios de
comunicación.
Lo que, en teoría, ya no es tan fácil obtener o identificar es el
PIN que el usuario ha seleccionado para la tarjeta de crédito. En
teoría, la única forma de identificar este PIN es o bien obligando
al titular de la tarjeta a que lo revele o utilizando técnicas de
fuerza bruta para su identificación.
En el caso de la fuerza bruta, la teoría conocida hasta la fecha es
que para identificar el PIN asociado a la tarjeta son necesarios, de
promedio, unos 5.000 intentos.
El estudio publicado este mes muestra que en realidad, una persona
con los conocimientos adecuados de los mecanismos de seguridad
utilizados y acceso a los sistemas criptográficos que se utilizan
en los bancos, únicamente necesita un máximo de 15 intentos para
identificar cualquier código PIN de cualquier tarjeta de crédito.
La vulnerabilidad utilizada se encuentra en los dispositivos
hardware utilizados para la realización de las operaciones criptográficas.
Se trata de unos procesadores especialmente diseñados para esta
acción, capaces de realizar un gran número de operaciones por
segundo.
Una vez más, la teoría indica que estos equipos están
especialmente protegidos para la realización de cualquier ataque.
No sólo disponen de protecciones especiales para evitar su
manipulación, sino que las funciones que ofrecen a los programas
están diseñadas para devolver un valor booleano (verdadero o
falso) a cualquier petición, para evitar la divulgación de
información que sirva para confeccionar ataques basados en el
estudio estadístico de los errores reportados.
Estos sistemas criptográficos realizan la validación del PIN
realizando un cifrado de los dígitos introducidos, utilizando una
clave secreta. Del resultado de la operación de cifrado se extraen
una serie de dígitos, expresados en base hexadecimal. Como el PIN
de la tarjeta utiliza únicamente números de base decimal, se hace
necesaria la conversión.
La conversión de hexadecimal a decimal no se realiza de forma matemática,
sino que se aplica una tabla de conversión, donde se expresa la
conversión a realizar para cada dígito hexadecimal. Por ejemplo,
una tabla de conversión puede ser
Utilizando esta tabla, el valor hexadecimal 67F4 se convertiría en
el valor decimal 3245. Este seria, en definitiva el PIN que debería
cotejarse para determinar si la operación debe realizarse o no.
Es en este punto donde se encuentra la vulnerabilidad del protocolo.
Estas tablas de conversión no son un valor sensible, sino que es
posible facilitar una tabla de conversión arbitraria, conjuntamente
con el número de cuenta y el PIN, en el momento de solicitar al
sistema criptográfico la validación de la información.
Por tanto, un empleado del banco con acceso al sistema dispone de la
capacidad de manipular las tablas de conversión para determinar los
dígitos que forman el PIN. Por ejemplo, utilizando esta tabla de
conversión
con el código PIN 0000 es posible identificar si el PIN contiene el
número 7.
Por tanto, básicamente lo que demuestra el estudio, una vez más,
es que utilizar como medida de seguridad el desconocimiento
("security by obscurity") no es efectivo, especialmente
cuando se hace referencia a cuestiones relacionadas con la
criptografía.

El lado
oscuro de esta historia
Un problema de este tipo, que requiere una situación muy específica
para poder ser utilizado, probablemente hubiera pasado más o menos
desapercibido fuera de los círculos de interés sobre criptografía
y seguridad informática. De hecho, como se deduce de lo publicado
anteriormente, las únicas personas que podrían aprovecharse de
esta vulnerabilidad para obtener los PIN de las tarjetas de crédito
son algunos empleados de los bancos que disponen del acceso
necesario a los sistemas criptográficos.
Ahora bien, se ha producido un elemento, muy grave, que ha dado un
matiz totalmente diferente a esta historia. Y es que Citibank, una
de las mayores corporaciones bancarias del mundo, ha utilizado las
armas legales a su alcance para intentar ocultar este estudio y
censurar la publicación de esta información.
Tal como recogemos en el apartado de "Más información",
Citibank ha solicitado al Tribunal Supremo del Reino Unido la
retirada del estudio al que hemos hecho referencia.
Fuente: www.hispasec.com |