¿Qué es Punycode? Todo lo que los profesionales de ciberseguridad deben saber

¿Qué es Punycode? Todo lo que los profesionales de ciberseguridad deben saber

Escrito por: Brenda Buckman

Publicado: 17/2/2026

ejemplo de captura de pantalla de punycode

Puntos clave

  • Punycode es un sistema de codificación que convierte caracteres Unicode a ASCII para su uso en nombres de dominio.
  • Los atacantes explotan punycode en ataques homográficos para crear dominios falsos que lucen idénticos a sitios web legítimos.
  • Un dominio como xn--pple-43d.com puede mostrarse como apple.com en algunos navegadores, engañando a los usuarios para que ingresen sus credenciales en sitios de phishing.
  • Las estrategias de protección incluyen la configuración del navegador, la capacitación de los empleados, el filtrado de DNS y herramientas de Detección y respuesta para endpoints (EDR).
  • Los navegadores modernos muestran cada vez más punycode en lugar de Unicode para ayudar a los usuarios a identificar dominios maliciosos.

Punycode es una sintaxis de codificación que se usa para convertir caracteres Unicode —como caracteres de escrituras no latinas, por ejemplo chino, árabe o cirílico— al conjunto limitado de caracteres ASCII que admite el sistema de nombres de dominio (DNS). En ciberseguridad, punycode es importante porque los atacantes lo explotan en ataques homográficos: registran dominios que imitan visualmente a sitios web legítimos sustituyendo caracteres Unicode parecidos para engañar a los usuarios y hacer que visiten sitios maliciosos. Entender punycode es esencial para los profesionales de TI, los proveedores de servicios administrados (MSP) y las pequeñas y medianas empresas (PYME) que buscan defenderse de campañas de phishing cada vez más sofisticadas.


¿Qué es Punycode?

Punycode es un estándar de codificación definido en RFC 3492 que representa caracteres Unicode usando únicamente los caracteres ASCII limitados que se permiten en los nombres de dominio (letras de la a a la z, dígitos del 0 al 9 y guiones). Se creó para permitir que los nombres de dominio internacionalizados (IDN) —nombres de dominio escritos en escrituras no latinas— funcionen dentro de la infraestructura DNS existente, que solo admite ASCII.

Por ejemplo, el nombre de la ciudad alemana "münchen.com" contiene el carácter "ü", que no existe en ASCII. Punycode codifica este dominio como xn--mnchen-3ya.com, lo que permite que los servidores DNS lo procesen correctamente. Cuando un usuario visita este dominio, su navegador puede decodificar el punycode y mostrar la versión Unicode legible en la barra de direcciones.

what is punycode example

¿Por qué es importante?

Por un lado, Punycode impulsa los nombres de dominio internacionalizados (IDN), lo que mejora la inclusión y la accesibilidad de internet en todo el mundo. Por otro lado, les da a los cibercriminales una forma de explotar las similitudes visuales entre los caracteres Unicode y ASCII. Esto ha creado una vía hacia algunos de los ataques más ingeniosos de internet.

¿Cómo funciona Punycode?

Punycode convierte nombres de dominio Unicode a ASCII mediante un proceso de codificación sistemático. Así es como funciona paso a paso:

  1. Se registra un dominio Unicode. Un usuario o atacante registra un dominio que contiene caracteres no ASCII (por ejemplo, "münchen.com" o un dominio que usa caracteres cirílicos que se parecen a letras latinas).
  2. Se separan los caracteres ASCII y no ASCII. El sistema de codificación identifica qué caracteres del nombre de dominio quedan fuera del rango ASCII estándar y necesitan conversión.
  3. El algoritmo Bootstring codifica los caracteres no ASCII. Los caracteres no ASCII se convierten en una cadena compatible con ASCII mediante el algoritmo Bootstring, un método de codificación de enteros de longitud variable generalizado que especifica el RFC 3492.
  4. Se agrega el prefijo ACE "xn--". El dominio codificado resultante recibe el prefijo ACE "xn--" para indicar que contiene punycode. Por ejemplo, "münchen.com" se convierte en xn--mnchen-3ya.com.
  5. El DNS resuelve la versión ASCII. El sistema de nombres de dominio procesa únicamente la versión ASCII en punycode del dominio para enrutar la solicitud a la dirección IP correcta.
  6. El navegador renderiza el dominio. Según la configuración de seguridad y las políticas del navegador, la barra de direcciones puede mostrar la versión Unicode original (por ejemplo, "münchen.com") o la versión en punycode sin procesar (por ejemplo, "xn--mnchen-3ya.com"). Esta decisión de renderizado es donde reside el riesgo de seguridad.

