{"id":1604,"date":"2026-07-16T16:35:41","date_gmt":"2026-07-16T16:35:41","guid":{"rendered":"https:\/\/cybercolombia.co\/index.php\/2026\/07\/16\/la-falla-en-el-intercambio-de-tokens-n8n-podria-permitir-a-los-atacantes-iniciar-sesion-como-usuarios-de-otro-emisor-cyberdefensa-mx\/"},"modified":"2026-07-16T16:35:41","modified_gmt":"2026-07-16T16:35:41","slug":"la-falla-en-el-intercambio-de-tokens-n8n-podria-permitir-a-los-atacantes-iniciar-sesion-como-usuarios-de-otro-emisor-cyberdefensa-mx","status":"publish","type":"post","link":"https:\/\/cybercolombia.co\/index.php\/2026\/07\/16\/la-falla-en-el-intercambio-de-tokens-n8n-podria-permitir-a-los-atacantes-iniciar-sesion-como-usuarios-de-otro-emisor-cyberdefensa-mx\/","title":{"rendered":"La falla en el intercambio de tokens n8n podr\u00eda permitir a los atacantes iniciar sesi\u00f3n como usuarios de otro emisor \u2013 CYBERDEFENSA.MX"},"content":{"rendered":"<div id=\"articlebody\">\n<p>n8n, la plataforma de automatizaci\u00f3n del flujo de trabajo, entreg\u00f3 las cuentas equivocadas al iniciar sesi\u00f3n. En instancias empresariales configuradas para confiar en m\u00e1s de un emisor de token externo, hizo coincidir un JWT entrante con un usuario local en el <code>sub<\/code> reclamo solo e ignorado <code>iss<\/code>.<\/p>\n<p>Un token v\u00e1lido del emisor A que lleva un <code>sub<\/code> que pertenece a alguien del emisor B, inici\u00f3 sesi\u00f3n como esa persona. Su contrase\u00f1a nunca apareci\u00f3. n8n envi\u00f3 la soluci\u00f3n el 24 de junio.<\/p>\n<p>El defecto se rastrea como <a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2026-59208\" target=\"_blank\"><code>CVE-2026-59208<\/code><\/a>. El registro CVE no se hizo p\u00fablico hasta el 9 de julio. n8n <a href=\"https:\/\/github.com\/n8n-io\/n8n\/security\/advisories\/GHSA-mq3m-f8x3-579w\" target=\"_blank\">acredita el informe<\/a> a la cuenta de GitHub <a href=\"https:\/\/github.com\/bearsyankees\" target=\"_blank\">ososyankees<\/a>cuyo perfil incluye a Strix, que fabrica un agente de pruebas de penetraci\u00f3n de IA.<\/p>\n<p>estrix <a href=\"https:\/\/www.strix.ai\/blog\/n8n-cross-issuer-account-takeover\" target=\"_blank\">dice<\/a> Se\u00f1al\u00f3 que el agente en el flujo de intercambio de tokens encontr\u00f3 el error de vinculaci\u00f3n de identidad all\u00ed.<\/p>\n<h2>Dos emisores, una cuenta<\/h2>\n<p>El intercambio de tokens es la ruta empresarial de n8n para <a href=\"https:\/\/docs.n8n.io\/deploy\/host-n8n\/deploy-as-an-oem-integration\" target=\"_blank\">Socios OEM que integran el producto<\/a>un <a href=\"https:\/\/docs.n8n.io\/release-notes\" target=\"_blank\">Implementaci\u00f3n de RFC 8693<\/a> eso ahorra a sus usuarios una segunda pantalla de inicio de sesi\u00f3n.<\/p>\n<p>El socio firma un JWT de corta duraci\u00f3n con su propia clave, n8n lo verifica con una clave p\u00fablica configurada, hace coincidir los reclamos con una cuenta local y el usuario est\u00e1 dentro. Las claves confiables entran <code>N8N_TOKEN_EXCHANGE_TRUSTED_KEYS<\/code>y el <a href=\"https:\/\/docs.n8n.io\/deploy\/host-n8n\/configure-n8n\/basic-configuration\/use-environment-variables\/deployment\" target=\"_blank\">documentos de implementaci\u00f3n<\/a> a\u00fan etiquete la funci\u00f3n como vista previa.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/ai-vuln-protection-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjQl2axNwsfhbXOFynrg_uAZsvHi3OvNGSA8KJO-BKR8Xm3x7yjKV3EvfY4v5mwXx6LF0uWFb9h9d9iAV_Pi-YYhqimX9wx4OaLdDJEdR215Xrxq_PAtXkaLfQso4pTSjbj6fvh_ZTliLpzWZSZfcoZgyXtKwhN-SSDDlmbtUqGLshc0KqYQGWYHMN52Sl1\/s728-e100\/zz-d.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>El token en s\u00ed se verifica. La coincidencia es el error. A <code>sub<\/code> Solo se garantiza que el valor ser\u00e1 \u00fanico dentro del emisor que lo acu\u00f1\u00f3. <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc7519.html\" target=\"_blank\">RFC 7519<\/a> pide que \u00abtenga un alcance para ser localmente \u00fanico en el contexto del emisor\u00bb o globalmente \u00fanico. El identificador de un usuario es, por tanto, el par, <code>iss<\/code> m\u00e1s <code>sub<\/code>.<\/p>\n<p>n8n codificado en la mitad. Nada impide que dos emisores emitan la misma cadena de asunto y, cuando lo hacen, ambos aterrizan en una cuenta n8n.<\/p>\n<h2>\u00bfQu\u00e9 tan importante es esto?<\/h2>\n<p>La falla alcanza una instancia solo si el intercambio de tokens est\u00e1 activado y la configuraci\u00f3n conf\u00eda en al menos dos emisores externos. <a href=\"https:\/\/github.com\/n8n-io\/n8n\/security\/advisories\/GHSA-mq3m-f8x3-579w\" target=\"_blank\">n8n dice<\/a> nada m\u00e1s se ve afectado. El intercambio de tokens es solo empresarial y todav\u00eda est\u00e1 marcado como una vista previa, por lo que el conjunto expuesto es peque\u00f1o y espec\u00edfico: implementaciones OEM, donde confiar en un segundo emisor es una configuraci\u00f3n admitida.<\/p>\n<p>Lo que el aviso no especifica es c\u00f3mo un atacante obtiene el token. S\u00f3lo dice que pueden obtener uno. La cuesti\u00f3n pr\u00e1ctica es si un usuario normal de un emisor de confianza puede influir en la <code>sub<\/code> ellos reciben. El registro p\u00fablico no lo contesta. El vector CVSS 4.0 de GitHub marca los requisitos de ataque como presentes y se detiene all\u00ed.<\/p>\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEg5_A0dukdP3uSsRE-4hAiRENYYs2QhsO2JXXFdgoU0KOFApL9CBqhjYFmJ0_PVBC7xBoUl6qm98VXYB7mH6r4UJUU2H3I4wS3Y8Tr7kPgka2Cj5jvJqQtpFqU8gTYXor0bC4_evYFTNz_YthZ4Go7xsOs_9wBASZ5o2Gtb9x83E53B2j5HPGvIYdUWBt0\/s1700-e365\/n8n.jpg\" style=\"display: block;  text-align: center; clear: left; float: left;\"><img decoding=\"async\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEg5_A0dukdP3uSsRE-4hAiRENYYs2QhsO2JXXFdgoU0KOFApL9CBqhjYFmJ0_PVBC7xBoUl6qm98VXYB7mH6r4UJUU2H3I4wS3Y8Tr7kPgka2Cj5jvJqQtpFqU8gTYXor0bC4_evYFTNz_YthZ4Go7xsOs_9wBASZ5o2Gtb9x83E53B2j5HPGvIYdUWBt0\/s1700-e365\/n8n.jpg\" alt=\"\" border=\"0\" data-original-height=\"723\" data-original-width=\"1067\"\/><\/a><\/div>\n<p>GitHub asign\u00f3 ese vector. Como aqu\u00ed la CNA pone <code>CVE-2026-59208<\/code> a 7.6 en CVSS 4.0, alto. NVD coloca el mismo error en 6.8 en CVSS 3.1, medio, y no ha emitido ninguna evaluaci\u00f3n de 4.0; su registro lleva <code>CWE-287<\/code> y <code>CWE-346<\/code>. La evaluaci\u00f3n SSVC de CISA del 13 de julio registra ninguna explotaci\u00f3n, y The Hacker News no encontr\u00f3 ninguna prueba p\u00fablica de concepto en las b\u00fasquedas del 16 de julio.<\/p>\n<p>Dos semanas antes de la correcci\u00f3n del 24 de junio, los mantenedores parchearon <a href=\"https:\/\/github.com\/n8n-io\/n8n\/security\/advisories\/GHSA-2j5h-858j-5mpf\" target=\"_blank\"><code>CVE-2026-54305<\/code><\/a>otro defecto exclusivo de Enterprise. Permite que cualquier usuario autenticado sobrescriba o revoque los tokens OAuth almacenados de otro usuario a trav\u00e9s de los puntos finales de Credenciales din\u00e1micas. \u00c9se era un control de propiedad faltante, no una vinculaci\u00f3n de identidad. Bicho diferente, misma superficie.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/sygnia-cyber-response-d-2\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjHcvlLVmAqlffm6kG54_0cGVf8WfcgzqT9B0fBSizSSeIjh8tBepXnrf6BMqKiG344WgqNejcRtEFKT1PmOzQNQBhdmu2iz9Po10z0SSDlFuZ37iip2uYibJDoxTEkbUI7Bx8NJM2Io_z_nl5p4YA-ZhqFLfi0GW1axyu-lQx-iytCn9RGSJ2iqCwdyv8m\/s1600\/sy-d-2.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>The Hacker News se ha puesto en contacto con n8n para obtener confirmaci\u00f3n sobre el alcance y el impacto de <code>CVE-2026-59208<\/code> y actualizar\u00e1 esta historia con cualquier respuesta.<\/p>\n<h2>Parchear o cortar la lista de emisores<\/h2>\n<p><code>CVE-2026-59208<\/code>  afecta a todas las versiones de n8n inferiores a 2.27.4 y 2.28.0. La soluci\u00f3n lleg\u00f3 por primera vez a 2.27.4 y 2.28.1. Esos son el piso. El 16 de julio, el paquete npm de n8n llevaba la versi\u00f3n 2.30.6 en ambos <code>latest<\/code> y <code>stable<\/code> etiquetas. Env\u00eda un nuevo menor la mayor\u00eda de las semanas por su propia cuenta, as\u00ed que verifique la etiqueta y tome la versi\u00f3n estable m\u00e1s nueva que admita su implementaci\u00f3n.<\/p>\n<p>Si la aplicaci\u00f3n de parches tiene que esperar, averig\u00fce qu\u00e9 est\u00e1 ejecutando: <code>N8N_TOKEN_EXCHANGE_TRUSTED_KEYS<\/code> contiene las claves de firma confiables y un indicador de vista previa independiente controla si el intercambio de tokens est\u00e1 activado. Vuelva a centrarse en un \u00fanico emisor de confianza o desactive la funci\u00f3n.<\/p>\n<p>El aviso llama a ambas medidas a corto plazo y dice que ninguna remedia completamente el riesgo. Esto es un texto repetitivo, id\u00e9ntico en al menos otros tres avisos de n8n, incluido el del 10 de junio. Seg\u00fan la propia declaraci\u00f3n de alcance de n8n, una instancia con intercambio de token desactivado no se ve afectada.<\/p>\n<p>Ninguna nota de la versi\u00f3n menciona la soluci\u00f3n. The Hacker News comprob\u00f3 ambos: entre ellos, el <a href=\"https:\/\/github.com\/n8n-io\/n8n\/releases\/tag\/n8n%402.27.4\" target=\"_blank\">2.27.4<\/a> y <a href=\"https:\/\/github.com\/n8n-io\/n8n\/releases\/tag\/n8n%402.28.1\" target=\"_blank\">2.28.1<\/a> Los registros de cambios cubren una correcci\u00f3n de importaci\u00f3n de Python, una actualizaci\u00f3n de un nodo de Google Ads, una verificaci\u00f3n del flujo de trabajo de IA y un cambio en la creaci\u00f3n de nodos, y nada sobre la identidad.<\/p>\n<p>El aviso es donde \u00e9ste vive. Si sus decisiones de actualizaci\u00f3n se basan en registros de cambios, este es el tipo de soluci\u00f3n que pasa desapercibida.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>n8n, la plataforma de automatizaci\u00f3n del flujo de trabajo, entreg\u00f3 las cuentas equivocadas al iniciar sesi\u00f3n. En instancias empresariales configuradas para confiar en m\u00e1s de un emisor de token externo, hizo coincidir un JWT entrante con un usuario local en el sub reclamo solo e ignorado iss. Un token v\u00e1lido del emisor A que lleva [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1379,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25,5],"tags":[151,86,24,3829,263,3828,335,52,764,798,681,1233,2511,48,1115],"class_list":["post-1604","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-noticias","category-trending","tag-atacantes","tag-como","tag-cyberdefensa-mx","tag-emisor","tag-falla","tag-iniciar","tag-intercambio","tag-los","tag-n8n","tag-otro","tag-permitir","tag-podria","tag-sesion","tag-tokens","tag-usuarios"],"_links":{"self":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1604","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/comments?post=1604"}],"version-history":[{"count":0,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1604\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media\/1379"}],"wp:attachment":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media?parent=1604"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/categories?post=1604"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/tags?post=1604"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}