CVE-2026-61728
Noticias y reportajes en Orbitaley
SOCFortress CoPilot se centra en ofrecer un único panel de control para todas sus necesidades de operaciones de seguridad. En las instantáneas afectadas anteriores a las correcciones de los sumideros de las versiones 0.1.70 y 0.1.76, los usuarios del portal, incluido `customer_user`, pueden enviar marcado almacenado a través de `POST /api/incidents/db_operations/alert/comment`. En `customer-portal/src/components/alerts/AlertDetails/AlertComment.vue`, `commentHtml` sustituye los saltos de línea de `comment.comment`, pero pasa el resultado a `v-html` sin realizar escape ni saneamiento del HTML.
Leer descripción completaMostrar menos
Cuando otro usuario visualiza la alerta envenenada, el script almacenado se ejecuta en el origen de la aplicación; el mismo patrón de renderizado sin sanear afecta a los campos de casos SOC, activos y comprobaciones de estado almacenados en el servidor, en `SocCaseNote.vue`, `SocCaseItem.vue`, `SocCaseAssetsItem.vue`, `SocAlertAssetsItem.vue` y `HealthcheckItem.vue`. El almacén de autenticación en `customer-portal/src/stores/auth.ts` persiste tanto los tokens de acceso como los de actualización en un almacenamiento legible por JavaScript, y `customer-portal/src/api/httpClient.ts` utiliza cabeceras bearer en lugar de cookies HttpOnly. Un script inyectado puede robar ambos tokens, suplantar al usuario que visualiza la alerta y obtener tokens nuevos a través de `/auth/refresh`. Si un analista o administrador visualiza la alerta o el caso envenenado, esto permite la toma de control persistente de cuentas privilegiadas, el acceso a datos de otros inquilinos, la modificación o eliminación de incidentes y la subversión de la detección y la respuesta. La corrección del sumidero de las comprobaciones de estado se contiene por primera vez en la versión 0.1.70, mientras que la corrección del comentario y de los demás sumideros SOC se contiene por primera vez en la versión 0.1.76. La versión 0.1.76 es la primera versión provisional que contiene todas las correcciones observadas; la delimitación del alcance del CVE como agrupado o dividido requiere el criterio de un curador.
Traducción automática del texto original de NVD (en inglés).
Cronología
Elaborada con nuestros propios datos: NVD, CISA KEV y otros catálogos de explotación, FIRST EPSS, exploits públicos, prensa especializada y la cobertura de Orbitaley.
- Registro CVE publicado en NVD
- Alerta: SOCFortress CoPilot corrige cuatro vulnerabilidades críticas que exponen credenciales y permiten manipular la plataforma
- Última modificación del registro en NVD
Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1190Exploit Public-Facing Applicationinitial access60 % - Impacto principal
T1059.007JavaScriptexecution55 %
Inferido por reglas deterministas a partir del vector CVSS y la CWE. Solo orientativo.
Mitigaciones ATT&CK que cubren estas técnicas
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Registro NVD
- Estado en NVD
- Aplazada
- Publicada
- 30 oct 2026
- Última modificación
- 5 nov 2026
- Vector CVSS
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
- Debilidad (CWE)
- CWE-79, CWE-922
Referencias
- Parchegithub.com/socfortress/CoPilot/commit/461e8f84794aee8ada588de3b…
- Parchegithub.com/socfortress/CoPilot/commit/ab9078bdee5d1c737f37f4811…
- Parchegithub.com/socfortress/CoPilot/pull/904
- Parchegithub.com/socfortress/CoPilot/pull/938
- Referenciagithub.com/socfortress/CoPilot/security/advisories/GHSA-8hqj-cq…
- Referenciagithub.com/socfortress/CoPilot/tree/v0.1.76
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-61728",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-61728",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "total"
}
],
"version": "2.0.3",
"timestamp": "2026-11-05T21:35:26.702711Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "CHANGED",
"version": "3.1",
"baseScore": 9.9,
"attackVector": "NETWORK",
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 6,
"exploitabilityScore": 3.1
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "socfortress",
"product": "CoPilot",
"versions": [
{
"status": "affected",
"version": "< 0.1.76"
}
]
}
]
}
],
"published": "2026-10-30T15:16:52.937",
"references": [
{
"url": "https://github.com/socfortress/CoPilot/commit/461e8f84794aee8ada588de3bad79430dc9f4f3d",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/commit/ab9078bdee5d1c737f37f481103984665a670bdd",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/pull/904",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/pull/938",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/security/advisories/GHSA-8hqj-cqcc-5f6w",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/tree/v0.1.76",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/socfortress/CoPilot/security/advisories/GHSA-8hqj-cqcc-5f6w",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-79"
},
{
"lang": "en",
"value": "CWE-922"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. In affected snapshots preceding the respective 0.1.70 and 0.1.76 sink repairs, portal users, including `customer_user`, can submit stored markup through `POST /api/incidents/db_operations/alert/comment`. In `customer-portal/src/components/alerts/AlertDetails/AlertComment.vue`, `commentHtml` replaces newlines in `comment.comment` but passes the result to `v-html` without escaping or sanitizing HTML. When another user views the poisoned alert, stored script executes on the application origin; the same unsanitized rendering pattern affects server-stored SOC case, asset and health-check fields in `SocCaseNote.vue`, `SocCaseItem.vue`, `SocCaseAssetsItem.vue`, `SocAlertAssetsItem.vue` and `HealthcheckItem.vue`. The authentication store in `customer-portal/src/stores/auth.ts` persists both access and refresh tokens in JavaScript-readable storage, and `customer-portal/src/api/httpClient.ts` uses bearer headers rather than HttpOnly cookies. An injected script can steal both tokens, impersonate the viewer and obtain fresh tokens through `/auth/refresh`. If an analyst or administrator views the poisoned alert or case, this enables persistent privileged account takeover, cross-tenant data access, incident modification or deletion, and detection/response subversion. The health-check sink repair is first contained in version 0.1.70, while the comment and other SOC sink repairs are first contained in version 0.1.76. Version 0.1.76 is the provisional first release containing all observed repairs; grouped versus split CVE scope requires curator adjudication."
}
],
"lastModified": "2026-11-05T22:18:50.630",
"sourceIdentifier": "security-advisories@github.com"
}