Todo este proceso ocurre de forma transparente y casi instantánea. Por lo general, los usuarios nunca ven la versión en punycode a menos que su navegador esté configurado para mostrarla, que es justo con lo que cuentan los atacantes.

¿Qué es un ataque de phishing con Punycode (ataque homográfico)?

Un ataque de phishing con punycode — formalmente conocido como ataque homográfico IDN — es un tipo de ciberataque en el que un atacante registra un nombre de dominio usando caracteres Unicode que son visual o casi visualmente idénticos a los caracteres ASCII de un dominio legítimo. Como los caracteres Unicode tienen puntos de código subyacentes distintos, el dominio es técnicamente diferente, pero se ve igual al ojo humano.

Por ejemplo, la letra cirílica "а" (U+0430) es visualmente indistinguible de la letra latina "a" (U+0061) en la mayoría de las fuentes. Un atacante puede registrar un dominio que reemplaza uno o más caracteres latinos por sus equivalentes cirílicos. El dominio resultante se ve idéntico al sitio web de una marca confiable en la barra de direcciones del navegador, pero apunta a un servidor completamente distinto controlado por el atacante.

El atacante luego crea una réplica convincente del sitio web legítimo — con formularios de inicio de sesión, marca y certificados SSL incluidos — y usa correos de phishing, anuncios o manipulación de motores de búsqueda para dirigir a las víctimas al sitio falso. Cuando las víctimas ingresan sus credenciales, información de pago u otros datos sensibles, el atacante captura todo.

Este ataque es particularmente peligroso porque vence uno de los consejos de seguridad más comunes: "revisa la URL antes de hacer clic." En un ataque homográfico con punycode, la URL se ve correcta incluso bajo un análisis minucioso.

Por qué punycode es una preocupación de ciberseguridad

Aquí está el problema: Unicode permite la creación de caracteres similares (homógrafos). Cuando los actores maliciosos aprovechan esto, pueden suplantar dominios legítimos y engañar a los usuarios para que visiten sitios web maliciosos. Veamos cómo funciona.

El lado positivo de punycode

  • Inclusión: Las empresas en Japón, China y Medio Oriente pueden registrar nombres de dominio en su idioma local.

  • Experiencia del usuario: Los consumidores escriben direcciones web usando caracteres que les son familiares.

El lado oscuro de punycode

  • Ataques homográficos: ¿Alguna vez has oído hablar de "microsоft.com"? ¿Notas el sutil cambio? Esa no es una "o" del alfabeto latino; es un carácter cirílico que se ve asombrosamente similar. Los hackers registran dominios falsos que replican visualmente marcas confiables y los usan para campañas de phishing y malware.

  • Evasión de detección: Los dominios codificados en punycode a menudo se cuelan por filtros de correo, listas de bloqueo de DNS e incluso ojos experimentados en ciberseguridad.

Ejemplos del mundo real

  • Ataque de phishing a Coinbase: Un correo de phishing dirigido usó el dominio falso "cоinbase.com" (con una "о" cirílica). Logró atraer a víctimas para que ingresaran sus credenciales en una página fraudulenta.

  • Fraude de facturas: Los atacantes suplantaron el correo de un ejecutivo, usando "ì" (carácter latino con acento agudo) en lugar de una "i" normal.

Anatomía de un ataque con punycode

1. Ataques homográficos

Los ataques homográficos dependen de caracteres similares para suplantar dominios. Algunos ejemplos incluyen:

  • "а" cirílica (U+0430) vs "a" ASCII

  • "τ" griega (U+03C4) vs "t" ASCII

Este truco convence a los usuarios de que están visitando sitios web legítimos cuando, de hecho, no lo son. Un par de ejemplos clásicos de traducción de punycode incluyen:

  • xn--pple-43d.com → аррӏе.com (falso "apple.com")

  • xn--microsft-5xa.com → micrоsоft.com (falso "microsoft.com")

2. Escondidos a plena vista

Las cadenas codificadas, como xn--paypal-4ve.com, a menudo parecen inofensivas en encabezados de correo o registros, evadiendo los filtros de URL con expresiones regulares.

3. Cómo evaden las herramientas heredadas

Las puertas de enlace de correo seguro (SEG) y herramientas de seguridad más antiguas pueden no decodificar ni analizar completamente el punycode, lo que permite que los ataques pasen desapercibidos.

4. Suplantación de emojis en dominios

