sistema: OPERATIVO
← volver a todos los hacks
AGENTS CRITICAL NEW

CVE-2026-45497: una inyección de comandos convierte a Microsoft 365 Copilot en una superficie de RCE

El 4 de junio de 2026 el MSRC publicó CVE-2026-45497, una inyección de comandos en Microsoft 365 Copilot calificada como ejecución remota de código, con un cambio de alcance que cruza la frontera del servicio. Corregida del lado del servidor.

2026-06-05 // 6 min affects: microsoft-365-copilot, copilot-chat

¿Qué es esto?

El 4 de junio de 2026, el Microsoft Security Response Center publicó CVE-2026-45497, una vulnerabilidad en Microsoft 365 Copilot que el MSRC clasifica como neutralización incorrecta de elementos especiales en un comando — una inyección de comandos clásica — que conduce a ejecución remota de código. El aviso incluye la marca de cambio de alcance (scope changed), lo que significa que la falla permitía a un atacante salir del contenedor de servicio de Copilot y alcanzar otros componentes de Microsoft 365. Microsoft indica que el problema ya fue corregido dentro de su nube y que no se requiere acción del cliente. El mismo lote incluyó dos entradas de divulgación de información: CVE-2026-47644 (Copilot Chat en Microsoft Edge) y CVE-2026-42824 (Microsoft 365 Copilot).

Esto importa porque es la primera vez que el aviso de un asistente de IA de gran alcance describe una RCE con cruce de contenedor, y no «solo» la clase de exfiltración de datos que ha dominado los hallazgos de Copilot desde CVE-2025-32711 «EchoLeak» un año antes.

Cómo funciona

No hay exploit público y aquí no se reproduce ninguno. Lo que la clasificación del MSRC nos dice es la forma del fallo: en algún punto de la ruta de ejecución de herramientas/skills de Copilot, texto bajo influencia del atacante alcanzó un componente que construye y ejecuta un comando, sin saneamiento suficiente.

Para un asistente de IA, el punto de entrada realista de ese texto es la inyección de prompts. Copilot ingiere contenido no confiable por diseño — correos, documentos compartidos, invitaciones de calendario, páginas web traídas al contexto. Si alguno de esos contenidos puede llevar al modelo a invocar una herramienta de backend cuyos argumentos se concatenan en una llamada a shell o intérprete, la puerta de entrada en lenguaje natural se convierte en una puerta de inyección de comandos:

Untrusted content (email / doc / page)
        |  retrieved into Copilot context
        v
Injected instruction -> model calls a backend tool
        |  tool arg concatenated into a command
        v
Command injection -> code execution in the service
        |  S:C  (scope change)
        v
Reach into adjacent M365 components

El «cambio de alcance» es la parte en la que los defensores deben detenerse: significa que el radio de impacto no quedó contenido en la solicitud que lo activó.

Por qué importa

Copilot está integrado en Word, Excel, Outlook, Teams y SharePoint para una base instalada empresarial muy amplia. Un fallo de ejecución de comandos en ese servicio no es un problema de un solo inquilino; el cambio de alcance indica que la frontera que debía mantener una solicitud — y potencialmente el contexto de un inquilino — apartada del resto de la plataforma no resistió.

La lección de fondo es arquitectónica. La industria pasó el último año tratando el riesgo «tipo Copilot» como divulgación de información (EchoLeak, inyección de prompts en Copilot Studio). CVE-2026-45497 muestra que el mismo problema de entrada no confiable puede aterrizar más abajo en la pila, en la ejecución de código, en cuanto se permite que un agente convierta la salida del modelo en un comando. El «trío letal» de OWASP — entrada no confiable, acceso sensible y capacidad de salida o ejecución — es exactamente esta combinación.

Defensas

Microsoft corrigió el lado del servicio, así que no hay parche que instalar. El trabajo consiste en asegurar que sus propios agentes y cualquier extensión personalizada de Copilot no reproduzcan el patrón.

  1. Nunca concatenar la salida del modelo en un comando. Pase los argumentos de herramienta por API estructuradas y parametrizadas; evite shell, eval o llamadas a intérprete construidas por concatenación. Si una herramienta debe ejecutar un comando, use una lista blanca de vectores de argumentos fijos.
  2. Tratar todo contenido recuperado como no confiable. Documentos, correos y páginas web traídos al contexto son controlables por el atacante. Aplíqueles la misma disciplina de entrada que a un formulario web.
  3. Restringir el trío. No dé a un mismo agente, a la vez, entrada no confiable, herramientas privilegiadas y una vía de ejecución o exfiltración. Separe capacidades, o coloque las herramientas que ejecutan comandos detrás de una confirmación humana.
  4. Aislar y acotar la ejecución de herramientas. Ejecute las herramientas capaces de lanzar comandos en un contexto aislado y de mínimo privilegio, para que una inyección exitosa no pueda cambiar de alcance hacia sistemas adyacentes.
  5. Auditar ya los plugins y conectores personalizados. Aunque el servicio base esté corregido, la misma clase de fallo vive en las extensiones de Copilot caseras. Revise cualquier punto donde texto del modelo llegue a un constructor de comandos, y rote las credenciales que esos plugins poseen.
  6. Registrar las invocaciones de herramientas, no solo el chat. La detección de esta clase pasa por vigilar qué herramientas de backend invocó el modelo y con qué argumentos — las transcripciones de chat por sí solas no muestran un intento de inyección de comandos.

Estado

ElementoReferenciaFechaNotas
CVE-2026-45497 (M365 Copilot)MSRC2026-06-04Inyección de comandos -> RCE, alcance cambiado; corregido del lado del servidor, sin acción del cliente
CVE-2026-47644 (Copilot Chat, Edge)MSRC2026-06-04Divulgación de información
CVE-2026-42824 (M365 Copilot)MSRC2026-06-04Divulgación de información
CVE-2025-32711 «EchoLeak»MSRC2025-06Exfiltración zero-click previa en M365 Copilot, para contexto

Las fuentes públicas discrepan sobre la cifra CVSS exacta de CVE-2026-45497, así que omitimos un número único; el aviso del propio MSRC es la referencia autorizada. La conclusión se mantiene sea cual sea la puntuación: un asistente de IA capaz de convertir texto no confiable en un comando es una superficie de RCE, y el trabajo defensivo consiste en mantener la salida del modelo lejos de los constructores de comandos.

Sources