⚡ EL CUARTO DE GATOOSCURO | 🏠 INICIO | 📄 PÁGINAS | 📰 ARTÍCULOS

El cuarto de GatoOscuro

Todo tiene una razón de ser

¿Por qué no uso XMPP?

Publicado el 03/12/2023

Categorías: general

En ocasiones puedo ser un poco incendiario y lo reconozco ja ja. Hace un día hice una publicación en Mastodon acerca de XMPP y un problema que afectaba a dos servidores de dicha red, en el que escribía lo siguiente:

"¿Dónde están los que apoyaban a XMPP? Siempre consideré que era un protocolo viejo que jamás evolucionó y mis razones tenía.

Edit: Aunque el fallo no es directamente del protocolo, anexo mi desacuerdo en el respaldo que ha mantenido este protocolo heredado, mi mayor razón es la de incompatibilidad entre sí en clientes y protocolos de cifrado, siendo también un riesgo latente".

No anexo fuente porque pasado 7 días automáticamente se borrara la publicación, así prefiero mantener mi Mastodon.

Y sí… el edit me toco colocarlo minutos después debido a las discusiones que se tornaron conforme a la publicación y bueno, acá vengo a escribir un artículo serio y a explicar por qué no uso XMPP y de cierta forma por qué no lo respaldo, con fuentes e información que se puede verificar.

Recapitulemos

El 28 de Octubre de 2023 fue publicado un artículo en The Hackers News qué decía lo siguiente:

"Investigadores descubren espionaje en servicio de mensajería instantánea basado en XMPP.

Se interceptó tráfico desde jabber[.]ru, un servicio de mensajería instantánea basado en XMPP, a través de servidores alojados en Hetzner y Linode en Alemania. El ataque se descubrió debido a la expiración de un certificado MiTM, y se estima que duró seis meses. Los usuarios del servicio deben asumir que sus comunicaciones de los últimos 90 días están comprometidas y cambiar sus contraseñas (...)". Fuente.

PD: Gracias a mi amigo Cristian, quien fue el que me dio a conocer la nota. 

Debido a ese artículo, hice tal publicación en Mastodon. Qué bueno, admito que no es correcto generalizar una falla en dos servidores para todo un servicio descentralizado. Aunque deja en evidencia un cuestionamiento que se ha sabido siempre sobre XMPP y qué me permito resaltar a continuación debido a que por mucho tiempo se recomienda cómo un 'protocolo seguro' o un lugar para realizar comunicaciones seguras. Pero hay un pequeño inconveniente de por medio, lo cual genera una mera sensación de seguridad.

XMPP es un protocolo de mensajería instantánea que puede presentar varias fallas debido a las incompatibilidades entre los diferentes protocolos de cifrado y los diferentes clientes. Estas incompatibilidades pueden generar desacuerdo para la correcta utilización de la criptografía y asegurar los chats, siendo más precisos:

  • Incompatibilidad de protocolos de cifrado: XMPP soporta varios protocolos de cifrado, y la elección de uno sobre otro puede generar incompatibilidades. Por ejemplo, OpenPGP para XMPP (OX) es un protocolo de cifrado que ha sido criticado por sus problemas de diseño de seguridad y se recomienda no implementarlo.
  • Incompatibilidad entre clientes (referente a la aceptación e integración de los protocolos mencionados): Los diferentes clientes de XMPP pueden no ser compatibles entre sí, lo que puede generar problemas de seguridad. Por ejemplo, OTR (Off-the-record Messaging) es un protocolo de cifrado diseñado para proteger las conversaciones de mensajería instantánea. Sin embargo, su uso en XMPP no está estandarizado y se recomienda no implementarlo a menos que sea necesario para la compatibilidad con clientes heredados.
  • Configuraciones de seguridad: La seguridad de XMPP depende en gran medida de las configuraciones del servidor. Por ejemplo, un servidor XMPP se considera seguro cuando está configurado para no permitir ninguna comunicación en texto plano entre servidores y conexiones de clientes. Sin embargo, si estas configuraciones no se realizan correctamente, puede haber problemas de seguridad.
  • Atacantes aprovechando la superficie de ataque de XMPP: Los atacantes pueden aprovechar las características de XMPP para recuperar datos sensibles. Por ejemplo, XEP-0055: Jabber Search puede proporcionar información valiosa para los atacantes sobre una organización (Quizás en la actualidad haya muchos menos servicios vulnerables a esto debido a que se descubrió y se difundió el problema en el año 2021).
Lista de protocolos de cifrado con pros y contras.

