3 puntos por GN⁺ 2026-02-12 | 1 comentarios | Compartir por WhatsApp
  • Un script que hace pasar automáticamente como adulto los procesos de verificación de edad en varias plataformas
  • Si pegas y ejecutas código en la consola de Discord, envía automáticamente una solicitud a la API /age-verification/verify y te lleva a la página de verificación completada
  • En otras plataformas como Twitch, Kick y Snapchat también se puede verificar del mismo modo ingresando la URL del código QR
  • Esta herramienta abusa de la estructura de procesamiento de datos faciales del sistema k-id para generar metadatos legítimos sin un rostro real
  • Fue creada para acompañar la expansión global de la verificación de edad, replicando el cifrado AES-GCM y una estructura de datos predecible para pasar el proceso de validación

Proceso de verificación en Discord

  • Funciona pegando y ejecutando un script específico en la consola de desarrollador (F12) de la app web de Discord
    • El script extrae la caché de módulos webpack de Discord, encuentra el cliente interno de la API y envía una solicitud al endpoint /age-verification/verify
    • Luego redirige la verification_webview_url recibida en la respuesta a age-verifier.kibty.town
  • El usuario resuelve el captcha y espera hasta que la página muestre “success” para completar la verificación
  • Con este proceso, la cuenta de Discord queda marcada como verificada como adulta

Método de verificación en otras plataformas (Twitch, Kick, Snapchat, etc.)

  • En la página de verificación de edad de cada plataforma, se selecciona la opción “selfie” y se copia la URL del código QR mostrado
  • Esa URL se pega en el campo de entrada de age-verifier.kibty.town y se hace clic en el botón “verify”
  • Después, el procedimiento de verificación avanza automáticamente hasta mostrar el mensaje de éxito

Cómo funciona

  • El sistema de verificación de edad k-id que usa Discord no envía el video facial al servidor, sino solo metadatos relacionados con el rostro y detalles del proceso
    • Gracias a esta estructura, si se manipulan y envían metadatos que parezcan legítimos, es posible pasar la verificación sin un rostro real
  • Después de que se publicara el k-id verifier de amplitudes, el socio faceassure reforzó la validación, pero esta herramienta la elude con un método nuevo

Pasos técnicos detallados

  • Paso 1: replicar los parámetros de cifrado
    • Al compararlo con una solicitud legítima, se identificaron los parámetros faltantes: encrypted_payload, auth_tag, timestamp e iv
    • Usa cifrado AES-GCM, y la clave se genera derivando nonce + timestamp + transaction_id con HKDF(SHA-256)
    • Se reprodució la misma estructura para generar los parámetros faltantes
  • Paso 2: manipulación de datos de predicción
    • Aunque se replicó perfectamente el cifrado, seguía fallando, así que se confirmó que la validación depende de los “prediction arrays” (outputs, primaryOutputs, raws)
    • A partir de los datos de raws, se generan outputs y primaryOutputs eliminando valores atípicos mediante z-score
    • Además, se validan las siguientes condiciones
      • Los valores xScaledShiftAmt y yScaledShiftAmt solo pueden ser uno de dos posibles
      • El nombre del medio (cámara) debe coincidir con la lista real de dispositivos
      • El tiempo de finalización del estado debe coincidir con la línea temporal
  • Se ha publicado el código open source que implementa todo este proceso, y cualquiera puede revisarlo

Publicación y contexto de creación

  • La persona creadora expresa agradecimientos a xyzeva, Dziurwa y a amplitudes, que ya había realizado trabajos relacionados
  • Se explica que, como Discord aplicará de forma global la verificación de edad en marzo, se exploró un nuevo método para eludir esta validación acorde a ese cambio

