
Investigadores de ciberseguridad han descubierto un ataque con un solo clic a través de Microsoft Visual Studio Code (VS Code) que permite a los usuarios robar sus tokens de GitHub.
«Con solo hacer clic en un enlace, un atacante podría robar tokens de GitHub que le permiten leer y escribir repositorios, incluidos repositorios privados», dijo el investigador de seguridad Ammar Askar.
GitHub admite una función llamada GitHub.dev que se ejecuta como un editor de código fuente ligero basado en web en un entorno limitado de navegador web al iniciar un entorno VS Code. Esto permite a los usuarios enviar solicitudes de extracción y realizar confirmaciones.
«Esta funcionalidad se habilita mediante la PUBLICACIÓN de github.com en github.dev a través de un token OAuth, lo que le permite interactuar con GitHub en su nombre», dijo Askar. «El alcance del token no se limita al repositorio específico con el que interactuó el usuario; tiene acceso completo a todos los demás repositorios a los que el usuario tiene acceso».
En pocas palabras, esta vulnerabilidad permite a un atacante instalar una extensión maliciosa de VS Code que explota el mecanismo de paso de mensajes entre la ventana principal de VS Code y la vista web para robar tokens de GitHub OAuth cuando se pasan a GitHub.dev. Webview se utiliza para representar vistas previas de Markdown y editar cuadernos de Jupyter.

Específicamente, el exploit ejecuta JavaScript malicioso dentro de una vista web que no es de confianza, simula una pulsación de tecla (también conocida como evento de pulsación de tecla) en la ventana principal del editor, activa «Ctrl+Shift+P» para abrir la paleta de comandos, extrae el token GitHub OAuth enviado a GitHub.dev y consulta la API de GitHub para acceder a todos los archivos privados a los que tiene acceso la víctima. Instale una extensión de control de atacantes que enumere los repositorios.
Vale la pena señalar que este enfoque también aprovecha una característica de VS Code llamada extensiones del espacio de trabajo local. Esta característica le permite instalar extensiones directamente sin ningún mensaje de diálogo de confianza adicional, evitando efectivamente la verificación de confianza del editor, siempre y cuando la extensión esté ubicada en la carpeta «.vscode/extensions» dentro de su espacio de trabajo.
«Sin embargo, esto es un problema. Una cosa que las extensiones pueden hacer como parte de package.json es proporcionar combinaciones de teclas adicionales a VS Code», explicaron los investigadores. «Puede activar combinaciones de teclas de manera confiable, por lo que simplemente puede agregarlas a cualquier comando de VS Code que desee, como instalar una extensión omitiendo la verificación de editores confiables».
Los investigadores también notaron que GitHub fue notificado de la vulnerabilidad el 2 de junio de 2026, y los detalles del problema se hicieron públicos una hora después, citando la respuesta de Microsoft a errores anteriores relacionados con VS Code. Al momento de escribir este artículo, Microsoft ha reconocido la vulnerabilidad y ha dicho que está trabajando para solucionarla.
«Para ser claros, este problema no afecta a VS Code Desktop», dijo Alexandru Dima, gerente de ingeniería de software asociado de Microsoft.
Source link
