CVE-2026-61738 json
SOCFortress CoPilot: Arbitrary Host File Write as Root via Path Traversal in the ScoutSuite GCP Report Upload (RCE)
published 2026-10-30 10 d ago modified 2026-11-05 3 d ago also EUVD-2026-114001
- cvss
- 10.0
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 46%
- public exploits
- 0
- none known
Summary
SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.77, `POST /api/scoutsuite/generate-gcp-report` in `backend/app/integrations/scoutsuite/routes/scoutsuite.py` admits admin and analyst users and validates the uploaded content as `GCPScoutSuiteJSON`, but passes raw `file.filename` from the multipart header to `save_file_to_directory` in `backend/app/integrations/scoutsuite/services/scoutsuite.py`. The writer combines this filename with `scoutsuite-report` using `os.path.join` without sanitization or a resolved-path containment check. A traversal filename therefore writes the supplied JSON outside the intended report directory. In the reported root-running backend, the researcher demonstrated root-owned writes outside that directory and into the application source directory. This permits host-file overwrite subject to the accepted JSON-content constraint and can disrupt application operation; the demonstrated primitive does not establish unrestricted executable contents or unconditional cross-tenant confidentiality loss. Version 0.1.77 removes caller-controlled filenames from the affected route; unrestricted-content and direct-code-execution claims require separate curator reconciliation.
Patch / fix
- github.com/socfortress/CoPilot@1881ef8 commit
- github.com/socfortress/CoPilot@bfa630b commit
- github.com/socfortress/CoPilot#940 pull request
- github.com/socfortress/CoPilot#941 pull request
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 3 d ago
Exploit prediction
0.56% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/socfortress/CoPilot/security/advisories/GHSA-q3g8-3cf7-744f referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 10.0 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
Affected products
- socfortress CoPilot
Classification
References
- github.com /socfortress/CoPilot/pull/940
- github.com /socfortress/CoPilot/pull/941
- github.com /socfortress/CoPilot/commit/1881ef8d28bc7f45ffa88d7ba4fcca7302355508
- github.com /socfortress/CoPilot/commit/bfa630b65d554670c7462a32ce6fd4e3cbd0254c
-
github.com
/socfortress/CoPilot/security/advisories/GHSA-q3g8-3cf7-744f
exploit
- github.com /socfortress/CoPilot/tree/v0.1.77
Sources
- CVE List CVE-2026-61738
- NVD CVE-2026-61738
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.