1 comentarios

 
GN⁺ 2026-02-12
Opiniones en Hacker News
  • La forma realmente robusta sería generar una entrada de video artificial en lugar de usar una webcam real
    No creo que ninguna plataforma pueda impedir eso
    Incluso si la plataforma exige una entrada de cámara difícil de falsear como la de un teléfono, bastaría con poner una cámara frente a una pantalla de alta resolución
    Este tipo de juego del gato y el ratón no va a durar mucho

    • Queda la duda de si la plataforma realmente querría impedirlo
      Una verificación de edad imperfecta basada en selfie en video en realidad beneficia a todos
      La gente sensata no tiene que subir su licencia de conducir o pasaporte, y a la plataforma le resulta más fácil retener usuarios
      Los sitios porno pueden crear cuentas de usuario para aumentar el seguimiento y los ingresos por publicidad
      Los políticos pueden anunciar que “implementaron políticas de restricción por edad”, y los padres se quedan tranquilos pensando que sus hijos no ven porno
      Al final, todos ganan
    • Ya existen dispositivos con funciones de atestación de hardware, como las cámaras de Windows Hello
      Parece que este tipo de verificación terminará yendo en esa dirección
      Probablemente una de las razones por las que Google impulsó apps exclusivas de Play Store fue para crear este tipo de cadena de software verificable
    • Si el escaneo facial no es posible, pueden cambiar a verificación con ID
      Al final es un problema que se resuelve con solo cambiar un interruptor
    • Hay rumores de que Apple añadirá un sensor de imagen multiespectral al iPhone de próxima generación
      Junto con el mapeo 3D, un truco de simplemente mostrar una pantalla no funcionaría
      El problema es que servicios de verificación de edad como Discord no lo intentan en serio
    • Estoy de acuerdo con que este juego no va a durar mucho, pero por otra razón
      Yo simplemente no voy a jugarlo y dejaré de usar la plataforma
  • Este método tiene tres problemas

    1. Reduce la fricción de la verificación de edad para que la gente permanezca dentro de ecosistemas cerrados
    2. Justifica verificaciones más invasivas con el argumento de que “los métodos amigables con la privacidad se eluden demasiado fácil”
    3. Incentiva a la gente a ejecutar código arbitrario mientras está conectada a su cuenta
    • Demostrar que algo es posible no es lo mismo que recomendarlo
      Este es un excelente ejemplo de ingeniería inversa que muestra lo difícil que es verificar sin invadir la privacidad
      Como el código está publicado, el problema de ejecutar código arbitrario (#3) no aplica
      Si las empresas responden con métodos más invasivos (#2), los usuarios siempre pueden mudarse a otra plataforma
  • Me parece una idea bastante ingeniosa
    Da la impresión de que Discord relajó la verificación de edad solo lo suficiente como para poder decirle a los reguladores que “está tomando medidas para proteger a los menores”
    Pero si el gobierno empieza a vigilar en serio, este enfoque no va a durar
    Algunos países ya exigen biometría más fuerte, y algunos servicios están migrando a verificación basada en app móvil
    Los simples trucos basados en JavaScript cada vez van a servir menos

  • Recomiendo envolver el código en una función autoejecutable (IIFE)
    En Safari de macOS no funciona porque no soporta top-level await
    Más información en caniuse.com/wf-top-level-await

    • Safari muestra una actitud de no querer soportar estándares web modernos
      Ya va con 5 años de retraso
  • Al probarlo, me redirige a https://age-verifier.kibty.town/webview?url=null
    y aparece el mensaje {"error":"error parsing webview url"}
    Parece que mi cuenta de Discord está en una prueba A/B y usa otro proveedor de verificación llamado Persona

    • Persona es conocida como una empresa que recopila y comparte datos, como cuando te piden mostrar tu identificación para entrar a un bar
      Si buscas, vas a encontrar más información
    • Tuit relacionado: https://x.com/xyz3va/status/2021734252505604108
    • Ojalá este comentario suba para que el equipo de seguridad lo vea
  • De hecho funciona
    Recibí en Discord el mensaje de que “fui clasificado como parte de un grupo de adultos”
    (Narrador) Y en ese momento, se dio cuenta de que le habían hackeado la cuenta ;)

    • A mí también me funcionó
      Espero que mi cuenta de 11 años no tenga problemas, pero si me piden cara o ID, pienso cerrarla y salir de ahí
    • Sería más divertido verificarte con el personaje g-man de Half-Life
    • Por si acaso, después cambié la contraseña
  • No entiendo por qué las generaciones jóvenes se aferran tanto a servicios que les son hostiles
    ¿Será que la comodidad de quedarse en una plataforma que odian pesa más que el esfuerzo de buscar alternativas?

    • Decir que “buscar alternativas es un esfuerzo menor” presupone cierta base técnica
      Para mucha gente joven hoy en día, incluso la idea de terminal o rutas de archivos ya les resulta ajena
      Saben buscar, pero configurar una alternativa por cuenta propia es otra cosa
      Sobre todo, falta la noción misma de que puede existir una alternativa
    • Además del efecto de red, hay una falta real de alternativas
      Plataformas abiertas como Matrix todavía se quedan cortas en funciones, y Discord termina siendo la opción menos mala
    • Al final la razón es simple: efecto de red
      Mis amigos están ahí, así que yo también estoy ahí
    • La mayoría de las comunidades de Discord no están bajo mi control
      Cada vez que cambias de plataforma, se pierden miembros y la comunidad se desmorona
      Ese “esfuerzo menor” en realidad termina matando a la comunidad
    • Es la misma razón por la que la gente de mediana edad sigue usando Facebook Marketplace
      Aunque usen otra plataforma, terminan quedándose solos
      Lograr que todos se muevan al mismo tiempo es casi imposible
  • Pasé el captcha en Discord,
    pero apareció el error {"error":"failed to execute k-id privately action (status=404)"}
    Yo claramente soy adulto, y este proceso es ridículo
    No me importa si me bloquean

    • Yo también vi el mismo error, pero al recargar funcionó
    • Parece que hay otra etapa indicada en el código
  • Resumen de noticias relacionadas

  • El juego del gato y el ratón de la verificación de edad digital impone una enorme carga regulatoria
    Si se puede eludir tan fácilmente, entonces las plataformas solo están marcando una casilla regulatoria,
    y la base de confianza real es muy frágil

    • Sí hay una forma que podría dejar a todos conformes
      Pero a las empresas no les gusta porque no les permite obtener datos verificados de usuarios adultos
      Más sobre eso en el blog de Google sobre Age Assurance Europe
    • No puede ser perfecto
      El objetivo de estos sistemas no es bloquear de forma perfecta, sino agregar fricción para que el público no pueda eludirlos fácilmente