¿Por qué los cajeros automáticos aceptan cualquier PIN?

98

El otro día traté de retirar algo de efectivo de un cajero automático a toda prisa y puse un pin equivocado. Me di cuenta de eso solo cuando presioné el botón "ok", pero para mi sorpresa el cajero automático no se quejó. Mostró el menú habitual, pidiéndome que seleccione una operación. Solo cuando seleccioné Retiro, se me solicitó que el pin fuera incorrecto y se me pidió que volviera a ingresar. Lo que hice y recibí el efectivo.

¿Por qué los cajeros automáticos permiten ingresar basura para un PIN, seleccionando una operación y solo luego quejarse?

EDIT : para agregar más información sobre algunos puntos discutidos en las respuestas y comentarios: el país donde esto sucedió es Nueva Zelanda. La tarjeta es una tarjeta con chip que también tiene una banda magnética, y no tengo idea si el cajero automático puede leer el chip o no.

    
pregunta Andrew Savinykh 01.07.2014 - 10:52
fuente

8 respuestas

113

Esta respuesta se aplica cuando el cajero automático utiliza la banda magnética de la tarjeta, no cuando se usa el chip de la tarjeta.

El teclado de un cajero automático es un dispositivo completamente separado con características especiales de seguridad de hardware (como chips autodestructivos si alguien intenta abrirlo, etc.) porque es el cuello de botella de toda la seguridad de cajeros automáticos.

Cuando ingresa un PIN, el cajero no recibirá el PIN en texto simple, sino que lo cifrará. Cuando envía una transacción al servidor principal, combina criptográficamente el PIN cifrado con la cantidad de dinero especificada en la transacción para evitar que los atacantes modifiquen esta cantidad.

Si el cajero automático hubiera verificado el PIN antes de la transacción (enviándolo al servidor), la especificación de la cantidad de dinero no podría estar relacionada de manera segura con el conocimiento del PIN.

Por lo tanto, el cajero automático no puede verificar si el PIN es válido o no hasta que intente emitir una transacción a los servidores del banco principal (quienes saben cómo descifrar o verificar de otro modo el PIN cifrado).

    
respondido por el user19426 01.07.2014 - 11:09
fuente
32

La confirmación del PIN cuando se utiliza la banda magnética de la tarjeta requiere ponerse en contacto con el servidor del banco. Dado que esto lleva tiempo (y se demoró aún más tiempo en los días de acceso telefónico), el cajero automático combina "verificar el PIN" y "retirar dinero" en un solo contacto.

El comportamiento puede ser diferente si la tarjeta tiene un chip y el cajero automático lo admite.

    
respondido por el Mark 01.07.2014 - 11:08
fuente
21

La mayoría de los cajeros automáticos tienen que lidiar con 2 tipos de tarjetas: antiguas, magnéticas y nuevas con chip. Las tarjetas magnéticas no pueden verificar el PIN localmente. Las tarjetas de chip teóricamente tienen esta capacidad, pero no significa que esta funcionalidad no esté limitada.

El comportamiento que ha descrito coincide perfectamente con el flujo de la tarjeta magnética. Pero, ¿debería verificarse la tarjeta con otra ruta? Hay 2 razones por las que no debería:

1) Implementar un segundo camino completamente nuevo cuesta dinero. El fabricante de cajeros automáticos seguramente desea mantener los costos bajos y reutilizar la mayor cantidad de código posible.

2) Presentar una experiencia de usuario consistente. Es fácil imaginar a alguien con 2 tarjetas, una magnética y una de chip. O a un cliente que está emitiendo una nueva tarjeta con chip para reemplazar la antigua tarjeta magnética. No es necesario confundir a los usuarios proporcionándoles 2 rutas diferentes. Los cajeros automáticos son lo suficientemente aterradores.

/ edit: Oh, olvidé una cosa muy importante:

El PIN local en la tarjeta puede estar desactualizado.