Incluso los emojis reciben tratamiento de punycode. Por ejemplo, 🌐.com se traduce a xn--i-7iq.com, lo que hace que una campaña de phishing sea aún más difícil de detectar, gracias a su novedad.

Por qué los ataques con punycode son especialmente peligrosos

Los ataques con punycode son como fantasmas en la máquina de TI: no son fáciles de detectar y son casi imposibles de detener si no estás preparado.

  • Indetectables para los usuarios: Los caracteres similares en Unicode pueden ser visualmente idénticos a las URL legítimas, en particular en ciertas fuentes o configuraciones de baja resolución.

  • Explotación de dispositivos móviles: Pantallas pequeñas, falta de vistas previas al pasar el cursor y navegación apresurada hacen que los usuarios de celulares sean particularmente vulnerables.

  • Discrepancias entre navegadores: Mientras Chrome puede mostrar el punycode sin procesar, Safari a menudo muestra el Unicode, lo que genera inconsistencia en la detección.

¿Cómo usan los hackers el punycode en los ciberataques?

Los hackers usan punycode como herramienta fundamental en varios tipos de ciberataques dirigidos a la percepción humana, no a vulnerabilidades técnicas. Los métodos de ataque más comunes incluyen:

Campañas de phishing para robo de credenciales

El uso más común de punycode en ciberataques es el phishing. Los atacantes registran un dominio homógrafo, crean una copia exacta de un sitio web objetivo (como un banco, proveedor de correo electrónico o aplicación SaaS) y envían correos de phishing que dirigen a las víctimas al sitio falso. Como el dominio parece legítimo, las víctimas ingresan sus nombres de usuario y contraseñas sin sospechar nada. El atacante recolecta estas credenciales y las usa para acceder a cuentas reales, venderlas en mercados de la dark web o lanzar nuevos ataques.

Preparación para el Compromiso del correo electrónico empresarial (BEC)

Los atacantes usan dominios con punycode para hacerse pasar por ejecutivos, proveedores o socios en esquemas de Compromiso del correo electrónico empresarial. Al registrar un dominio homógrafo que coincide con el dominio real de una empresa, el atacante puede enviar correos que parecen provenir de una fuente confiable, solicitando transferencias bancarias, documentos confidenciales o cambios en la información de pago.

Distribución de malware

Los dominios homógrafos sirven como mecanismos de entrega convincentes para el malware. Un atacante crea una página falsa de descarga de software en un dominio con punycode que imita a un proveedor confiable. Las víctimas que buscan software legítimo pueden terminar en el sitio falso y descargar instaladores troyanizados que despliegan ransomware, troyanos de acceso remoto (RAT) o programas que roban información.

Ataques de pozo de agua (watering hole)

En campañas dirigidas, los atacantes identifican sitios web que suelen visitar los empleados de una organización específica, registran versiones homógrafas de esos dominios y redirigen o atraen a los objetivos hacia los sitios falsificados. Estos ataques de pozo de agua pueden entregar cargas maliciosas diseñadas para comprometer redes específicas.

Ataques a la cadena de suministro

Los dominios con punycode se pueden usar para hacerse pasar por repositorios de software, endpoints de API o servidores de actualización. Si se engaña a un desarrollador o a un sistema automatizado para que se conecte a un dominio homógrafo en lugar del servicio legítimo, el atacante puede inyectar código malicioso en la cadena de suministro del software.

¿Cómo puedes detectar un ataque de punycode?