En realidad, todos estos problemas tienen una solución: que todos los clientes de XMPP sean compatibles entre sí, elegir un protocolo de cifrado compatible y configurar correctamente el servidor XMPP. Pero, de la teoría a la práctica, es muy complicado. En mis tiempos que tuve cuenta en XMPP, siempre tuve fallas con esta situación. Todavía hay un usuario que usan clientes y protocolos heredados por amor y así se les recomienda migrar, no lo hacen porque son reacios al cambio. Además, todas las salas públicas estaban sin cifrado, lo que por supuesto abre una brecha de seguridad más. Es cuando cobra sentido el artículo de la vulnerabilidad expuesta más arriba y con la que le argumentaba a quienes aportaron conocimiento en Mastodon: si no hay seguridad en el transporte y mucho menos en los datos, ¿dime cómo quedas? Tal cual y cómo viniste al mundo, ese fue mi ejemplo frente a dicha situación.

A pesar de que solo fueron dos servidores los afectados, no significa que sea exclusivo de ellos. También puede suceder en otros servidores. Al tener la mala costumbre de emplear el cifrado como segunda opción, al darse este tipo de vulnerabilidades, como la MiTM, por supuesto, quedarás totalmente expuesto. En ese caso, colocaría como ejemplo a Telegram. Es que al dejar el cifrado de forma opcional, produce en masa una sensación de seguridad que se ha evidenciado por mucho tiempo. Gente y medios han recomendado Telegram como una 'mensajería segura', cuando fuera de sus chats secretos podría quedar casi igual a Messenger de Facebook. Agrego el 'casi igual' porque Telegram implementó su propio cifrado para asegurar la información en la nube, qué bueno... tampoco convence a la mayoría de criptógrafos.

El caso de Tor Messenger

Este caso en particular fue uno que me hizo cambiar la perspectiva que tenía hacia XMPP y es que, durante el 2015 el proyecto Tor había anunciado su programa multiplataforma que pretendía ser seguro de forma predeterminada enviando todo su tráfico a través de Tor y aplicando conversaciones individuales cifradas mediante la agrupación y el uso de OTR (Off-the-Record) en XMPP, por supuesto ¿qué paso? Tiempo después hicieron un artículo titulado "Puesta de sol en Tor Messenger" en el que anunciaban la detención del desarrollo de Tor Messenger dando varias razones, entre ellas la detección del proyecto Instantbird en el cual se basaban, también comentaban acerca de los escasos recursos con los que contaban para continuar desarrollando el mismo y eso no es todo, una de las razones que quiero destacar textualmente:

 "El problema de los metadatos

Como se describió anteriormente, una arquitectura cliente-servidor centralizada sufre fugas de metadatos y Tor Messenger hereda esos problemas sin poder mitigarlos. Los metadatos filtran información sobre los participantes y sus gráficos sociales, y aunque no revelan los datos reales, pueden revelar patrones sobre tu comunicación: quiénes son tus amigos, cuándo hablas con ellos, cuánto hablas con ellos, etc".

De ahí a que pasaron a recomendar otras mensajerías… eso ya deja mucho que decir y no me voy a extender más en ello, cada quien debería sacar su conclusión.

Posible solución

No quiero que malinterpreten, no quiero que esto parezca un artículo desprestigiando al proyecto XMPP y a sus desarrolladores, para nada, creó que ellos y su comunidad han sabido resistir los años y han estado siempre muy unidos. Además, que aún siguen manteniendo ese espíritu comunitario que después de tantos años se hace difícil mantener para algunos.

Es muy importante destacar el modelo de amenaza, si tu nivel de amenaza no es alto, no deberías porque preocuparte y salir corriendo de XMPP, no para nada, ¿qué hay alternativas mejores? Sí, SimpleX Chat parece ser la gran promesa de toda la red, pero XMPP aún hoy en día sigue siendo una alternativa, a pesar de todo y casi parecer un protocolo heredado, pues se ha sabido mantener. De hecho, han estado organizando eventos oficiales en los que planean discutir tal situación e incluso un talentoso desarrollador, el Sr. Stephen P. Weber (singpolyma) publicó un sitio para verificar el monitoreo de Machine-in-the-middle lo cual servirá de gran ayuda para mitigar ese tipo de ataques.  

Cogí un server al azar y vean, certificado caducado... es un ejemplo de lo que les decía.

En fin... no hay una verdad absoluta y si tienes un aporte mejor, adelante, ¡hazlo! Se agradece cualquier corrección y aporte al mismo.

Mis mayores agradecimientos a Aperales, C3po, Cristian, Niko quienes se unieron a la discusión y aportaron información relevante al tema.

Imagen sacada de acá.

← Volver al inicio


⬅️ VOLVER AL ÍNDICE | 🏠 PÁGINA PRINCIPAL
🟢 24/02/2026