Qué es realmente el token
Cuando se crea un bot, Telegram devuelve una cadena formada por un número, dos puntos y una larga secuencia aleatoria. Cada solicitud que tu software envía a Telegram incluye esa cadena, y Telegram la utiliza para determinar si la solicitud procede realmente de tu bot.
No hay un segundo factor ni una contraseña aparte. El token constituye toda la autenticación, por eso la forma en que lo proteges importa más que cualquier otro ajuste del bot.
El número que aparece antes de los dos puntos es el id del propio bot y no es secreto. La secuencia que aparece después sí lo es.
Qué puede hacer alguien que tenga tu token
Todo lo que puede hacer tu bot, y esa es la parte que suele subestimarse. Si el bot es administrador de tu canal, una persona desconocida que tenga el token puede publicar en tu nombre, eliminar mensajes y expulsar miembros. También puede leer todo lo que reciba el bot, lo que, en un grupo, incluye los mensajes para los que se le haya concedido acceso.
Nada de esto parece un ataque desde fuera. Parece que tu bot se comporta de forma extraña, por eso las filtraciones de tokens suelen detectarse tarde, después de la tercera publicación sospechosa y no de la primera.
Además, el daño no se limita a lo que ocurra a continuación. Un bot que haya publicado un enlace fraudulento entre tus miembros habrá dilapidado la confianza que tardaste un año en construir, y ninguna explicación posterior permitirá recuperarla por completo.
Dónde se filtran los tokens
Casi nunca a través de Telegram. Se filtran en capturas de pantalla publicadas para pedir ayuda, en código subido a un repositorio público, en un mensaje enviado a un desarrollador que después abandona el proyecto y en un chat de soporte con alguien que lo pidió amablemente.
El patrón es siempre el mismo: el token se trató como un ajuste y no como un secreto. Está en un archivo de configuración junto al esquema de colores, así que se copia y comparte con el mismo cuidado que el esquema de colores.
Los repositorios públicos son el caso más común y también el más fácil de evitar. Todo lo que parezca un token debe almacenarse en una variable de entorno y nunca en un archivo que vayas a incluir en un commit.
Qué hacer si se filtra un token
Revócalo. En BotFather, al generar un token nuevo para el bot, el anterior queda invalidado de inmediato y todo lo que siga usando la cadena antigua deja de funcionar. Haz eso primero y averigua después cómo se filtró, en ese orden.
A continuación, comprueba qué ocurrió mientras estuvo expuesto: las publicaciones recientes de tu canal, las expulsiones recientes de la lista de miembros y cualquier contenido enviado por el bot que tú no hayas escrito. Revocar el token cierra la puerta, pero no deshace lo que entró por ella.
Cómo debe almacenarlo una plataforma
Si confías tu token a un servicio, debe estar cifrado en reposo, en lugar de almacenarse como texto sin formato en una base de datos, y nunca debe aparecer en una línea de registro. En BotLaunch, los tokens de los bots y otros datos confidenciales se cifran en reposo con AES-256, y puedes revocar y sustituir un token en cualquier momento desde BotFather sin perder tu configuración.
Es una pregunta totalmente razonable que debes hacerle a cualquier plataforma antes de pegar nada, y una plataforma que no pueda responderla con claridad ya te está diciendo algo.
Cuándo no necesitas ningún token
La mayoría de las personas nunca tienen que usar un token. En BotLaunch, añades el bot compartido a tu canal como administrador y activas los módulos desde la web, así que no tienes que crear ningún bot ni guardar ningún token. Conectar tu propio bot personalizado, que es cuando se necesita un token, es una opción de los planes de pago para quienes quieren que lleve su propio nombre.