En muchos bancos puede cambiar el PIN de la tarjeta, pero no hay forma de que el chip de la tarjeta pueda saberlo. Por lo tanto, si el cajero automático verificara el PIN localmente, rechazaría el PIN nuevo correcto, pero permitiría el PIN antiguo incorrecto. Y la verificación del PIN de ofc tendría éxito y la transacción fallaría.

    
respondido por el Agent_L 01.07.2014 - 18:05
fuente
14

Esta es una cuestión de política en el software de cajeros automáticos. Muchos cajeros automáticos sí de hecho verifican el PIN con el banco antes de permitirle continuar.

Pero el cajero automático en sí mismo no sabe si su PIN es correcto. Tiene que preguntar al banco, y esto lleva tiempo. La cantidad de tiempo que toma a menudo determinará si el cajero automático omitirá o no este paso.

Cada transacción entre el cajero automático y el banco es independiente, por lo que cada una debe autenticarse por separado y, por lo tanto, el PIN se valida con cada transacción. Esto significa que, desde un punto de vista práctico, el ATM no necesita técnicamente validar el PIN por adelantado. Sabe que un PIN incorrecto hará que cualquier otra transacción falle.

Entonces, hay un equilibrio que debe ser alcanzado, y cada cajero automático puede hacer esto de manera diferente. La validación del PIN por adelantado puede ser más simple para el usuario, pero puede requerir tiempo adicional si el cajero automático no tiene una línea dedicada abierta al banco. Así que imagínese escribiendo su pin y esperando 20 segundos para que el cajero automático le diga si lo hizo correctamente. Para reducir el tiempo total requerido, pueden optar por omitir ese paso.

    
respondido por el tylerl 01.07.2014 - 19:11
fuente
2

No hay razón para verificar el pin en esta etapa, en todo caso sería malo.

  1. Desperdicio de ancho de banda / tiempo para verificar, ya que es muy probable que deba enviarse nuevamente con la llamada de transacción de todos modos.

  2. Si alguien está intentando adivinar el pin, demora mucho más en averiguar si es el pin correcto. Existe una mayor probabilidad de que se pongan la cara frente a la cámara mientras más tiempo se paren frente a la máquina.

  3. No hay forma de verificar el pin contra la tarjeta, debe involucrar al banco para que verifique que de lo contrario podría hacer la verificación fuera de línea.
  4. Esto se aplica tanto a la tira como a las tarjetas de chip, el pin nunca se almacenará en ninguno de estos lugares de ninguna forma.
respondido por el Jegsar 04.07.2014 - 13:35
fuente
1
La respuesta de user19426 es interesante-- No sabía que los teclados de cajeros automáticos se implementaron de esa manera, pero no lo hacen. Parece que puede ser la explicación completa porque todavía no hay razón para que no pueda verificar el PIN inicialmente (sin exponer su valor de texto simple), y luego use el hash del PIN para firmar la transacción real. En el caso de las tarjetas con chip, esto ni siquiera requeriría una comunicación adicional con el banco.

Cualquier persona puede verificar de forma privada el PIN de una tarjeta con chip en cualquier momento, por ejemplo, utilizando los teclados portátiles de autenticación que los bancos europeos envían habitualmente a sus clientes (supongo que las tarjetas pueden deshabilitarse después de un cierto número de intentos incorrectos). Un cajero automático que rechaza un PIN incorrecto por adelantado no proporciona ningún vector de ataque que no esté disponible en un cajero automático que también requiera que intente realizar una transacción. La fuerza bruta no es un problema ya que una demora de 30 segundos solo significa que toma 90 segundos más para llegar al punto donde la máquina confisca la tarjeta.

Por lo que puedo decir, solo hay una implicación de seguridad para no verificar el PIN por adelantado. Si coloco su tarjeta robada en un cajero automático, e ingrese lo que creo que es su PIN, y me dice que el PIN está equivocado, entonces me alejo y el CCTV muestra que soy culpable de intentar acceder a su cuenta. Si introduzco el PIN y luego pido £ 200, el CCTV muestra que soy culpable de intentar acceder a su cuenta y intentar robarle £ 200.

    
respondido por el bobtato 01.07.2014 - 17:37
fuente
0

