CVE-2026-61739: SOCFortress CoPilot: Authentication Bypass and Missing Authorization on Velociraptor Sigma Exclusion Rules (Detection Suppression)
SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.77, the Velociraptor Sigma exclusion-management endpoints in backend/app/incidents/routes/incidentalert.py omit role and tenant authorization, and POST /api/incidents/alerts/create/velo-sigma/exclusion does not validate credentials. Its returnusernameforlogging dependency in backend/app/auth/utils.py calls decodetoken, which returns ordinary Invalid token or Expired signature strings on failure, and the dependency passes these strings through instead of rejecting the request. A Bearer header is required, but an arbitrary invalid, expired or forged value can create a suppression rule without a valid account. The collection GET at /create/velo-sigma/exclusion lists exclusions; the read, update and delete routes under /create/velo-sigma/exclusion/{exclusionid}, and the /velo-sigma/exclusion/{exclusionid}/toggle route, use getcurrentuser without role checks, permitting any authenticated customeruser to manage every exclusion. In backend/app/incidents/services/velosigma.py, processsigmaalert calls checkexclusions and drops matching enabled alerts before incident creation. A null customercode applies a rule across all tenants. Attackers can suppress detections platform-wide through channel, title or field matching, while low-privilege accounts can enumerate detection-tuning data and modify, disable or delete legitimate exclusions. This issue is fixed in version 0.1.77.
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
SOCFortress CoPilotto a version that resolves this vulnerability.Fixed in 0.1.77
Event History
Frequently Asked Questions
Which deployments are affected?
SOCFortress CoPilot versions prior to 0.1.77 are affected. The issue concerns the Velociraptor Sigma exclusion-management API endpoints.
What does an unauthenticated attacker need to create a suppression rule?
The attacker must send a Bearer authorization header, but the token value can be arbitrary invalid, expired, or forged. The create endpoint does not reject the strings returned when token decoding fails.
Can a low-privileged authenticated user modify exclusions belonging to other tenants or users?
Yes. Authenticated customer_user accounts can list, read, update, delete, and toggle every Velociraptor Sigma exclusion because these routes lack role and tenant authorization checks.
What is the operational impact of a malicious exclusion rule?
Matching Sigma alerts are dropped during processing. An attacker can therefore suppress detection for alert patterns covered by a created or modified exclusion rule.