Skip to main content
← All vulnerabilities
CVE-2026-61728EUVD-2026-113993

SOCFortress CoPilot: Stored comment and SOC-field XSS permits privileged account takeover

Affects SOCFortress CoPilot before 0.1.76, where comment and SOC field content is rendered as raw HTML. CVSS rates it 9.9 critical. Fixed in 0.1.76.

Published
Last modified
published
Not listed in CISA KEV
Specific setups only
Fix
Fixed in 0.1.76
None on Exploit-DB, Metasploit or GitHub
On X
View the cve.now post

Summary

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.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. Posted on X by cve.now

Affected versions

  • socfortress CoPilot

    fixed in 0.1.76

References 6

GitHub · socfortress/CoPilot

FAQ

Questions about CVE-2026-61728

What does this mean?

Stored markup in comment bodies and SOC fields runs as a script in the browser of anyone who views the affected alert or case. The script can steal login tokens and take over that viewer's account, including privileged analyst or admin accounts.Source: github.com

Am I affected, and how do I check?

CoPilot versions before 0.1.76 are affected. To check an installed version, compare it against 0.1.76 in the deployment or release being used.Source: github.com

What should I do about it?

Upgrade SOCFortress CoPilot to 0.1.76 or later, the fixed version.Source: github.com

Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data