QR peek

La cámara de un móvil abre un código QR casi en cuanto lo ve. Este lector se detiene un paso antes. Decodifica el código, muestra lo que lleva escrito y lo que haría un teléfono con ello, y te deja la decisión a ti.

Los teléfonos activan la cámara trasera cuando eliges “Escanear con la cámara”. Desde un ordenador, sirve una captura de pantalla o una foto del código: suelta el archivo, o pégalo con Ctrl+V (⌘+V en Mac).

🔒 Decoding takes place on your device. Camera frames and pictures stay in your browser, and what the code says is not passed to anyone.

Un código QR es un texto corto

Esos cuadrados blancos y negros forman caracteres, unos pocos miles como máximo, con corrección de errores para que el código se lea aunque esté sucio en parte o tapado por un logo. Eso es todo lo que hay. Ni un programa ni un destino oculto. El problema viene de lo que hace después el dispositivo que lo escanea. Si el texto empieza por https://, el teléfono se ofrece a abrirlo. Otros prefijos activan otras acciones, y nadie puede saber cuál mirando los cuadrados.

Por eso el fraude se ha pasado a los códigos QR. Un enlace en un correo electrónico pasa por los filtros de spam, y puedes pasar el cursor por encima para inspeccionarlo. Imprime el mismo enlace como código en un parquímetro, en la mesa de un restaurante o en un falso aviso de entrega, y se salta los filtros y se abre en un teléfono, donde la barra de direcciones muestra muy poco.

Los tipos de contenido que reconoce el lector

Empieza porQué haría un teléfonoQué comprobar
http://, https://, www.Abrir una página webEl dominio en negrita
WIFI:Conectarse a una red inalámbricaQuién gestiona la red; se marcan las redes abiertas y WEP
BEGIN:VCARD, MECARD:Añadir un contactoLos campos de correo electrónico y de sitio web
mailto:, SMSTO:, sms:, tel:Preparar un mensaje o una llamadaEl destinatario; se marcan los códigos cortos y los números de tarifa especial
otpauth://Añadir una cuenta a una aplicación de autenticaciónQue seas tú quien la está configurando
bitcoin:, ethereum: y similaresPreparar una transferencia de criptomonedasTodo, porque no se puede revertir
000201…, BCD, upi://Preparar un pago con tarjeta, bancario (SEPA) o UPINombre del beneficiario e importe
geo:, BEGIN:VEVENTAbrir un mapa, añadir un evento al calendarioNada en particular

Todo lo demás se muestra como texto sin formato. Si hay una dirección web escondida en ese texto, recibe el mismo examen que un enlace. Un código que contiene una dirección javascript:, data: o file: se marca en rojo.

Lo que leer el código no te puede decir

El lector ve la dirección, no la página. Un dominio con la ortografía impecable puede alojar igualmente una copia del formulario de acceso de un banco. Para probar el destino en sí, pega la dirección en la consulta de sitios inseguros o síguela salto a salto con el rastreo de redirecciones. Ambos se ejecutan desde nuestro servidor, no desde tu teléfono.

Tampoco puede ver el mundo físico. Pasa un dedo por encima de un código en una máquina pública, porque una pegatina tiene borde. Para cualquier pago, lo más seguro es la aplicación del operador o una dirección web que escribas tú mismo.

Ten especial cuidado con los códigos otpauth://. Contienen el secreto a partir del cual se generan tus códigos de acceso. Escanea uno solo en la página de seguridad de un servicio donde estés activando tú mismo la verificación en dos pasos. Nadie legítimo te enviará uno para “verificar tu cuenta”.

La decodificación usa el detector de códigos de barras integrado en tu navegador cuando lo hay. Si no, se carga desde este sitio un pequeño decodificador de código abierto. En ambos casos la imagen se queda en tu dispositivo, y la cámara, que necesita tu permiso, se apaga en cuanto se lee un código.

Preguntas frecuentes

¿Puede escanear un código QR hackear mi teléfono?

Leer un código es inofensivo, porque solo da texto. El riesgo empieza con lo que ocurre después, como abrir una página de phishing, conectarse a una red Wi-Fi desconocida o aprobar un pago. Si miras primero el contenido, como hace esta página, no pasa nada que no hayas elegido tú.

¿Cómo escaneo un código QR que está en mi propia pantalla?

Haz una captura de pantalla y luego suelta la imagen en esta página, elígela con el botón de archivo o pégala con Ctrl+V (⌘V en un Mac). La imagen se decodifica en local.

¿Qué es el quishing?

Es el phishing entregado mediante un código QR. Una forma típica es una pegatina en un parquímetro o en una estación de carga que lleva a una falsa página de pago. Otra es un correo electrónico que te pide escanear un código para “mantener tu cuenta activa”, lo que te pasa de un ordenador de trabajo protegido a un teléfono personal.

¿Por qué el lector dice que no se encontró ningún código QR?

Probablemente el código es demasiado pequeño en la imagen, está borroso o cortado. Recorta la imagen alrededor del código, deja un margen blanco por los cuatro lados e inténtalo de nuevo. Los códigos que no son QR, como los códigos de barras de productos o los Data Matrix, no se leen.

¿Es peligroso un código QR que usa un acortador de enlaces?

No necesariamente. Muchos generadores de QR pasan todos los códigos por su propio dominio corto para poder cambiar el destino más tarde. Eso sí significa que el código no te dice nada sobre dónde vas a terminar, y que el destino puede cambiar después de imprimir el código. Usa la función de vista previa del acortador, o el rastreo de redirecciones.

¿La imagen de la cámara sale de mi dispositivo?

No. Los fotogramas se analizan en el navegador y se descartan. Tampoco se transmite el contenido decodificado.