La economía del phishing en hosting gratuito
Hace cinco años, un atacante que quería un dominio falso como ledger-live-update.com tenía que registrarlo, configurar el DNS, instalar SSL y desplegar un servidor. El costo total era de 10 a 30 dólares y uno o dos días de configuración. El costo en sí no era una barrera, pero cada paso dejaba un rastro que los escáneres podían seguir. Los registros WHOIS mostraban la fecha de registro. Los certificados SSL aparecían en los registros de transparencia de certificados. Los registros DNS eran públicos. Los proveedores de detección construyeron todos sus sistemas de reputación alrededor de exactamente esas señales.
Las plataformas de hosting gratuito rompieron ese modelo de detección de la noche a la mañana. Un subdominio *.vercel.app se aprovisiona en segundos. El registro DNS apunta a la infraestructura de Vercel, no a una IP controlada por el atacante. El certificado SSL lo emite Vercel para *.vercel.app y es compartido por todos los demás sitios de la plataforma. La consulta WHOIS devuelve los datos de Vercel, no los del atacante. Cada señal externa que los escáneres usan para marcar un dominio nuevo queda oculta detrás de la plataforma.
Lo mismo aplica a Netlify (*.netlify.app), Cloudflare Pages (*.pages.dev), GitHub Pages (*.github.io), Surge (*.surge.sh), Firebase (*.web.app), Render (*.onrender.com) y otras plataformas menores. Todas ofrecen hosting gratuito en un subdominio compartido que cualquier estafador puede reclamar en menos tiempo del que tarda en prepararse un café.
Cómo luce el montaje de phishing en la práctica
El patrón más común es un sitio de asistencia para billetera hardware falso. Un estafador registra algo como hardware-identity-ledger.vercel.app, ledger-recovery-app.vercel.app o trezor-verify.vercel.app. La página es una copia casi perfecta del flujo de configuración real de Ledger Live o Trezor Suite. Pide al usuario que "verifique" o "importe" su billetera escribiendo su frase de recuperación de 24 palabras en un formulario. El formulario envía esas palabras a un servidor controlado por el atacante. En minutos, el atacante ha importado la billetera en su propia máquina y drenado todos los activos que puede encontrar.
La variante que ataca billeteras de software hace el mismo truco pero omite el formulario de frase semilla. En su lugar muestra un botón de Conectar Billetera que desencadena una transacción Web3. La transacción suele ser un setApprovalForAll, un eth_sign de un blob opaco o una aprobación ilimitada de Permit2. Los usuarios que hacen clic en confirmar sin leer la simulación están dando al atacante permiso para mover sus tokens en cualquier momento en el futuro.
Recientemente también hemos visto URLs *.vercel.app usadas para falsos "distintivos de identidad de billetera hardware": páginas que afirman verificar un nombre de usuario de Twitter o X conectando un dispositivo hardware. Parecen inofensivas a primera vista porque piden una firma en lugar de una frase semilla, pero el payload de la firma suele estar diseñado para autorizar una acción maliciosa futura en otro lugar. La página en sí no hace nada útil. La firma que captura es la que causa el daño.
Por qué incluso empleados legítimos de cripto comparten estas URLs
Esta es la parte que sorprende a la mayoría de las personas. Vemos empleados verificados de importantes empresas de billeteras hardware publicando URLs *.vercel.app desde sus propias cuentas personales como proyectos paralelos, experimentos de hackathon o prototipos. No son maliciosos. La intención es genuinamente compartir algo que construyeron. El problema es el precedente.
Cuando un usuario de Twitter con insignia verificada de Ledger o un empleado con etiqueta de Trezor comparte hardware-identity.vercel.app, el usuario que lee ese tuit aprende una lección muy específica: "las URLs de Vercel son seguras si un empleado de Ledger las compartió". Esa es exactamente la lección que el atacante necesita. La semana siguiente, el atacante registra hardware-identity-app.vercel.app, publica el mismo tipo de contenido desde una cuenta falsa con branding similar, y el usuario hace clic porque ya fue entrenado para confiar en el patrón.
La solución del lado legítimo es simple. Las empresas de billeteras hardware y los grandes protocolos DeFi deberían publicar todas sus herramientas oficiales en sus propios subdominios <marca>.com, no en hosting gratuito compartido. verify.ledger.com es verificable porque el usuario puede comprobar el dominio. hardware-identity.vercel.app no es verificable porque cualquiera puede desplegar cualquier subdominio. El costo de mover un experimento de Vercel a un subdominio real es unos minutos de configuración DNS. El costo de entrenar a los usuarios para que consideren las URLs de Vercel como oficiales se mide en billeteras drenadas.
Por qué los escáneres y herramientas de confianza suelen fallar aquí
La mayoría de los productos de detección de phishing funcionan consultando el dominio en una base de datos de reputación. Para un sitio falso en un subdominio *.vercel.app, esa consulta da una de dos respuestas. O bien la consulta verifica vercel.app en sí mismo, en cuyo caso el resultado es "confiable, proveedor de hosting legítimo y grande". O bien verifica hardware-identity-ledger.vercel.app específicamente y devuelve "sin datos, sin historial, posiblemente seguro". Ninguna de las dos respuestas marca la página como phishing.
La detección que sí funciona debe analizar el contenido, no el dominio. Específicamente, tres señales importan. Primero, ¿la página solicita una frase de recuperación de 12 o 24 palabras? Segundo, ¿la página incluye un flujo de Conectar Billetera que desencadena un setApprovalForAll o una aprobación ilimitada de Permit2? Tercero, ¿la página renderiza activos de marca (logo de Ledger, zorro de MetaMask, marca de Trezor) en un dominio que no está en la lista oficial de dominios permitidos de esa marca?
Este es el tipo de lógica de detección que la extensión SafeBrowz ejecuta localmente y que la API de SafeBrowz expone para que las apps de billetera y los agentes de IA la llamen. Monitoreamos más de 500 marcas en más de 100 idiomas, incluyendo billeteras hardware como Ledger, Trezor, Tangem, OneKey, BitBox, Coldcard, NGRAVE, SecuX, KeepKey y Ellipal. Cuando cualquiera de esos nombres de marca aparece en un subdominio de hosting gratuito que no está en la lista oficial de dominios permitidos de la marca, la página se marca como intento de suplantación de marca antes de que la billetera del usuario se conecte.
¿Es seguro vercel.app? ¿Es legítimo?
La respuesta honesta es: Vercel en sí es una plataforma de hosting legítima y bien financiada, usada por miles de empresas reales, y la mayoría de las URLs *.vercel.app no son phishing. La plataforma es segura de la misma forma en que Gmail es seguro. La plataforma en sí no es la amenaza. La amenaza es que cualquiera puede reclamar un subdominio *.vercel.app en cinco minutos, exactamente como cualquiera puede crear una dirección de Gmail. Entonces la pregunta "¿es seguro vercel.app?" tiene la misma respuesta que "¿son seguras las direcciones de Gmail?": la plataforma está bien, el remitente específico es lo que hay que verificar.
Para actividades cripto específicamente, la regla es más estricta. Si una URL *.vercel.app te pide importar una billetera, firmar una transacción o ingresar una frase de recuperación, trátala como maliciosa por defecto. Las marcas legítimas de billeteras hardware y los protocolos DeFi no despliegan flujos de billetera en producción en hosting gratuito compartido. Lo despliegan en sus propios dominios raíz, donde el certificado SSL, los registros DNS y la trazabilidad de propiedad son verificables. Una URL *.vercel.app que hace operaciones con billetera es casi siempre un montaje de phishing, independientemente de lo que diga el texto de la página.
Si encontraste una URL específica de Vercel que sospechas es phishing y deseas denunciarla, Vercel tiene un flujo de reporte de abuso en vercel.com/abuse. Las páginas alojadas en Cloudflare se pueden denunciar en cloudflare.com/abuse. Los reportes de Netlify van a abuse@netlify.com. Cada plataforma toma los reportes de phishing en serio y normalmente baja la página en horas de recibir un reporte verificado.
Señales de alerta que puedes verificar en 5 segundos
- La URL termina en
.vercel.app,.netlify.app,.pages.dev,.github.io,.web.app,.surge.sho.onrender.com. Estas son plataformas de hosting gratuito. La página oficial de cualquier billetera hardware, exchange o marca de billetera importante nunca se aloja en infraestructura compartida gratuita. La página oficial está en el dominio raíz propio de la marca o en un subdominio del mismo. - La página pide una frase de recuperación de 12 o 24 palabras. Ninguna billetera legítima pide la frase de recuperación fuera de la propia interfaz offline de la billetera. Si una página web la solicita, es una página de phishing sin importar lo bien diseñada que esté.
- La página te pide "verificar" o "importar" tu billetera para recibir un airdrop, recompensa o distintivo. Este es un desencadenante de ingeniería social común. Los airdrops legítimos no requieren importar una billetera en un sitio de terceros.
- El flujo de Conectar Billetera desencadena una transacción que no entiendes. Si el popup de la billetera muestra
setApprovalForAll,eth_signde hex opaco o un Permit2 con un gastador ilimitado, trátalo como malicioso por defecto. Lee la simulación. Rechaza si algo no está claro. - La página fue compartida en un tuit, DM, canal de Discord o grupo de Telegram con lenguaje de urgencia. "Tienes 24 horas para verificar." "La instantánea termina en 2 horas." La urgencia es un primitivo de phishing. Las marcas legítimas no dan ventanas de 2 horas para actividades reales.
Qué deberían hacer las marcas de billeteras hardware
Si trabajas en una marca de billetera hardware o protocolo DeFi y estás leyendo esto, la solución más limpia también es la más barata. Publica todos los experimentos de empleados, las presentaciones de hackathon y las herramientas prototipo en un subdominio que controles. experimental.<marca>.com, labs.<marca>.com o verify.<marca>.com funcionan bien. Reserva los subdominios. Agrégalos a tus registros DMARC, SPF y DKIM. Capacita a cada empleado para que los use en cualquier proyecto paralelo que se comparta públicamente.
El beneficio para el usuario es enorme. Una vez que una marca publica consistentemente en su propio dominio, los usuarios pueden aprender a verificar por dominio. "Siempre comprueba que la URL termine en <marca>.com" se convierte en una regla utilizable. Ahora mismo no lo es, porque los propios empleados de la marca comparten URLs <aleatorio>.vercel.app y piden a los usuarios que confíen en ellas.
Cómo SafeBrowz gestiona el phishing en hosting gratuito
La extensión SafeBrowz trata cualquier URL en un subdominio de hosting gratuito que contenga una palabra clave de marca rastreada como una página de alto riesgo. La página se retiene hasta que el contenido en pantalla es verificado para detectar indicadores de suplantación de marca. Si la página muestra el logo de Ledger, pide una frase de recuperación o intenta una conexión de billetera que solicita una aprobación de alto riesgo, la página es bloqueada con una advertencia a pantalla completa antes de que el usuario pueda interactuar.
La detección funciona en todos los navegadores Chromium (Chrome, Edge, Brave, Opera, Vivaldi, Arc), en Firefox de escritorio y Firefox para Android, y en Microsoft Edge para Android. El nivel gratuito cubre todo lo anterior. El nivel Premium añade análisis profundo con IA para patrones de suplantación de marca que las reglas locales aún no cubren, más detección de JavaScript de drenador de billeteras (Inferno, Pink, Angel, MS, Atomic) que captura el código de activación de transacción real.
El mismo motor de detección también está disponible como API pública en api.safebrowz.com/v1/detect, para que las apps de billetera y los agentes de IA puedan verificar cualquier URL antes de permitir que un usuario haga clic. El primer pago es de 0.001 USDC por solicitud a través de x402 en Solana o Base, sin necesidad de registro. Las claves Bearer empresariales están disponibles a solicitud para integradores de alto volumen.
El panorama general
El phishing en hosting gratuito no es un problema de Vercel ni de Netlify. Es un problema estructural con los subdominios compartidos como primitivo. Cada plataforma que permite a usuarios anónimos reclamar un subdominio en una zona padre confiable crea una superficie de phishing, sin importar qué tan legítima sea la zona padre. Cloudflare Workers, Replit, Render, Fly.io, AWS Amplify: la lista es larga y sigue creciendo. Los usuarios de cripto deben tratar cualquier URL en cualquiera de estas plataformas con el mismo escepticismo que aplicarían a un dominio .xyz completamente nuevo.
Si una billetera hardware, exchange o protocolo DeFi importante te pide hacer algo que involucra tus fondos, la URL debe terminar en el propio dominio raíz de esa marca. No un subdominio gratuito que lo imita. No un acortador. No un código QR de un desconocido. El dominio raíz propio de la marca. Ese es el único paso de verificación que escala.
Bloquea páginas de phishing en hosting gratuito antes de hacer clic
SafeBrowz es una extensión de navegador gratuita para Chrome, Firefox y Edge que bloquea páginas falsas de billeteras hardware, formularios de inicio de sesión falsos y dominios conocidos de drenadores cripto en tiempo real. Funciona en subdominios de hosting gratuito, registros de dominio recientes y TLDs de estafa desechables por igual. Premium añade detección de JavaScript de drenador de billeteras por $14.99 al año. La protección principal es gratuita para siempre.