Esto ocurre por dos razones:

  1. Es más seguro y los bancos quieren ahorrar en ancho de banda .

    El banco generalmente almacena su PIN en forma de hash en su base de datos. Para poder verificar el PIN que ingresó en el cajero automático, el cajero automático debe enviar al servidor del banco el hash del PIN que ingresó. Luego, estos dos hashes se comparan para verificar si el PIN que ha ingresado es correcto y solo entonces se le permite realizar transacciones. Por supuesto, es un enfoque rudimentario a la seguridad. Hay cosas como la repetición y los ataques del hombre en el medio a considerar (para obtener más información, lea autenticación de desafío-respuesta ).

    En lugar de hacer esto, el banco puede enviar su PIN junto con la transacción misma, verificando su PIN y la transacción al mismo tiempo. Esto ahorra ancho de banda y es potencialmente más seguro ya que la ventana de ataque está disminuida. Por ejemplo, si el banco autentica su sesión desde el momento en que ingresó su PIN, le da al posible atacante tiempo para interceptar la conexión y realizar sus propias transacciones.

    Por otra parte, es difícil implementar una conexión segura y los errores ocurren . Una verificación única cuando realiza una transacción le permite al banco identificarlo de manera segura y le ahorra ancho de banda. En última instancia, aún depende del cajero automático en cuestión, ya que el banco siempre puede verificar su PIN al comienzo de cada sesión y para cada transacción posterior.

  2. Las tarjetas de cajero automático no almacenan su PIN en la banda magnética. (Las tarjetas de chip hacen.)

    A diferencia de algunas respuestas, las tarjetas de cajero automático no pueden y no almacenarán su PIN. El propósito de la tarjeta ATM es lograr la autenticación de dos factores: algo que tienes (la tarjeta) y algo que sabes (el PIN). Ha habido casos en los que los atacantes han violado la tarjeta de cajero automático.

    El cajero automático tiene que conectarse a los servidores del banco para verificar que usted es quien dice ser. Las tarjetas de cajero automático pueden y han sido duplicadas anteriormente (skimming). Si se pudiera verificar el PIN fuera de línea utilizando solo los datos en la banda magnética de la tarjeta ATM, los atacantes podrían atacar por fuerza bruta a todos los 9999 PIN posibles con bastante rapidez con un ataque fuera de línea. Por lo tanto, el sistema está diseñado para requerir que se comunique con el banco para cada estimación, lo que dificulta a los atacantes robar su tarjeta de cajero automático y retirar todo su dinero.

respondido por el Roy 02.07.2014 - 04:34
fuente
0

Un escenario popular en el que esto suele ocurrir es cuando la tarjeta que está utilizando es de un banco diferente y el cajero automático es de otro banco.

¿Por qué ?:

Diferentes bancos se conectan entre sí a través de un conmutador nacional a nivel de país que conecta a diferentes bancos entre sí. Al igual que VISA es un conmutador internacional, existen conmutadores nacionales para las transacciones dentro del país.

Al realizar una transacción de este tipo, además del ancho de banda, también hay una cantidad particular que se está deduciendo por el uso de ese conmutador nacional, esta cantidad se basa en cada transacción.

Entonces, en lugar de enviar dos transacciones a ese cambio y eventualmente a ese banco. Solo se utiliza una transacción en la que se ingresa el PIN y los detalles de las transacciones. Si el PIN es correcto, la transacción se realiza; de lo contrario, se rechaza.

El escenario anterior también se puede usar para las mismas transacciones bancarias, pero no tendrá ningún beneficio financiero, ya que no ahorra ningún dinero de tarifa, sino solo un poco de ancho de banda.

    
respondido por el SajjadHashmi 07.07.2014 - 18:55
fuente

Lea otras preguntas en las etiquetas