{"id":1033,"date":"2026-06-01T14:06:09","date_gmt":"2026-06-01T14:06:09","guid":{"rendered":"https:\/\/cybercolombia.co\/index.php\/2026\/06\/01\/tokens-de-autenticacion-openai-codex-robados-en-un-ataque-a-la-cadena-de-suministro-de-codexui-android-npm-cyberdefensa-mx\/"},"modified":"2026-06-01T14:06:09","modified_gmt":"2026-06-01T14:06:09","slug":"tokens-de-autenticacion-openai-codex-robados-en-un-ataque-a-la-cadena-de-suministro-de-codexui-android-npm-cyberdefensa-mx","status":"publish","type":"post","link":"https:\/\/cybercolombia.co\/index.php\/2026\/06\/01\/tokens-de-autenticacion-openai-codex-robados-en-un-ataque-a-la-cadena-de-suministro-de-codexui-android-npm-cyberdefensa-mx\/","title":{"rendered":"Tokens de autenticaci\u00f3n OpenAI Codex robados en un ataque a la cadena de suministro de codexui-android npm \u2013 CYBERDEFENSA.MX"},"content":{"rendered":"<div id=\"articlebody\">\n<p>Investigadores de ciberseguridad han revelado detalles de una nueva campa\u00f1a maliciosa en la cadena de suministro dirigida a desarrolladores que utilizan OpenAI Codex a trav\u00e9s de una interfaz de usuario web remota de apariencia leg\u00edtima.<\/p>\n<p>La herramienta, denominada <a href=\"https:\/\/www.npmjs.com\/package\/codexui-android\">codexui-android<\/a>se anuncia en GitHub y npm como una interfaz de usuario web remota para OpenAI Codex, y atrae m\u00e1s de 29.000 descargas semanales. El paquete todav\u00eda est\u00e1 disponible para descargar desde el repositorio.<\/p>\n<p>Lo que hace que esta actividad sea notable es que no es un ataque tradicional que utiliza un typosquat o un paquete desechable para enga\u00f1ar a los desarrolladores. M\u00e1s bien, el c\u00f3digo malicioso est\u00e1 integrado en un paquete npm funcional que ha sido objeto de desarrollo activo. El repositorio de GitHub asociado permanece limpio.<\/p>\n<p>\u00abY durante el \u00faltimo mes, cada invocaci\u00f3n ha estado filtrando silenciosamente sus tokens de autenticaci\u00f3n del Codex a un servidor controlado por un atacante\u00bb, dijo el investigador de Aikido Security, Charlie Eriksen. <a href=\"https:\/\/www.aikido.dev\/blog\/codex-remote-ui-steals-ai-tokens\">dicho<\/a>.<\/p>\n<p>Se dice que los nefastos cambios se introdujeron aproximadamente un mes despu\u00e9s de que el paquete se publicara en el registro, probablemente en un esfuerzo por generar confianza en los usuarios y ampliar su alcance. La cuenta npm asociada con el paquete es \u00abfriuns\u00bb (tambi\u00e9n conocida como Igor Levochkin).<\/p>\n<p>Dentro del paquete est\u00e1 presente un c\u00f3digo que extrae el contenido del archivo \u00ab~\/.codex\/auth.json\u00bb del Codex y lo exfiltra a un servidor remoto (\u00absentry.anyclaw[.]store\u00bb) que se hace pasar por Sentry, una plataforma leg\u00edtima de monitoreo de aplicaciones y seguimiento de errores. Los datos capturados incluyen los siguientes detalles: access_token, refresco_token, id_token e ID de cuenta.<\/p>\n<p>\u00abEl token de actualizaci\u00f3n no caduca\u00bb, dijo Eriksen. \u00abUn atacante que lo posea puede hacerse pasar por usted silenciosamente indefinidamente. Un token de actualizaci\u00f3n del Codex robado va m\u00e1s all\u00e1 del acceso a una interfaz de chat: es un acceso persistente y silencioso a cualquier cosa que esa cuenta pueda hacer\u00bb.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/ai-cant-stop-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjPEV6-530TOlxG6PjrmdlY623wpBwduZ7t1HV6flcmO5R4q4AmfixDUzW0CrhlvMVNWbhvOIso-UDNTka4W_W9Chrdj_dglwBZwi7DuePM2IMIl-hfUYVIqBXgfpr_2619K8Gptb4LzwJ6gUbi7lWl2M8AFQJsHEaw63Q7tZ6708YGruiHrr0Y2W9YYxLQ\/s728-e100\/ThreatLocker-d.png\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>Vale la pena mencionar aqu\u00ed que cada vez que un usuario inicia sesi\u00f3n en la aplicaci\u00f3n Codex, CLI o extensi\u00f3n IDE usando ChatGPT o una clave API, los detalles de inicio de sesi\u00f3n se almacenan en cach\u00e9 localmente en un archivo de texto sin formato en ~\/.codex\/auth.json o en el almac\u00e9n de credenciales espec\u00edfico del sistema operativo.<\/p>\n<p>\u00abSi utiliza almacenamiento basado en archivos, trate ~\/.codex\/auth.json como una contrase\u00f1a: contiene tokens de acceso\u00bb, OpenAI <a href=\"https:\/\/developers.openai.com\/codex\/auth\">advierte<\/a> en su documentaci\u00f3n de soporte. \u00abNo lo cometas, p\u00e9galo en tickets o comp\u00e1rtelo en el chat\u00bb.<\/p>\n<p>Curiosamente, el paquete npm est\u00e1 lejos de ser el \u00fanico vector de entrega que el actor de amenazas utiliza para atacar a los desarrolladores del Codex. Aikido dijo que observ\u00f3 una aplicaci\u00f3n de Android llamada <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=gptos.intelligence.assistant\">Agente OpenClaw Codex Claude AI<\/a> (nombre del paquete: \u00abgptos.intelligence.assistant\u00bb) que ejecuta el paquete npm dentro de su zona de pruebas PRoot y env\u00eda las credenciales del Codex al mismo punto final.<\/p>\n<p>\u00abEl APK en s\u00ed es peque\u00f1o (26 MB) y se ve limpio en un an\u00e1lisis previo a la publicaci\u00f3n de Play\u00bb, explic\u00f3 Eriksen. \u00abEn la primera ejecuci\u00f3n, extrae un espacio de usuario de Linux derivado de Termux en el almacenamiento privado de la aplicaci\u00f3n y ejecuta Node.js dentro de \u00e9l a trav\u00e9s de PRoot\u00bb.<\/p>\n<p>\u00abLa versi\u00f3n no est\u00e1 fijada, por lo que el dispositivo extrae todo lo que est\u00e1 publicado actualmente en npm. La exfiltraci\u00f3n ha estado vigente desde codexui-android@0.1.82. El paquete se ejecuta dentro del entorno limitado PRoot de la aplicaci\u00f3n, donde el inicio de sesi\u00f3n del Codex en la aplicaci\u00f3n escribe su auth.json. Una vez que el usuario inicia sesi\u00f3n, el paquete lee ese archivo fuera del entorno limitado y env\u00eda el blob OAuth completo a sentry.anyclaw.store\/startlog\u00bb.<\/p>\n<p>Lanzada por una entidad llamada \u00abBrutalStrike\u00bb, la aplicaci\u00f3n para Android tiene m\u00e1s de 50.000 descargas. La misma cadena de exfiltraci\u00f3n tambi\u00e9n se ha se\u00f1alado en una segunda aplicaci\u00f3n de Android vinculada a BrutalStrike: Codex (nombre del paquete: \u00abcodex.app\u00bb), que se ha descargado m\u00e1s de 10.000 veces. Las tres aplicaciones restantes ofrecidas por el desarrollador no contienen la funcionalidad.<\/p>\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgEn6NJdEnKoK9GkNTjgKXXYoRIoiDOekSO6DTQqVaAngk09_mFGeO-SQ-8A1mJBB0QKiXeC1sVVUjIChyEeZe0R46ssuG38JgKss_rKS9IJ8jUGlV_XVl9itMGsEraQnK2GnzuhK7XcnF8BWUCXLAAi2hMuQLuDGtXGrQ4kBTKQc4fc9ixFqZFgbgkR8wb\/s1700-e365\/brutal.png\" style=\"display: block;  text-align: center; clear: left; float: left;\"><img decoding=\"async\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgEn6NJdEnKoK9GkNTjgKXXYoRIoiDOekSO6DTQqVaAngk09_mFGeO-SQ-8A1mJBB0QKiXeC1sVVUjIChyEeZe0R46ssuG38JgKss_rKS9IJ8jUGlV_XVl9itMGsEraQnK2GnzuhK7XcnF8BWUCXLAAi2hMuQLuDGtXGrQ4kBTKQc4fc9ixFqZFgbgkR8wb\/s1700-e365\/brutal.png\" alt=\"\" border=\"0\" data-original-height=\"920\" data-original-width=\"1197\"\/><\/a><\/div>\n<p>Al <a href=\"https:\/\/github.com\/friuns2\/codex-mobile\/issues\/198\">extendiendo la mano<\/a> Al autor del paquete en GitHub, Aikido dijo que inicialmente publicaron un comentario indicando que hab\u00edan perdido el acceso a su cuenta npm, solo para editar la respuesta y publicar una diferente en la que afirmaban que \u00abactualmente est\u00e1n investigando este problema internamente\u00bb y que \u00abhan comenzado a eliminar la funcionalidad afectada y los datos relacionados\u00bb.<\/p>\n<p>El autor afirm\u00f3 adem\u00e1s que no se compartieron datos de credenciales con terceros, sin responder por qu\u00e9 este c\u00f3digo se insert\u00f3 solo en la compilaci\u00f3n del paquete npm o por qu\u00e9 necesitaban acceso a los tokens del Codex en primer lugar. El <a href=\"https:\/\/x.com\/friuns2\">perfil X<\/a> vinculado al autor incluye el dominio \u00abanyclaw[.]almacenar.\u00bb<\/p>\n<p>Registros de WHOIS <a href=\"https:\/\/whois.domaintools.com\/anyclaw.store\">indicar<\/a> que el dominio se registr\u00f3 el 12 de abril de 2026, solo dos d\u00edas despu\u00e9s de que se cargara la primera versi\u00f3n del paquete npm (versi\u00f3n 0.1.72) en npmjs[.]com.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/vpn-threat-report-m\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Ciberseguridad\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEhFlTC7RrRZGiFAgASS0noWSL0qsQGFVp8-Hvuw9yp3X3VKRuTcb5SsPX09wJzrdIM6pu1_5lS4EeZp7Sx4iYBpNJkrGnpr08yyaS1HQ5_5TxaCsP6O0OtHNuOkesn6CbNjao1GPulCJk-uljYMSfMZfBYNrngpe669t7jlRn1FqiEnXhsFD1WVkpaYIVgh\/s728-e100\/ai-d.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>Este desarrollo se produce cuando los actores de amenazas apuntan cada vez m\u00e1s a herramientas y flujos de trabajo de desarrollo de inteligencia artificial (IA) reales para robar credenciales y profundizar en la cadena de suministro de software.<\/p>\n<p>A finales del mes pasado, la empresa de seguridad belga tambi\u00e9n descubri\u00f3 que una clave API de Google eliminada permanece activa durante hasta 23 minutos, una ventana que un atacante con acceso a una clave filtrada puede aprovechar para obtener acceso a los datos del usuario y otras API, incluidas las relacionadas con Google Gemini. La ventana de revocaci\u00f3n mediana es de alrededor de 16 minutos.<\/p>\n<p>\u00abUn atacante que tenga su clave eliminada puede seguir enviando solicitudes hasta que llegue a un servidor que no se haya puesto al d\u00eda\u00bb, investigador Joe Leon <a href=\"https:\/\/www.aikido.dev\/blog\/google-api-keys-deletion\">dicho<\/a>. \u00abSi Gemini est\u00e1 habilitado en el proyecto, pueden volcar los archivos que hayas subido y filtrar conversaciones almacenadas en cach\u00e9\u00bb.<\/p>\n<p>Aunque Google inicialmente opt\u00f3 por no solucionar el problema, afirmando que es una \u00abpropiedad conocida del sistema y no un problema de seguridad\u00bb, desde entonces el gigante tecnol\u00f3gico ha decidido tratarlo como un problema. <a href=\"https:\/\/developers.google.com\/issue-tracker\/concepts\/issues\">Error P0<\/a>lo que lo convierte en un problema grave que \u00abdebe abordarse de inmediato\u00bb.<\/p>\n<p>Los hallazgos, al igual que con un <a href=\"https:\/\/www.offensai.com\/blog\/aws-iam-eventual-consistency-persistence\">ventana de explotaci\u00f3n similar de 4 segundos<\/a> observado anteriormente con las claves de acceso eliminadas de Amazon Web Services (AWS), resaltan c\u00f3mo los retrasos en la revocaci\u00f3n de credenciales son explotables y pueden usarse para obtener acceso no autorizado a los entornos de nube, mientras que los defensores asumen que las credenciales han sido revocadas.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Investigadores de ciberseguridad han revelado detalles de una nueva campa\u00f1a maliciosa en la cadena de suministro dirigida a desarrolladores que utilizan OpenAI Codex a trav\u00e9s de una interfaz de usuario web remota de apariencia leg\u00edtima. La herramienta, denominada codexui-androidse anuncia en GitHub y npm como una interfaz de usuario web remota para OpenAI Codex, y [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":752,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25,5],"tags":[181,370,249,601,2821,24,277,600,932,250,48],"class_list":["post-1033","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-noticias","category-trending","tag-ataque","tag-autenticacion","tag-cadena","tag-codex","tag-codexuiandroid","tag-cyberdefensa-mx","tag-npm","tag-openai","tag-robados","tag-suministro","tag-tokens"],"_links":{"self":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1033","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=1033"}],"version-history":[{"count":0,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/posts\/1033\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media\/752"}],"wp:attachment":[{"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/media?parent=1033"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/categories?post=1033"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cybercolombia.co\/index.php\/wp-json\/wp\/v2\/tags?post=1033"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}