Detectar ataques de punycode requiere una combinación de controles técnicos y conciencia humana. Estos son los métodos de detección más efectivos:

  • Busca el prefijo "xn--". Si una URL contiene "xn--" al inicio del nombre de dominio, se trata de un nombre de dominio internacionalizado codificado con punycode. Aunque no todos los dominios con punycode son maliciosos, un prefijo "xn--" inesperado en contextos empresariales es una señal de alerta.
  • Configura tu navegador para mostrar punycode. La mayoría de los navegadores modernos se pueden configurar para mostrar la versión en punycode de los dominios IDN en lugar de renderizar los caracteres Unicode. En Firefox, configura network.IDN_show_punycode en true dentro de about:config. Chrome y Edge ahora muestran punycode de forma predeterminada en dominios que mezclan escrituras de distintos idiomas.
  • Pasa el cursor sobre los enlaces antes de hacer clic. Antes de hacer clic en cualquier enlace de un correo, mensaje o documento, pasa el cursor sobre él para inspeccionar la URL de destino real. Busca caracteres inusuales, dominios inesperados o el prefijo "xn--".
  • Usa herramientas de inspección de URL. Los decodificadores de punycode en línea y los escáneres de URL pueden revelar los verdaderos caracteres Unicode detrás de un dominio con punycode, lo que facilita identificar las sustituciones.
  • Implementa filtrado de DNS e inteligencia de amenazas. Las soluciones de seguridad de DNS pueden marcar o bloquear dominios homógrafos conocidos y dominios recién registrados que coincidan con patrones asociados a ataques de punycode.
  • Monitorea los registros de transparencia de certificados SSL. Los registros de Transparencia de Certificados (CT) registran todos los certificados SSL emitidos públicamente. Monitorear estos registros en busca de certificados emitidos para dominios que se parezcan mucho al dominio de tu organización puede dar una alerta temprana de intentos de suplantación.
  • Implementa seguridad de correo electrónico con detección de homógrafos. Las puertas de enlace avanzadas de seguridad de correo electrónico y las herramientas de detección de phishing pueden analizar las URL en los correos entrantes en busca de codificación punycode y marcar los mensajes que contengan dominios homógrafos.

¿Cómo te proteges contra los ataques de punycode?

Proteger tu organización de los ataques de punycode requiere una estrategia de defensa en capas que combine tecnología, capacitación y procesos. Así se construye una protección integral:

Configuración de navegadores y endpoints

  • Configura todos los navegadores de la organización para mostrar punycode en lugar de renderizar Unicode para dominios IDN.
  • Implementa extensiones de navegador o políticas de endpoint que adviertan a los usuarios cuando naveguen a dominios codificados en punycode.
  • Mantén los navegadores actualizados: las versiones modernas de Chrome, Edge, Firefox y Safari tienen protecciones integradas contra dominios homógrafos con scripts mixtos.

Capacitación de los empleados en security awareness training

  • Capacita a los empleados para reconocer los ataques de punycode como parte de los programas regulares de concientización sobre phishing.
  • Enseña al personal a guardar los sitios importantes en marcadores y a navegar directamente a ellos en lugar de hacer clic en enlaces de correos.
  • Realiza ejercicios de phishing simulado que incluyan ejemplos de dominios homógrafos.
  • Enfatiza que incluso las URL que "se ven correctas" pueden ser maliciosas.

Seguridad del correo electrónico

  • Implementa soluciones de seguridad de correo con análisis avanzado de URL capaces de detectar dominios punycode y homógrafos.
  • Implementa DMARC, SPF y DKIM para reducir la probabilidad de que lleguen correos falsificados a las bandejas de entrada.
  • Configura las puertas de enlace de correo para marcar o poner en cuarentena los mensajes que contengan enlaces a dominios recién registrados o URL codificadas en punycode.

Seguridad y filtrado de DNS

  • Usa servicios de filtrado de DNS que mantengan listas de bloqueo de dominios homógrafos conocidos y marquen registros IDN sospechosos.
  • Monitorea los dominios recién registrados que se parezcan al dominio de tu organización o a los dominios de proveedores clave.

Defensa en el registro de dominios

  • Registra de forma proactiva las variaciones en punycode del dominio principal de tu organización para evitar que los atacantes las reclamen.
  • Registra las variaciones homógrafas comunes usando cirílico, griego y otros scripts que contengan caracteres parecidos.
  • Usa servicios de monitoreo de dominios para recibir alertas cuando terceros registren dominios similares.

Detección y respuesta para endpoints (EDR)

  • Implementa soluciones EDR capaces de detectar y bloquear conexiones a dominios maliciosos conocidos, incluyendo dominios homógrafos.
  • Usa feeds de inteligencia de amenazas que incluyan indicadores de compromiso (IOC) de dominios punycode.
  • Asegúrate de que tu plataforma EDR dé visibilidad sobre las consultas DNS, la actividad del navegador y las conexiones de red para identificar la infraestructura de phishing antes de que se comprometan las credenciales.

