Description
SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.76, in the reported deployment, case-report templates uploaded by `customer_user`, the lowest-privilege portal role, are later executed by non-sandboxed Jinja2 engines when an admin or analyst generates a report. The `/case-report-template/upload` route in `backend/app/incidents/routes/db_operations.py` validates only the filename-derived MIME type, not the template content. Templates share a global store without customer_code scoping, and `customer_user` can also list, download and delete them, allowing an attacker to replace a legitimate default template under the same name. In `backend/app/incidents/services/reports.py`, `render_document_with_context` uses `DocxTemplate` without a sandbox; in `backend/app/incidents/services/reports_pdf.py`, `render_html_template` uses a non-sandboxed `Environment` without autoescaping. Normal privileged requests to `POST /api/incidents/report/generate-report-docx` or `/generate-report-pdf` therefore evaluate attacker-controlled Jinja expressions as Python on the backend. The reported deployment executes commands as root, exposing all tenants' incident and SIEM data and stored connector credentials. The HTML/PDF wkhtmltopdf renderer additionally permits local-file reads and requests to internal services. This issue is fixed in version 0.1.76.
Published: 2026-10-29
Score: 9 Critical
EPSS: n/a
KEV: No
Impact: Remote code execution
Action: Upgrade to 0.1.76
AI Analysis

Impact

The vulnerability allows a low‑privileged portal user to upload a malicious case‑report template that is later executed by the backend’s non‑sandboxed Jinja2 engine whenever an admin or analyst generates a report. The injected Jinja expressions are evaluated as arbitrary Python code, enabling an attacker to run arbitrary commands as the application’s root process, exfiltrate all tenants’ incident data, and access stored connector credentials. In addition, the PDF renderer permits local‑file reads and requests to internal services, expanding the potential impact beyond code execution.

Affected Systems

SOCFortress CoPilot, any deployment of the software prior to version 0.1.76. The vulnerability exists in the case‑report template handling code shared across all customer installations that use the default global template store, and occurs in the backend routes and report rendering services of that product.

Risk and Exploitability

The flaw carries a CVSS score of 9, indicating high severity, but its EPSS score is not available; the issue is not yet listed in the CISA KEV catalog. Exploitation requires that a malicious user has a customer_user role with permission to upload templates and that an authorized analyst or administrator subsequently triggers a report generation, which is a common action in normal usage. Because the Jinja environment is not sandboxed and auto‑escaping is disabled, the attacker can execute arbitrary system commands, resulting in full compromise of the backend. The exploit is straightforward once the privileges described are available, making the risk high despite the absence of an EPSS figure.

Generated by OpenCVE AI on October 29, 2026 at 22:25 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade SOCFortress CoPilot to version 0.1.76 or later to apply the vendor patch that sanitizes templates and sandbox the Jinja rendering environment.
  • If an upgrade cannot be performed immediately, restrict the customer_user role so that only trusted administrators can upload or modify case‑report templates, and remove the ability to replace default templates.
  • Enforce stricter MIME type validation and add explicit checks to disallow Jinja directive syntax in uploaded files, and enable auto‑escaping in any Jinja environments used for rendering reports.

Generated by OpenCVE AI on October 29, 2026 at 22:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 29 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
Description SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.76, in the reported deployment, case-report templates uploaded by `customer_user`, the lowest-privilege portal role, are later executed by non-sandboxed Jinja2 engines when an admin or analyst generates a report. The `/case-report-template/upload` route in `backend/app/incidents/routes/db_operations.py` validates only the filename-derived MIME type, not the template content. Templates share a global store without customer_code scoping, and `customer_user` can also list, download and delete them, allowing an attacker to replace a legitimate default template under the same name. In `backend/app/incidents/services/reports.py`, `render_document_with_context` uses `DocxTemplate` without a sandbox; in `backend/app/incidents/services/reports_pdf.py`, `render_html_template` uses a non-sandboxed `Environment` without autoescaping. Normal privileged requests to `POST /api/incidents/report/generate-report-docx` or `/generate-report-pdf` therefore evaluate attacker-controlled Jinja expressions as Python on the backend. The reported deployment executes commands as root, exposing all tenants' incident and SIEM data and stored connector credentials. The HTML/PDF wkhtmltopdf renderer additionally permits local-file reads and requests to internal services. This issue is fixed in version 0.1.76.
Title SOCFortress CoPilot: Stored case-report template injection permits backend code execution
Weaknesses CWE-1336
CWE-862
CWE-94
References
Metrics cvssV3_1

{'score': 9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-29T21:25:01.101Z

Reserved: 2026-07-10T18:51:13.919Z

Link: CVE-2026-61707

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-29T22:17:05.603

Modified: 2026-10-29T22:17:05.603

Link: CVE-2026-61707

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-29T22:30:13Z

Weaknesses
  • CWE-1336

    Improper Neutralization of Special Elements Used in a Template Engine

  • CWE-862

    Missing Authorization

  • CWE-94

    Improper Control of Generation of Code ('Code Injection')