Live › vulnerability › CVE-2026-61728
SOCFortress CoPilot renders user-submitted alert comments and SOC case fields as raw HTML without sanitizing them, and stores login tokens where scripts can read them. A portal user can plant a script that runs in an analyst's or administrator's browser, stealing tokens and taking over the account.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-30 15:31 UTC. All times on this page are UTC.
Any deployment of SOCFortress CoPilot with the customer portal running a snapshot before 0.1.70 (health-check fields) or 0.1.76 (alert comments and SOC case fields) is exposed. Portal users with the customer_user role can plant the payload, and it fires when an analyst or administrator views the poisoned alert or case. Deployments already on 0.1.76 or later are not affected by these sinks.
No product ranges from the sources yet.
customer-portal/src/components/alerts/AlertDetails/AlertComment.vue in the deployed source and confirm whether commentHtml is passed to v-html without sanitizing.0.1.70 contains the health-check sink repair.0.1.76 contains the comment and other SOC sink repairs; the sources describe it as the provisional first release with all observed repairs.Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
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.
This page as .md · .json · in your agent: get_signal("CVE-2026-61728")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.