Términos relacionados de ciberseguridad

  • Nombre de dominio internacionalizado (IDN): Un nombre de dominio que contiene caracteres de scripts no ASCII, como árabe, chino, cirílico o devanagari. Los IDN dependen del punycode para la compatibilidad con el DNS.
  • Ataque homográfico: Un ciberataque que explota similitudes visuales entre caracteres de distintos sistemas de escritura para crear nombres de dominio, URL o nombres de usuario engañosos.
  • ACE (codificación compatible con ASCII): El formato de codificación que usa el prefijo "xn--" para identificar nombres de dominio codificados en punycode dentro del sistema DNS.
  • Bootstring: El algoritmo de propósito general definido en el RFC 3492 que forma la base de la codificación punycode, y que convierte secuencias de enteros de longitud variable en cadenas ASCII compactas.
  • Suplantación de dominios por errores tipográficos: Una técnica de ataque relacionada pero distinta, en la que los atacantes registran versiones mal escritas de dominios populares (por ejemplo, "gogle.com"). A diferencia de los ataques homográficos, esta técnica depende de errores de tipeo en lugar de un engaño visual de caracteres.
  • Filtrado de DNS: Un control de seguridad que bloquea el acceso a dominios maliciosos o sospechosos a nivel de resolución de DNS, evitando que los usuarios se conecten a sitios de phishing, servidores de distribución de malware y dominios homográficos.
  • Detección y respuesta para endpoints (EDR): Una solución de ciberseguridad que monitorea los dispositivos endpoint en busca de actividad sospechosa, incluyendo conexiones a dominios maliciosos, y da herramientas para la investigación y la remediación.

Cómo adelantarte a las explotaciones de punycode

El punycode se creó para hacer de internet un lugar más inclusivo, pero esa inclusividad viene con riesgos. Para los profesionales de ciberseguridad, adelantarse a estas explotaciones significa mantenerse informado.

Al final del día, defenderte del phishing con punycode no se trata solo de tener herramientas; se trata de visibilidad, vigilancia y acción. Capacita a tu equipo, refuerza tus sistemas y mantén un ojo puesto en ese prefijo "xn--" aparentemente inofensivo.


Agradecimiento especial a Dave Kleinatland por los gráficos de esta guía.

Preguntas frecuentes sobre el punycode en ciberseguridad

El punycode es un sistema de codificación que convierte caracteres Unicode (como los de scripts no latinos, como el chino, árabe o cirílico) en caracteres ASCII para que se puedan usar dentro del sistema de nombres de dominio (DNS). Por ejemplo, "münchen.com" se convierte en "xn--mnchen-3ya.com".

El punycode se puede explotar en ataques homográficos, donde los cibercriminales usan caracteres similares de Unicode para imitar dominios legítimos. Por ejemplo, "microsоft.com" (usando una "о" cirílica) puede engañar a los usuarios haciéndoles creer que visitan un sitio confiable, lo que lleva a phishing o distribución de malware.

Busca dominios que tengan un prefijo como "xn--". Esto indica que fueron codificados con punycode. Las herramientas y configuraciones del navegador pueden ayudar a mostrar el punycode sin procesar en lugar de la representación Unicode.

Las empresas pueden:

  • Capacitar a los empleados para que reconozcan los intentos de phishing y los ataques homográficos.
  • Usar servicios de monitoreo de dominios para marcar registros fraudulentos.
  • Activar configuraciones del navegador que fuercen la visualización en ASCII para una mejor visibilidad.
  • Implementar un filtrado de DNS avanzado para detectar actividad sospechosa.

Sí, existen herramientas de decodificación en línea que pueden convertir el punycode de vuelta a su representación Unicode. Estas herramientas son valiosas para verificar URL sospechosas y prevenir ataques de phishing.

Recursos adicionales

Más información sobre Qué es la transformación de la ciberseguridad
Qué es la transformación de la ciberseguridad
Ciberseguridad 101

Descubre qué significa la transformación de la ciberseguridad, por qué es esencial para las organizaciones modernas y cómo implementar una estrategia de seguridad integral.

Más información sobre ¿Qué es la seguridad de las aplicaciones (AppSec)?
¿Qué es la seguridad de las aplicaciones (AppSec)?
Ciberseguridad 101

Descubre qué es la seguridad de las aplicaciones y cómo protege las aplicaciones de vulnerabilidades, resguarda los datos y garantiza el acceso seguro de los usuarios.

Más información sobre ¿Qué es la gestión de la postura de seguridad de las aplicaciones (ASPM)?
¿Qué es la gestión de la postura de seguridad de las aplicaciones (ASPM)?
Ciberseguridad 101

Descubre cómo la ASPM da visibilidad de seguridad continua a lo largo del ciclo de vida del desarrollo de software, ayudando a las organizaciones a priorizar riesgos y agilizar la remediación.

Ofrece una experiencia impactante de SAT

No te limites a marcar una casilla de cumplimiento. Eleva la cultura de seguridad de tu lugar de trabajo mientras le das a tus empleados una experiencia agradable.

Probar Huntress gratis